家のネットワーク構成図

Kagoya VPSに softether 入れて、家のRaspberry Pi4 にもsoftether入れて、仮想HUBをカスケード接続している。

Kagoya VPSはインスタンス同士が通信する為にローカルネットワークを5つまで組み込む事ができるが、これを softetherの仮想HUBにローカルブリッジする為に使う。

VPSの方のローカルネットワークは192.168.30.0/24で、家のローカルネットワークは、192.168.11.0/24、それを仮想レイヤー3スイッチで繋いで、ローカルネットワーク同士が通信できるようにしている。

VPSの家のLAN の仮想HUB にVPN接続すると、まるで家でネットワークに繋いだ如く、家のルーターのDHCPでIPアドレスが払い出される。

何で、VPSのローカルネットワークと分けているかと言うと、VPSの方では仮想NATを使い、インターネットに出られるようにしているから。

これをやらないと、VPSの家の仮想HUBに繋いだら、家のルーター経由でインターネットに出てしまって、経路が長くなってしまう。

VPSに VPNを繋ぐと、VPSから外に出て、家に VPNで繋ぐと、家から外に出るというようにしたくてこういう構成にした。

という備忘録のテスト 🙂

砂上の楼閣

会社の開発環境で、Windows 10のホストに、VirtualBox の Ubuntu 20.04のゲストの仮想マシンを動かして開発していた。

これが、3回に1回は起動せずにハングアップしたりして、極めて動作が不安定。

FirefoxはCPU使用率が300%を超えて応答しなかったり、突如ファイルシステムがread onlyになって書き込めなくなったりと、開発効率ダダ下がり。

わしは普段、家で Ubuntu 20.04を使ってるので、こんなに酷い現象なんかなった事無いし、Windows 10を使うより、ストレスフリーで快適に使えている。

あまりに酷いので、会社のマシンのWindowsのディスクユーティリティで、ディスクのWindows領域を半分に削って空きを作り、そこにUbuntu 22.04をインストールした。

要するに仮想マシンから実マシンへ開発環境を移行しようというのである。

で、その仮想マシンのイメージを実Ubuntu上へ持ってきて、設定ファイルを弄って VirtualBoxで起動させてみた所、すんなりサクサク動く。

Windows 10ホストのVirtualBoxって砂上の楼閣だったんだな。

どんなに安定性の高いOSでも、腐ってるWindows 10上では台無し。

過去にMicrosoftは、Exchangeサーバーで、Microsoft独自仕様以外のメールの通信で、Waitを入れて、わざと遅くして他人の足を引っ張る卑劣な真似をしていた。

なので、Windowsのハイパーバイザーが、仮想マシンのLinuxに遅延や障害を起こして、「Linuxは不安定」と思わせるネガティブキャンペーンをやってても不思議は無いと思ってる。

Bluetooth ヘッドフォンでA2DPに切り替えられない。

Anker の Soundcore Life U2 で Ubuntu 20.04に接続したら、headset の HSP/HFP のプロファイルに強制設定されて、高音質の A2DP sink に切り替えられなくなった。

昔の Ubuntu 14.04 あたりだと、問題なく切り替えられてたのに、音関係は 20.04で、無茶苦茶退化した。

Bluetooth ヘッドセットが A2DP に切り替えられなくて困る
https://matoken.org/blog/2020/04/10/im-having-trouble-switching-my-bluetooth-headset-to-a2dp/

このページの設定通り、/etc/pulse/default.pa を編集して、
load-module module-bluetooth-policy auto_switch=false

とやったら、A2DP sink の出力になった。headset の HSP/HFP は怖いので試してない(笑)。まあ、Skype の時しか使わないし、仮に Skype でヘッドセット使えなくなっても別に困らないし(笑)

【Raspberry Pi3】ACケーブル交換

昨日注文したヤツが今日届いた。デリバリープロバイダーだけど、隣町の運送業者で、関東だと配達が酷いそうだが、こちらは結構迅速に届けてくれる。

交換前は、電圧低下検出→電圧正常化→電圧低下検出→電圧正常化……の繰り返しだった。

5V3Aのケーブルに交換後は出なくなった。

今まで使ってたのって、Raspberry Pi3 買った時にセットで買ったもので、株式会社ケイエスワイのもので、5V2.5A とそんなに悪く無いのだけれど、0.5A違うと駄目なんだな。

多分、接続している Webカメラが電力を食うのだろう。というか、それしか外部部品は付けてないから、それしかない(笑)。

