【作業記録】fail2ban 再犯長期jail

fail2ban で ssh 不正ログインを試みる輩を接続拒否する運用をしているが、現状こんな感じ。

3日間で、4回失敗で1週間アク禁。
11/1くらいから、241件アク禁にして、現在90件アク禁中。
151件を釈放。

ログを見てると、18時間間隔で 2回試行するとか、明らかに fail2ban を避けるパターンのやつがいるんだな。

ふと、再犯してるのどれだけだろう? と疑問に思い、調べると、再犯者を長期アク禁にできるとの事で、早速設定変更。

次のコマンドを実行

次の設定を追加

fail2ban.logを調べて、再犯者は2週間以内に1回のログイン失敗でアウト、懲役1年(笑)

【追記 2681/11/20】
maxretry = 1 だと、fail2ban.log で、Ban 1回で作動してしまうので、 2 に変更した。
【/追記 2681/11/20】

その条件でも、33件該当。
1週間アクセス不能だったとしても、スクリプトでやり続けてんだろうなあ。

【作業記録】fail2ban設定変更

【作業記録】fail2ban インストール

/var/log/auth.log を見ると、既定の fail2ban.conf を避けるようにアクセスしてる奴が居たので、そういう奴を締め出すように設定変更。

blocktypeをDROPに、出入り禁止期間 1週間、アクセス監視期間 3日、4回失敗でアウト。

情報源: iptablesはDROPすべきか、REJECTか。tcp-resetという手も – のめうブログ

注意すべき点は、これ、自分で sshのログインに4回失敗すると、セルフ出入り禁止になっちゃうので気をつけないといけない。

まあ、Kagoya VPSの場合、Webからアクセスしてコンソールからログインしたら回避できるので、特に問題は無いけど、会社の契約するサーバーなんかで maxretry = 3 とかになってて、アク禁喰らった事が何度かあったんだな。

【追記】

3日間で51のIPアドレスをBAN。大漁や〜

【/追記】

【作業記録】fail2ban インストール

Kagoya VPS の Ubuntu 20.04 で、ssh への攻撃が多数あり、色々試させない為にfail2banをインストール

情報源: 【Ubuntu Desktop 20.04】Fail2Banをインストールする – Crieit

情報源によると、既定で sshd は有効となっているそうで、特に何もしなくても良さそう。

しかし、待てど暮せど中々 Ban してくれない。

これは私も経験済みです。jail.local(jail.conf)の設定は「backend = auto」で良いよとされてはいるのですが、起動時のログを見ると backend が “pyinotify” に設定されてしまいます。

情報源: fail2banをうまく動かすためのTips。正規表現はシンプルに見やすく – のめうブログ

/var/log/fail2ban.log を見てみると、

pyinotify って知らんけど、backend の動作モードが違っててワロタ。

新規ファイルを作成して、動作モードを polling にして、設定を再読込。

無事、polling モードで動作するようになった。

IPアドレスが逆さま

softether で、L3スイッチに設定したIPアドレスを、192.168.30.0 のゲートウェイにすべく、ルータに経路設定したのだが、なぜかIPアドレスが253.11.16.192と逆さまになっている。

昔、Laneed の無線LANルータ使ってて、設定したIPアドレスが逆さまになる現象が発生した覚えがあるが、わしの部屋は夏場灼熱地獄だし、長期間稼働しっ放しだと壊れるのかもしれん。

BUFFALO BHR-4GRV は、表示はおかしいけど、一応PING のICMPは届いているのが謎だが、もうそろそろ寿命かねえ。

【追記】
これ、TP-Link Archer MR600に変えても同じだった。
なんか気味悪いのう
【/追記】

【作業記録】cron-aptインストール、postfix設定

KaguyaのVPSで放置してても、システムを常に最新にしてくれる cron-apt を設定する。

しかし、cron-apt ってメールシステム必須なので、postfixが付随してインストールされてしまうので、不本意ながらメールシステムも設定する。



・postfixの設定編集

