XSERVER APIでDDNSモドキ

XSERVER からサーバー操作できるAPIのお知らせメールが来ていたので、早速、今まで使っていたツールをそれ用に書き換え。

asahiネットにプロバイダ変更して、IPv6環境になり、XSERVER以外のサーバーにアクセスすると、IPv6のアドレスが記録されちゃうので、file_get_contents()で、明示的にIPv4でアクセスするようにしてある。

次のプログラムは、XSERVERに置いておいて、家のサーバーからアクセスすると、家の回線のIPv4アドレスが分かるやつ。

VPNで家のサーバーに接続する際に、家の回線はIPアドレス固定じゃないので、ルーター再起動したりすると、IPアドレスが変わってしまう。

その為、家のサーバーで、5分おきに ipcheck.php を走らせて、DNS情報と、実際のIPアドレスに相違があるかをチェックしていて、違っていたら、XSERVERのDNSをAPIで変更するようになっている。

【皇紀2686年4月21日追加 ここから】
APIのパラメータはjsonエンコードが必要なので、ソースを変更しました。
【皇紀2686年4月21日追加 ここまで】

【fail2ban】VPSサーバーより狙われる光回線接続

最近、不正アクセスの遮断を調整しているが、VPSサーバーよりも家のサーバーの方がやたら多いのに気がついた。

VPSサーバーが 635件、家が 1,503件と倍以上の不正アクセスがある。

やはり、外に立てたサーバーより、家庭につないだ回線に存在するサーバーの方がセキュリティが甘いから、多いのかな?

適当なIPアドレスの範囲に対して、不正アクセスを試みていると思っていたが、ちゃんと確率の高そうな所へ資源の投入をしてるんだなあ。

まあ、家もVPSもsshdは公開鍵認証で、プライベートIPアドレスのみパスワード認証も許可している設定なので、そもそも総当たりのパスワード破りが最初からできないようにしてあるから、特に心配は無い。

しかし、ログにだらだらと記録されるのがウザいので、臭いにおいは元から断たなきゃダメという事で、接続遮断している 🙂

外も家も同条件のフィルタだが、3日間で4回以上の不正アクセスで1週間接続遮断し、それ以降も2週間以内に同じIPアドレスが不正アクセスして来たら、再犯ルールで1年間接続遮断するようにしている。

不正アクセスのパターンを見ていると、2~3回で止め、時間を置いて再び繰り返すという明らかに fail2ban の設定を意識した不正アクセスをして来ているので、判定期間を長めに取って、再犯ルールも追加したという次第。

ルーターは接続を通すポートのみポート変換機能で一々登録して通しているが、面倒くさがりだと、DMZとしてサーバー1台丸々外から見える状態にしてるってのもあるだろう。

踏み台にされて警察にお呼ばれする前に、厳密な設定の運用にした方がいい象。

【Raspberry Pi4】dovecot設定

Rasberry Pi OS liteのメールサーバーdovecotで、またパラメータが変わってて、Maildirの設定にちょっと苦労した。

mail_location が廃止されたので、namespace で解決するのが正しいようだ。

情報源: Namespaces | Dovecot CE

INBOX は /var/mail/noizumi で、他のフォルダ類は Maildir形式の /home/noizumi/Maildir に保管してるので先の設定にした。

昔、mbox 形式だと、メールフォルダの階層化ができなくて、フォルダ削除して Trash/delFolder みたいな状況になると、削除できなくなるってのがあったので、Maildirにしている。

今、mbox はフォルダの階層化できるようになってるんだろうか? AIさんに聞いてみる 🙂

はい、IMAPを利用している場合、mbox形式のメールボックスであってもフォルダの階層化(サブフォルダ作成)は可能です。

技術的には、ThunderbirdなどのIMAP対応メールクライアントを使用してサーバー上にフォルダを作成・管理することで、階層構造が実現されます。

あー、mboxはサーバー側にディレクトリを掘らずにファイルしか配置できないから、ファイル名に区切り文字で階層を表してる。

つまり、メールクライアントによっては、うまく判別できずに階層構造にならないって事もあり得るんだな。

じゃあ、Maildir形式の方がいいな。

新しく買ったHDDケース

ORICO 9928RU3を買った。

支那製だが、レオナルド・ディカプリオのカードのCMとは関係ない 🙂

どうせ日本メーカーでも、中身は支那製だし、日本メーカーと同価格帯なら、日本企業のマージン分、中の品質が高い可能性がある。

買って、大爆死する可能性があるので、今まで買った製品に触れなかったけど、アルミ筐体で冷えやすく、従来品よりファンの音もうるさく無く、速度も速いので、中々良い。

Amazonだと、同じ製品で、もっと安いページもあるが、低評価レビューがあって、欠陥品ロットがまとめられたページの気がするので、高い方のページでこうにう。

RAID1を構成するのに、この手の製品は今まで使っていたRAID1のデータの入ったディスクを継承できないので、新規にWD20EARZ-ECを2つこうにう。
昔買った値段より1.5倍くらいになっとるね 🙁

新規RAID1のディスクを構築してから、今まで使ってたディスクの1本をGREENHOUSEのIDE/SATA→USB2.0の変換コネクタを繋いで、必要なデータをコピーした。

新しく買ったディスクは、データ転送速度が180MB/s だそうなので、HDDケースに入れて、速度を計ってみる。

「UASP対応」と謳ってるだけあって速い。
元のディスクスピードの180MB/sを上回ってるのは、RAID1は読み出しに関しては2台のディスクから読めるので、その分高速化されるのだろう。

果たして耐久性はいかがなものか。
せめてハードディスクより先に逝って欲しくないなあ。

【Raspberry Pi4】家のサーバー復旧ちう

HDDケースぶっ壊れた。