【作業記録】監視カメラのRaspberry Pi3を自動更新&再起動

わしの Raspberry Pi3 は Raspbian GNU/Linux 9 (stretch)なので、自動更新にはなってないから、unattended-upgrades のパッケージをインストール。

needrestart パッケージが提案パッケージになっとるけど、要るのかなあ?

後は次の記事を参考に設定。

【作業記録】自動更新&再起動設定

防犯監視カメラだから、深夜に再起動するのはマズいので、昼間に再起動するようにした。

まあ、Raspberry Pi3 だと、数秒で復帰するから、特に問題は無いだろう。

そして、apt-cron をアンインストール

 

【作業記録】自動更新&再起動設定

cron-apt 使ってて、更新はメールで通知してくれるが、再起動は必要に応じて自分でやらないといけないのがマンドクセと思っていた。

そして自動で再起動する方法ねーかな?と探してみた所、次のページをハケーン。

https://unluckysystems.com/ubuntu-20-04-lts%e3%81%ae%e8%87%aa%e5%8b%95%e3%82%a2%e3%83%83%e3%83%97%e3%83%87%e3%83%bc%e3%83%88%e3%81%a8%e3%80%81%e8%87%aa%e5%8b%95%e5%86%8d%e8%b5%b7%e5%8b%95%e3%82%92%e8%a8%ad%e5%ae%9a%e3%81%97/

Ubuntu 20.04 LTSから、自動でアップデートするようになってたのか。cron-apt要らねーじゃん。知らんかった(笑)

再起動するのを有効化して、午前2時だと、まだ起きてる可能性があるので、午前3時に設定。

そして cron-apt を削除。
これで、Kagoya VPS は放置してても、常に最新状態に保たれる訳だな。

昔、KDDIの回線引いて、固定IPアドレス8個貰って、家でサーバー運用……とはいえ、VAIOのノートPCにKondara MNU/Linux 入れて自分のウェブサイトを公開していた。

ノートPCをサーバーにしたら、UPS要らず。
そう思っていた時期が僕にもありました。

移動の際に電源引っこ抜いたら、即座にブチンと画面暗転。

2〜3回しか充電してないL型バッテリが、24時間運用で、1年間電源に繋いでいたら、お亡くなりになっていた。

ノートPCはUPS要らずのサーバーにはならない。それが教訓。

デジタルファクトリが潰れて、OSが更新されなくなって、クラッキングを受けて、X Serverにサイトを移し替えた。

当時、OSのシステムメンテナンスは非常に面倒臭く、自分でセキュリティ情報を集めて、必要とあれば、自分でゴリゴリカーネル再構築とかやってた時代だったので、クラックされるようではアカンと思い、業者に丸投げ(^^;

今はそれも OS がやってくれるので、便利な時代になったものじゃて。

【作業記録】Ubuntu 20.04 LTSに livepatch

家のマシンで、Ubuntu 20.04LTSを入れた時、livepatch という、再起動しなくてもセキュリティホールにpatch当ててくれる canonical社のサービスを設定するよう促されたので、入れたのだが、よく分かってなかった。

どうやら、カーネルにパッチを当てるんだけど、カーネルパッケージの更新はしてくれないようなので、サーバーとか、再起動を頻繁にできないマシンに対するサービスのようで、会社に行ってる間に電源を落とす個人PCには不要なものだと分かった。

で、このライセンスが個人なら 3台まで使えるとの事で、24時間運用の Kagoya VPSのUbuntu 20.04に導入しようと思ったので、その作業記録(長い前置きだ(^^;)。

https://ubuntu.com/security/livepatch

の下の方にあるやり方でやる。トークンは、ログインして、右上の自分の名前をクリックすると、UA subscriptions ってページを開くと出てくる。

Webで検索して出てくる例だと、snap で canonical-livepatch をインストールするって書かれてるんだが、試しても「そんなの無え!」と言われて困ってたが、ua attach [TOKEN]で snapd と共にインストールしてくれた模様。

ハッ!? もしかして、snap のインストールって、 snapd入れないとできないってオチか orz

ua attach [TOKEN] 実行した時に既に、livepatch yes enable ってなってるから、 ua enable livepatch 必要無いかもしれん。

今の所、patch は無いけど、結局の所、頻繁に再起動しても問題無いなら、不要なサービスだなあ。

【作業記録】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 モードで動作するようになった。