イスラエルからの攻撃?
自宅サーバのVPNの設定がうまくいかないので作業中、 /var/log/syslog に以下のような出力が並ぶ。
Oct 2 19:19:01 perrine postfix/smtpd[13066]: connect from dsl212-143-40-109.bb.netvision.net.il[212.143.40.109] Oct 2 19:19:04 perrine postfix/smtpd[13066]: NOQUEUE: reject: RCPT from dsl212-143-40-109.bb.netvision.net.il [212.143.40.109]: 554 5.7.1 <eax_64@yahoo.com>: Relay access denied; from=<xo@ore.net> to=<eax_64@yahoo.com> proto=ESMTP helo=<192.168.0.46> Oct 2 19:19:04 perrine postfix/smtpd[13066]: lost connection after RCPT from dsl212-143-40-109.bb.netvision.net.il [212.143.40.109] Oct 2 19:19:04 perrine postfix/smtpd[13066]: disconnect from dsl212-143-40-109.bb.netvision.net.il[212.143.40.109] ehlo=1 mail=1 rcpt=0/1 commands=2/3O
イスラエル(.il)からみたい。この後も、SASL の LOGIN を試みるのが 止まらない。ブルートフォースアタックっぽいし、不気味なので、 国毎のIPアドレス表から作っている FireWall のブラックリストに、 中東、東ヨーロッパの国を追加。
# wc -l geoipdeny.store 26069 geoipdeny.store
ルータのWeb設定だけハングアップ
自宅サーバの警告でてたけど、 ルータのWeb設定のlogin画面が機能していない。 そのくせ、パケットは流れてる。
ルータ故障の前兆かもしれないので、メモ。
うーむ、Webハングアップが多発するな。
2016-10/02,23:13 2016-10/02,17:31 2016-10/02,06:44
症状の出始めからすると、IPv6パススルーに関係するのかな。 ということで、IPv6パススルーを切ってみる。
systemd.networkの設定
職場から自宅サーバを触っていて、reboot が必要そうなので、 再起動をかけたら、サーバが復帰せずびびった。 Debian が systemd に移行したけど、相変わらず /etc/init.d を使って作業をしていたけど、 ネットワークの設定の方法が変わったのね。 /etc/network/interfaces のファイルだけでメンテナンスしてたけど、 /etc/systemd/network/*.network で設定するのね。
これらの設定を移行してなかったので、ネットワークが設定されず、 DHCPが動かない(自宅内のネットワーク機器全滅)。 同じく Web , mail , ….総崩れ。(x_x;;
systemdのネットワーク設定
(( /etc/systemd/network/eth0.network )) [Match] Name=eth0 [Network] Address=192.168.XX.XX/24 Gateway=192.168.XX.YY
設定の有効化
# systemctl enable systemd-networkd
systemsのresolve設定
systemdの設定ファイルを修正
(( /etc/systemd/resolved.conf )) [Resolve] DNS=192.168.XX.YY Domains=example.jp
設定を有効にする。
# mkdir /run/systemd/resolv # cp /etc/resolv.conf /run/systemd/resolv/resolv.conf # ln -sf /run/systemd/resolv/resolv.conf /etc/resolv.conf # systemctl enable systemd-resolved.service # systemctl restart systemd-resolved.service
電子レンジの RE-SS10C-R に更新
台所の電子レンジが不調だったので、買い換えしようと 提案者のお兄ちゃんを連れて家電屋さんに。
ばあちゃんが、新しい機能使えないだろうということで、 オーブン2段(お兄ちゃんがクッキー作りで1段では不足らしい) という選択で、安価な SHARPの RE-SS10C-R になった。
ということで、5年間保障で+1000円も付けて購入。
# 故障時に購入日と型番を調べたいから、BLOGでメモ。
自宅内のIPv6ちょっと対応
iOS 10 の導入で、自宅サーバで IPSec の VPN サーバを動かしたいけど、 なぜかうまく動かない。光ファイバ通信の融通の利かないルータの中に、 融通の利く既存のルータの2段ルータ構造で、IPSec 関連のパケットが 落とされている可能性があったので、VPNパススルーやらIPv6パススルーを 試してみた。
ただ、IPv6パススルーを有効にすると、パソコンなどが IPv6 RA 情報を 拾って IPv6アドレスを取得する。これはいいんだけど、DNS として、 ルータを使うようになってしまう。我が家では自宅サーバ用に自宅内 DNS を動かしているので、グローバルなDNSに直接つながると、自宅内 で自宅 Web ページが見えなくなってしまう。
自宅内 IPv6 用 DHCP サーバ
そこで、IPv6用 DHCP サーバを以下のようにして動かした。
ただし、IPアドレスまで割り振りたかったが、RA 情報を使って V6アドレスをつかんでしまうので、自宅内 DNS サーバを使うように DNS サーバ情報を配るだけ。
(( /etc/default/isc-dhcp-server )) INTERFACESv4="eth0" + INTERFACESv6="eth0"
(( /etc/dhcp/dhcpd6.conf )) + option dhcp6.name-servers fe80::xxxx:xxxx:xxxx:xxxx; + option dhcp6.domain-search "自宅のドメイン名";
PS4の動作状況をicingaで表示
HomeKit互換のhomebridgeを使っていて、PS4 の動作確認で ps4-waker というソフト が便利なことがわかったので、ちょいと別応用。
サーバ監視ソフトの icinga で使えるように、nagios 用の check_ps4 を作ってみた。 "ps4-waker search" の出力の statusLine が 200(起動中)/620(スタンバイ) で動作確認ができるけど、 running-app-name も出力に入れれば、なんのゲームが動いているかも出力できる。
#!/bin/bash PS4WAKER="/usr/local/bin/ps4-waker" if [ -x $PS4WAKER ]; then ans=`$PS4WAKER search -t 50 2>/dev/null \ | /bin/sed -n "s/^ \(statusLine\|'running-app-name'\): '\(.*\)'.*$/\2/p" \ | /usr/bin/paste - -` case "$ans" in 200* ) # Powered ON echo "$ans" exit 0 ;; 620* ) # Standby echo "$ans" exit 0 ;; "" ) # No response echo "0 Powerd off" exit 2 ;; * ) # Another status echo "$ans" exit 2 ;; esac else exit 1 fi
homebridgeで温湿度も取れる
homebridgeが面白い。plugin 揃ってるので、 部屋の温度湿度をとれるようにしてみた。 データは、サーバに接続している温湿度センサーの usbrh 。
usbrh のデータを、プラグイン homebridge-httptemperaturehumidity で 読み取れるようにしてみた。
<?php
header( "Content-Type: application/json; charset=utf-8" ) ;
$data = shell_exec( "/usr/local/bin/usbrh" ) ;
if ( preg_match( "/^([\d\.]+)\s([\d\.]+)$/" , $data , $match ) ) {
print "{\n\"temperature\": ".$match[1].",\n\"humidity\": ".$match[2]."\n}\n" ;
}
?>
homebridgeで家電制御
iOS 10 で HomeKit のアイコン表示されたし、Siriから家庭内の家電制御ができないかと試してみた。 HomeKit 互換でフリーの実装の homebridge があるみたいなので、 インストールし、設定を行った。
homebridge-cmd を使うと、電源のON/OFFの制御なら、コマンドラインで呼び出せる処理を 起動できる。
{
"bridge": {
"name": "perrine", # ホスト名?
"username": "CC:22:3D:E3:CE:30", # 特になんでもいい。
"port": 51826,
"pin": "031-45-154"
},
"description": "HomeControl by Tira-2",
"accessories": [
{
"accessory": "CMD",
"name": "テレビ",
"on_cmd": "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=regza --transmit=power\"",
"off_cmd": "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=regza --transmit=power\""
},
{
"accessory": "CMD",
"name": "チューナー",
"on_cmd": "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=catvstb --transmit=power\"",
"off_cmd": "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=catvstb --transmit=power\""
}
]
}
参考記事だと、制御には insteon+ を使うとの記事が多かったけど、 homebridge を起動して制御させようとするが、機器を認識してくれない。
username とかを色々と試してみたけどダメだったけど、insteon+ を使わずに、 基本の HomeKit アプリを起動したら、あっさり認識。
|
|
|
ps4-wake
homebridge のことをしらべていたら、PS4 をネットワーク経由で スタンバイ状態から ON/OFF できる、node.js を使った ps4-waker という ソフトがあるみたい。
でも、node.js はまだ良くわからない所もあるので、ちょいと探すと、 "ps4-wake" というソフトも見つかる。 C言語ベースで、導入も簡単そう。
((インストール)) $ git clone git://github.com/dsokoloski/ps4-wake/ $ cd ps4-wake $ make $ sudo cp ps4-wake /usr/local/bin
((使い方)) $ ps4-wake -vP -B # 同一ネットワーク内のPS4を探す Device found: PS4-YYY [PS4/XXXXXXXXXXXX]: Standby $ ps4-wake -vW <USER-CREDENTIAL> -H XXX.XXX.XXX.XXX # 指定IP
見つけたPS4の"USER-CREDENTIAL"をつけて、ps4-wake を呼び出せば いいのだが、その書き方が違うのか、PS4が起動しない。
といっても、合宿所の宿直でVPN接続で自宅のPS4を触っているので、 本当に起動しているのかいないのかが不明なので、今日はココまで。