よく考えたら、リレーホストにTLS接続する為に、SSLのサイトの正式名称でないとエラーになるはずなので、わしのプロバイダのサーバーの正式名称である sv96.xserver.jp にしないといけない。

そして、プロバイダのメールアカウントの認証を通す為に末尾に設定を追加。

・中間証明書取得

TLS接続に中間証明書が無いとエラーになる事があるので、goddadyから頂いて /etc/postfix/cert ディレクトリに設置する。

・パスワード認証ファイルの用意

・postfixの再起動

・テストメール送信

・cron-apt設定

テスト実行

ログの確認

これで VPS放置してても勝手にアップデートされる。

VPS変更

WebARENA VPS indigo で VPN gateway を作ったが、VPN接続して、radiko 聴いたら即ブロック。

一応、端末でサーバー状態をモニタしていたが、Load avarage 0.02 位で全然負荷が掛かってない。

一体、どういう基準でブロックしてやがるのか? とサポートに問い合わせたら、次のページの条件だとの事。

情報源: インスタンスの安定運用の目安 | Indigo | VPS(仮想専用サーバー)はWebARENA

「1時間あたりのPV数 400PV以下」って、VPNパケット400個でブロックって事?そりゃ、ストリーム系の通信ながしたら即ブロックになるわなあ。

話にならん。という事で即解約。

