treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

RaspberryPiでSoftEtherの運用・ログに注意

RaspberryPiでSoftEtherのVPN接続を実現する、割とこの使い方をされている方って多い印象があります。
もし、お使いでしたら、運用上お役に立つかもしれないポイントを一つご報告。
それはとある障害で学びました。

突然のVPNサイト間接続停止

「いまネットワーク止まってます?」
午前のひと時、Windows Updateの不具合の対処に追われている最中、こう問いかけられて障害を認識しました。止まってる?

「あ、じゃあ、何かしました?」

当然、何にもしてないんですけど…。どうも対象のセグメントを聞いていくと、RaspberryPiで構成されたSoftEtherの拠点間接続が停止しているらしい、ということが分かりました。

スグ見ます、とだけ返事して、さっそく調査。

スグにdf -m

このSoftEtherのサイト間接続はRaspberryPiにインストールしたSoftEtherによって稼働、2年弱の期間、無停止で粛々とL2接続を実現してきました。
初の通信停止、という問題に当たり気になったのは…
「ログ?かなぁ」
というなんとなくの感じ。そういやデフォルト設定で稼働していたなぁと思ってみてみると、
-------------------------------------------------------
$ df -m
ファイルシス 1M-ブロック 使用 使用可 使用% マウント位置
/dev/root 15056 14197 194 99% /
devtmpfs 459 0 459 0% /dev
tmpfs 463 0 463 0% /dev/shm
tmpfs 463 47 416 11% /run
tmpfs 5 1 5 1% /run/lock
tmpfs 463 0 463 0% /sys/fs/cgroup
/dev/mmcblk0p1 63 22 42 35% /boot
tmpfs 93 1 93 1% /run/user/1000
tmpfs 93 0 93 0% /run/user/1001
-------------------------------------------------------

やっぱり…、このRaspberryPiではmicroSD:16GBを利用していますが、「/dev/root」の使用量「99%」を表示しています。「/」以外のボリュームを分割はしていませんので、/varも/etcもひっくるめてOSが稼働するためのここが容量不足、ってことになります。ログが書き込めないと動作に支障をきたす、ということでしょう。
ここを容量空けてやれば元に戻る、と考えました。

ログの位置に移動⇒削除

SoftEtherのログ保管位置にcdコマンドで移動し、確認してみました。
SoftEtherは「vpnserver」のインストール位置にファイルを生成します。
./packet_log/%仮想HUB名%の位置を見てみると、
-------------------------------------------------------
# ls -la
合計 10014164
drwx------ 2 root root 12288 4月 17 00:00 .
drw------- 3 root root 4096 9月 7 2016 ..
-rw------- 1 root root 89749475 12月 1 23:59 pkt_20171201.log
-rw------- 1 root root 32609176 12月 2 23:59 pkt_20171202.log
(省略)
-rw------- 1 root root 80769324 4月 16 23:59 pkt_20180416.log
-rw------- 1 root root 6438316 4月 17 09:49 pkt_20180417.log
-------------------------------------------------------
数十メガバイトのログファイルが直近3ヶ月以上のログファイルを蓄積していました。
単純に80MBのファイルが90ファイルあれば7.2GB占有してしまうことになります。
とりあえずこれを別の場所に移動。要らなければ、
# rm pkt_201712*
という具合に月ごとに削除してしまってもいいかも。
ログをなくすと、
-------------------------------------------------------
$ df -m
ファイルシス 1M-ブロック 使用 使用可 使用% マウント位置
/dev/root 15056 7268 7123 51% /
devtmpfs 459 0 459 0% /dev
tmpfs 463 0 463 0% /dev/shm
tmpfs 463 47 416 11% /run
tmpfs 5 1 5 1% /run/lock
tmpfs 463 0 463 0% /sys/fs/cgroup
/dev/mmcblk0p1 63 22 42 35% /boot
tmpfs 93 1 93 1% /run/user/1000
tmpfs 93 0 93 0% /run/user/1001
-------------------------------------------------------
使用率は51%まで低下しました。ひとまずこれでいいか。

プロセス再起動⇒?⇒OS再起動

で、vpnserverプロセスをリスタートすれば接続回復と思ったら、これが回復しない、相変わらず、サイト間接続のステータスは「接続試行⇒エラー:接続できません⇒接続再試行」と繰り返しています。

うーん、あまり好ましくないのですが、OS再起動、
# shutdown -r now
OSを再起動したらば、無事接続は回復しました。

で、時を経て、またしてもログが蓄積するから同じ症状が起きるかもしれない、ということがあって、ちょっと考えるところはあります。
「SoftEther VPN サーバ管理マネージャ」から「仮想HUBの管理」を開いて「ログ保存設定」を開く、

f:id:treedown:20180417144451p:plain
セキュアログはそれほどの容量を蓄積していませんでしたので、それほど考えなくても溜めておけばいいように思えますが、パケットログは結構溜まるんですね、ここで、取得しないような設定も可能ですが、どうしようかは迷うところです。

ひとまず棚上げ。