EdgeRouterXでVPN設定
EdgeRouter-X を導入した最初の目標でもある、VPN 機能の設定ができた。 VPNに接続できても、内部ネットワークに繋がらない…と悩んだけど、 自宅サーバ側のFireWall が、EdgeRouter を拒絶していただけだった。
$ configure set vpn ipsec ipsec-interfaces interface eth0 set vpn ipsec nat-networks allowed-network 0.0.0.0/0 set vpn ipsec nat-traversal enable set vpn ipsec auto-firewall-nat-exclude enable # eth0が固定IPの場合の設定(eth0のサブネット) set vpn l2tp remote-access outside-address 192.168.AA.XXX set vpn l2tp remote-access outside-nexthop 192.168.AA.YYY # クライアントに割り振るIP(eth1..3のサブネット) set vpn l2tp remote-access client-ip-pool start 192.168.BB.XXX set vpn l2tp remote-access client-ip-pool stop 192.168.BB.YYY # プレシェアード認証 set vpn l2tp remote-access ipse-settings authentication mode pre-shared-secret set vpn l2tp remote-access ipse-settings authentication pre-shared-secret [XXXXXXXX] set vpn l2tp remote-access ipsec-settings ike-lifetime 3600 # 認証方法 set vpn l2tp remote-access authentication mode local set vpn l2tp remote-access authentication local-users username [XXXX] password [XXXX] set vpn l2tp remote-access mtu 1280 # 自宅サーバのDNSを参照(自宅サーバのDNS) set vpn l2tp remote-access dns-servers server-1 192.168.CC.XXX set service dns forwarding listen-on lo commit save
EdgeRouter-XでL2TPを導入
macOS, iOS 10 が出てきて、PPTP による VPN が使えなくなって、 L2TP を導入しようと、SoftEther VPN とかを試したけど設定が面倒というのが、 今回 EdgeRouter-X を導入しようとした一番大きい理由。
他の記事を参考に、簡単に L2TP 導入…といいたいけど、 まだ失敗の試行錯誤中。だけど、リンクをメモるために、記事としておく。
EdgeRouter-Xを導入しネットワーク構成変更
EdgeRouter-Xを導入する一方で、AirStation の配下の自宅サーバを運用したいので、
# 基本的な WAN+LAN4ポート構成を作る Wizards / Setup Wizards / WAN+2LAN WAN(eth0) - LAN(eth1,eth2,eth3,eth4) の構成を作成。 # eth4 は airstation と接続用に変更 Configuration / interfaces / switch / switch0 / switch-port / interface eth4 を削除 # eth4 に airstation のサブネット(192.168.AA.0/24) # へのゲートウェイを作る Congiguration / interfaces / ethernet / eth4 address : 192.168.AA.XX/24 # switch0(eth1,eth2,eth3) のネットワーク設定 Configuration / interfaces / switch / switch0 address : 192.168.BB.1/24 サブネットを指定。 Configuration / service / dhcp-server / shared-network-name / LAN / subnet Subnet : 192.168.BB.0/24 start : 192.168.BB.XX , end : 192.168.BB.YY
GPONのポートフォワーディング設定

図は閲覧制限
あ、ssh を忘れてら….
ネットワーク構成

図は閲覧制限
check_dig が ADDITIONAL SECTION
自宅サーバを運用するなか、 自宅ドメインを外部でも使えるように、 mydns.jp で公開するが、 Dynamic DNS だからこそ、 自宅ドメインのアドレスが引けない時がある。
そこで、icinga を使って、外部で自宅ドメインのアドレスが引けるか 確認をしている。ただ、この中で、
DNS WARNING - 0.017 seconds response time (Server not found in ANSWER SECTION)
のエラーが1日に1回程度不規則に発生する。 DNS の応答時間の問題 かと思っていたが、 エラーが出ている時の方が、応答時間が短い。 Webで、"Server not found in ANSWER SECTION"をググると、check_dig が、 "ANSWER SECTION"の文字列を、大文字小文字区別で比較して、小文字で情報が帰ってくると アドレスが取れないという記事が見つかった。 しかし、ある程度古い記事だし、対応はとられていそう。 しかしめったに発生しない状況の時に、dig 出力が確認できて、 ようやく原因が見えてきた。 check_dig が呼び出している dig の応答が、問題みたい。
$ dig @dns1.ttn.ne.jp tsaitoh.net : ;; ANSWER SECTION: tsaitoh.NET. 278 IN A xxx.xxx.xxx.xxx
と表示されるのが普通だけど、時々、
$ dig @dns1.ttn.ne.jp tsaitoh.net : ;; ADDTIONAL SECTION: tsaitoh.NET. 278 IN A xxx.xxx.xxx.xxx
といったように、ADDITIONAL SECTION でアドレスが帰ってくる。 この現象は、Google DNS (@8.8.8.8) では発生しない。
vpnserver問題解決
SoftEtherのVPNサーバをインストールしたけど、 翌日にはうまく動かなくなり、原因を探っていたのだけど、 原因は、ケーブルテレビの光接続のルータだったみたい。 ALG設定で、IPsec,L2TP,PPTPの設定を外したら、動くようになった。
vpnserverの動作確認
vpnserverが動き出したのはいいけど、ちゃんと動いているのか、VPN接続があるのかを 把握したいので、icingaでモニタリングするようにしてみた。
(( check_vpnserver )) #!/bin/bash VPNCMD=/usr/local/vpnserver/vpncmd PORT=127.0.0.1:xxxx # VPNサーバに接続するポートを登録 HUB=VPN NAME=VPN # 0:OK, 1:Warning, 2:Critical, 3:Unknown if [ -x $VPNCMD ]; then # vpncmdで状態を読み込む ANS=`$VPNCMD $PORT /server /hub:$HUB /cmd:StatusGet` if [ "$?" -ne 0 ]; then # VPNサーバが動いていない echo "$NAME Critical - No server" exit 2 else ANS=`echo "$ANS" | /bin/grep "セッション数 (クライアント)" | /usr/bin/cut "-d|" -f 2` if [ -z "$ANS" ]; then # 接続無し echo "$NAME OK - Server waiting connection" exit 0 elif [ "$ANS" -gt 0 ]; then # 接続あり echo "$NAME Warning - $ANS clients" exit 1 fi fi else # vpncmd がインストールされていない echo "$NAME Unknown - No vpncmd" exit 3 fi
SoftEther VPNを導入
iOS10,macOS Sierraを導入すると、PPTP-VPNが使えなくなるようで、 Buffalo のVPN機能が使えなくなる。 ということで、Mac環境に macOS Sierra の導入ができなかった。
そこで、strongswan VPN サーバを導入しようと、色々試していたけど、失敗。 であればということで、SoftEther VPN(オープンソース版)を入れてみた。 色々試行錯誤のなか、ようやく動くようになった。

さあ、今から macOS Sierraをインストールするぞ。
職場のメインマシンには、ScanSnap のスキャナがあるけど、 macOS Sierraでトラブル報告があるので、 まずは、MacBook Air で試してみよう。
イスラエルからの攻撃?
自宅サーバの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パススルーを切ってみる。