道理でサクサク動いてると思ったら、用途としては、ほぼ誰も見ないわしみたいな(^^;個人用Webページ設置くらいしか使えん訳だ。

という訳で、Kagoya のVPSを契約。VPS indigo とほぼ同等で、値段はちょっと高い550円/月。使ってみた限りでは、indigoよりちょっともっさりした感はあるけど、ちょっとした事ですぐブロックしてないからだろう。

運用制限に関しては、ブロックしたりせずに帯域制限を行なう場合があると Webに書かれていて、こっちの方が何倍もええやんけ。

早速、KagoyaのVPSで、VPN gatewayを構築し、SoftEther VPN Server入れて、家のホームサーバから仮想Hubへカスケード接続。

indigo では仮想Hubへカスケード接続して家のDHCPからIPアドレス振ってたけど、これだと、VPSにVPN接続したら、DHCPのbroadcastに従い、gatewayが家のルータになるので、家のルータからインターネットへ出てしまう。

今後、楽天モバイル固定回線化した場合に、家経由したら通信が物凄く遅くなるので、今回は、仮想Hub に仮想DHCP動かして、secureNATでVPSから即インターネットにアクセスという様にした。

家へアクセスの為に、レイヤー3スイッチを有効にして、仮想Hub間ルーティングにより、VPNで接続したマシンから家のマシンへ接続する設定をしたのだが、ゲートウェイ設定を間違っていてまだできてない。

すぐに直したかったのだが、仮想マシンに SoftEther VPN Client入れたせいで、再起動が頻繁に起こり、仮想マシンのWindows 10 が破壊されてしまったので、今日一日、修復を試みて、最終的に修復インストール 2回目で何とか成功したという感じ。

なにせ、仮想マシンのWindows 10を起動すると、すぐに青画面になって、全然操作できない状態になっていた。

【追記】
修復インストールした Windows 10でも青画面が出て、おかしいなと思ったが、その時に、VPN接続を行なっていた。

VIrtualBox で青画面になるのは、どうやら、Hostマシンの Ubuntu 20.04で VPN 接続すると、検証した訳ではないが、KVMに悪影響が出るみたいだ。

VPN切断して、仮想マシンを起動したら青画面にならなくなったので、VirtualBox の仮想マシンを動かす時は、HostマシンでVPN接続するとマズいのだな。

【/追記】

時折、運良くPIN入力ができて、運良くセーフモード起動設定ができて、運良くセーフモードで起動するという偶然が重なって、sfc /scannowとかやって、また運良く通常起動で何とか修復インストールまで辿りついたが、よく修復できたものだと思う。くそが。

これから、修復完了したWindows 10に SoftEther VPN server管理ツールをインストールして、ゲートウェイ設定を直すつもり。

VPSとLAN共有 その3

VPSとLAN共有 その2

結局の所、SoftEther VPN serverをインストールし、そのIPSec/L2TPだと、何の問題も無く接続できた。

SoftEtherって、前チェックした時は Windows版しか無くて、その後全然動向を確認していなかったのだが、今では、Win、Linux、Macと網羅しているようだ。

Linux版は、intel/AMDは勿論、Raspberry Pi が流行したせいか、ARM版まである。

そこで、家の Raspberry Pi 4のARM 64bitのホームサーバにSoftEther VPN Bridge を入れてみたが、問題無く動いている。

家からVPS indigo の仮想Hubへカスケード接続すると、家のネットワークとLayer 2で仮想的に物理接続したみたいになり、家のルータのDHCPの broadcast がVPSの仮想Hubにも流れ、IPSec/L2TPで VPN 接続したマシンに家のルータのIPアドレスが振られる。

これはかなりいいな。気に入った。

SoftEther のWeb見てると、作者は Linux のプログラムが効率的でなく、性能が低いと書かれていて、Windows信者なのだが、SoftEther VPN Client を仮想マシンの Windows 10にインストールして使ってたら、仮想マシンがいきなり再起動するって現象が何度も起こり、ついに修復インストールをやるハメになってしまった。

いかに性能がよろしくても、こんな風に環境崩壊して、安定して使えないというのは本末転倒ではないのか?

天才プログラマーが2週間で構築 テレワークシステムが好評 – 産経ニュース

この作者って、拙ブログで取り上げたニュースの人なんだけど、この SoftEther って暗号通信のプログラムを永年やってきたから、それをベースに2週間で作れたんだって話をしたが、まあ、天才には違いない。

だけど、OSが腐ってるから、いくら高性能のもの作ったところで、まさに「砂上の楼閣」なんだよねえ。

VPSとLAN共有 その2

VPS とLAN共有

会社の仮想マシンの Ubuntu 20.04LTSに network-manager-l2tp-gnome をインストールして、VPS indigo のIPSec/L2TP に接続した所、

Received out of order control packet on tunnel 23815 (got 5, expected 6)

みたいな xl2tpd のエラーは出ず、安定的に接続できた。

違いと言えば、会社の回線はフレッツ光隼で OCN の回線で、ルーターは CISCO rv260
わしのは、フレッツ光隼で、mopera Uの回線で、ルーターは BAFFALO BHR-4GRV

回線によって違うのかルーターによって違うのか、何が原因なんだろうなあ。

WebARENA VPS Indigo 契約

楽天モバイル固定回線化への実証実験として、NTTPCのWebARENA VPS Indigoの契約をした。

いわゆるレンタルサーバーというやつだが、時間制になっていて、インスタンスを起動していなければ課金されず、月額上限が決まっていて、それ以上は課金されない。

1時間あたり、0.5円(税込0.55円)、メモリ1GB、1vCPU、20GBで月上限318円(税込349円)。安くなったなあ。

とりあえず、IPSec/L2TPとngircd を入れてみたが、携帯電話でちゃんとVPNに繋がるし、IRCもちゃんと接続できた。

あとは、apache入れて、certbot入れて Let’s Encryptで無料SSL取得する位かな。
ircbot はJAVAベースなので重いからちょっと考えよう。

それと、IPSec/L2TPの拠点間接続(家からレンタルサーバー)をやって、ちゃんと外から家のマシンにアクセスできるか試さないといけない。

楽天モバイル接続だと、動的IPアドレスになるので、レンタルサーバーから動的IPアドレスへのルーティングがうまくできるかが問題だな。

楽天モバイル固定回線化テスト

サーバーに OPPO Reno3 Aの USBテザリングを使用して接続。
二箇所スピードテストをしてみた。

下り 26.19Mbps〜29.96Mbps
上り 13.81Mbps〜14.95Mbps
という感じ。充分実用にはなりそう。

電波がよく入る場所にCPE(Customer Premises Equipment)を設置すれば、もっと速度を上げられるかもしれんけど、電界強度的に80Mbps位が最大なので、それに数万円のコスト掛けてまでやろうとは思わんな。