という事で、Raspberry Pi Imagerを取ってきて、Raspberry Pi OS Lite 64bitをRAID1のHDDケースにインストール。

どうせ、GUI使わないので、X Window System系が入ってないのにした。

割と短時間で終了し、HDDが2TBなのに、ディスクイメージのサイズで限定され、容量が少ないなんて事もなく、フルに2TBを使っていた。

最近のディストリビューションは、swapパーティション切らないのね。

後、SoftEther VPN serverを使う上で、ネットワークでbridgeデバイスを使う必要がある。

今までのUbuntu 24.04LTSでの構築経験上、desktop版は正常に作成できず、server版だとうまくいくというのがあって、NetworkManagerベースは避けたかった。

で、Raspberry Pi4(以下RP4)にHDDを繋ぎ替えて起動すると、ルーターでRP4のMACアドレスに192.168.11.254を割り当てていたので、DHCPでIPアドレス設定はできたから、これもサクッとssh接続できた。

bridgeデバイスを作成する上で、Ubuntuのserver版だと、netplanのスクリプト書いて、netplan apply でサクッと作れていた。

しかし、NetworkManagerが生きてると、bridgeにeth0とtap_softetherの2つをぶら下げないといけないのに、eth0しか無いという状態にされる。

恐らく、NetworkManagerの不具合だと思われるが、bridgeに2つのslaveぶら下げてて、1つしか有効にならないなんて事例が無いw

netplanとNetworkManagerの統合を進めているらしいが、Raspberry Pi OSのベースのdebian 13では、よりNetworkManager寄りになっているようだ。

という事で、

無事に br0 デバイスができた 🙂

あと、やった事色々。

apt install fail2ban tcpdump apache2 telnet  default-jre-headless php php-xml php-curl php-mbstring samba smbclient certbot nslookup bind9-dnsutils python3-certbot-apache

a2ensite 000-default-le-ssl
a2enmod userdir
a2enmod rewrite
a2enmod ssl
a2enmod auth_digest
a2enconf auth_digest

そして、コピー元ディスク見ていて、メールサーバーの postfix がインストールされてて、設定もやってるんだけど、何でだったのかと暫く考える……

あー、SPFの設定で、silverfox.noizumi.orgを送信ホストとして登録したくなかったから、家のサーバーのメールもirc.noizumi.orgへ投げるようにしたんだっけ。

あと、zoneminderとかあるけど、家の玄関リフォームしたせいで監視カメラ撤去したし、その間にプロバイダ変更したから、監視カメラのWiFi設定変えないといけないし、面倒だから、後回しにして原神やろう 🙂

新しく買ったHDDケース

HDDケースぶっ壊れた。

家でRaspberry Pi4にUSBでHDD RAID1のケース(センチュリー 裸族の二世帯住宅 CRNS35EU3S6G)を接続して、ホームサーバーにしているが、認識しなくなった。

RAID1 は 2台のHDDで構成し、2台共同じ内容にして、1台が壊れても、新しいハードディスクと入れ替えてやれば、再び複製を開始して、継続して使用できるというコンセプトだ。

ところが、その母体となるHDD ケースが壊れたのでは、いくらデータの冗長性を確保していようが、全く意味がない。

まあ、8年使用したので、壊れても仕方がない気がするが、壊れやすいHDDが壊れていないのに、HDDケースの方が先に壊れるというのは、何とも納得しがたいものがあるのであった。 🙁

【原神】世界ランク9

世界ランク突破任務どんなんやろ? とやってみて、どうせ最後に何か完了させる選択をしなければ上がらないだろうと思ってたら、敵を倒した途端「世界ランク9にアップしました」とか出て終了。

もしかしたら、最後の宝箱を開けなければ上がらなかったかもしれんけど、もういいやと開けた。

雑魚キャラのレベルが100位になって、ナド・クライの精鋭狩りが結構難しくなった。

こうなると火力を上げないと話にならんので、コロンビーナ2凸して、モチーフ武器もゲットしたら、ようやく前と同じ位の難易度になった。

幻郷のぞいて、Lv90が7人しか居ないのが結構キツい。

【原神】ちょっと飽きてきた

101日目、チャスカを強化したら、強化待ちで余りする事が無くなり、ストーリー的にはスメール終わってフォンテーヌへ行こうという所だが、世界任務は時間が掛かって中々日々の限られた時間ではやろうという気が起きない。

ちなみに持ちキャラが少ない時に、「カチーナが貰える」という案内が来たので、ナタ編を開始しちゃってるが、多分ナタ編最後の任務の「講談室へ行く」で止めてある。

チャスカはこんな感じだが、風元素キャラクターで、元素スキルが編成した各キャラクターの元素を弾丸にして発射するという特異なスキルを持っている。

通常なら、各キャラ切り替えて元素スキルを実行する事で、元素反応を起こしてダメージを与える所、チャスカのスキルだけで何とかなってしまう。

編成にシールドキャラクタ1名入れて、後は育成していない Lv.1の火、氷、水、雷のキャラを編成すればOKで、チャスカは風元素キャラなので、拡散という便利な反応で、草岩を除く他の元素を再度付着してダメージを与える。

Game8より引用

草と雷か火か水で更なる反応があるが、拡散反応はこれらをサポートしてないので、風元素キャラのチャスカには関係無いし、後々更なる高ダメージを狙いに行くので無ければ、今の所必要無い。

なので、草神ナヒーダのガチャは引いてない 🙂

チャスカとシールドキャラが居れば何とかなってしまうので、Lv.90になったチャスカの強化待ち状態では、他のキャラクタの育成モチベーションが上がらない。

とりあえず、他のキャラが上げられる様、経験値アイテム獲得の為に世界任務を頑張る。