RTX1200を使ってL2TP/IPsecなVPNを構築する
どこのご家庭にもあるRTX1200でVPNを張ったらかなり捗ったので、覚書としてコンフィグを残しておく。YAMAHAの公式サイト見れば、VPN構築が始めてでも楽々設定できるからいいよね。だがGUI、お前には頼らない(ほうがカッコイイ)。
前提条件
- RTX1200:10.0.10.240
- Cisco L3:10.0.10.230 10.0.20.230
- Client Segment:10.0.10.0/24
- Server Segment:10.0.20.0/24
設定はコンソールで。telnetは論外、SSHも(個人的には)やめておきたいところ。どうせ自宅機器だし。きしめんおいしいです(^q^)
# RTX1200 Rev.10.01.65 (Tue Oct 13 12:23:48 2015) # MAC Address : # Memory 128Mbytes, 3LAN, 1BRI # main: RTX1200 ver=b0 serial= MAC-Address= MAC-Address= MAC-Address= # Reporting Date: Feb 9 23:13:34 2016 login password encrypted * administrator password encrypted * login user tydk27 * ip route default gateway pp 1 ip route 10.0.20.0/24 gateway 10.0.10.230 ip lan1 address 10.0.10.240/24 ip lan1 proxyarp on ip lan1 secure filter in 100000 100001 100002 100003 100004 100005 100006 100007 100099 pp select 1 description pp PRV/PPPoE/0:HOGE_NW pp keepalive interval 30 retry-interval=30 count=12 pp always-on on pppoe use lan2 pppoe auto connect on pppoe auto disconnect off pp auth accept pap chap pp auth myname foobar hogepiyo ppp lcp mru on 1454 ppp ipcp ipaddress on ppp ccp type none ip pp mtu 1500 ip pp secure filter in 200003 200020 200021 200022 200023 200024 200025 200030 200032 200080 200081 200082 200083 ip pp secure filter out 200013 200020 200021 200022 200023 200024 200025 200026 200027 200099 dynamic 200080 200081 200082 200083 200084 200085 200098 200099 ip pp nat descriptor 1000 netvolante-dns hostname host pp server=1 hogehoge.piyopiyo.netvolante.jp pp enable 1 pp select anonymous pp name hoge-vpn pp bind tunnel1 pp auth request chap-pap pp auth username hoge piyo ppp ipcp ipaddress on ppp ipcp msext on ip pp remote address pool 10.0.10.31-10.0.10.40 ip pp mtu 1258 pp enable anonymous tunnel select 1 tunnel encapsulation l2tp ipsec tunnel 1 ipsec sa policy 1 1 esp aes-cbc sha-hmac ipsec ike keepalive log 1 off ipsec ike keepalive use 1 off ipsec ike local address 1 10.0.10.240 ipsec ike nat-traversal 1 on ipsec ike pre-shared-key 1 text hogehogepiyopiyo ipsec ike remote address 1 any l2tp tunnel auth off l2tp keepalive use on ip tunnel tcp mss limit auto tunnel enable 1 ip filter 100000 reject * * udp,tcp 135 * ip filter 100001 reject * * udp,tcp * 135 ip filter 100002 reject * * udp,tcp netbios_ns-netbios_dgm * ip filter 100003 reject * * udp,tcp * netbios_ns-netbios_dgm ip filter 100004 reject * * udp,tcp netbios_ssn * ip filter 100005 reject * * udp,tcp * netbios_ssn ip filter 100006 reject * * udp,tcp 445 * ip filter 100007 reject * * udp,tcp * 445 ip filter 100099 pass * * * * * ip filter 200000 reject 10.0.0.0/8 * * * * ip filter 200001 reject 172.16.0.0/12 * * * * ip filter 200002 reject 192.168.0.0/16 * * * * ip filter 200003 reject 10.0.10.0/24 * * * * ip filter 200010 reject * 10.0.0.0/8 * * * ip filter 200011 reject * 172.16.0.0/12 * * * ip filter 200012 reject * 192.168.0.0/16 * * * ip filter 200013 reject * 10.0.10.0/24 * * * ip filter 200020 reject * * udp,tcp 135 * ip filter 200021 reject * * udp,tcp * 135 ip filter 200022 reject * * udp,tcp netbios_ns-netbios_ssn * ip filter 200023 reject * * udp,tcp * netbios_ns-netbios_ssn ip filter 200024 reject * * udp,tcp 445 * ip filter 200025 reject * * udp,tcp * 445 ip filter 200026 restrict * * tcpfin * www,21,nntp ip filter 200027 restrict * * tcprst * www,21,nntp ip filter 200030 pass * 10.0.10.0/24 icmp * * ip filter 200031 pass * 10.0.10.0/24 established * * ip filter 200032 pass * 10.0.10.0/24 tcp * ident ip filter 200033 pass * 10.0.10.0/24 tcp ftpdata * ip filter 200034 pass * 10.0.10.0/24 tcp,udp * domain ip filter 200035 pass * 10.0.10.0/24 udp domain * ip filter 200036 pass * 10.0.10.0/24 udp * ntp ip filter 200037 pass * 10.0.10.0/24 udp ntp * ip filter 200080 pass * 10.0.10.240 esp * * ip filter 200081 pass * 10.0.10.240 udp * 500 ip filter 200082 pass * 10.0.10.240 udp * 4500 ip filter 200083 pass * 10.0.10.240 udp * 1701 ip filter 200098 reject-nolog * * established ip filter 200099 pass * * * * * ip filter 500000 restrict * * * * * ip filter dynamic 200080 * * ftp ip filter dynamic 200081 * * domain ip filter dynamic 200082 * * www ip filter dynamic 200083 * * smtp ip filter dynamic 200084 * * pop3 ip filter dynamic 200085 * * submission ip filter dynamic 200098 * * tcp ip filter dynamic 200099 * * udp nat descriptor address outer 1 ipcp nat descriptor address inner 1 auto nat descriptor type 1000 masquerade nat descriptor masquerade static 1000 101 10.0.10.240 esp nat descriptor masquerade static 1000 102 10.0.10.240 udp 500 nat descriptor masquerade static 1000 104 10.0.10.240 udp 4500 ipsec transport 1 1 udp 1701 telnetd service off telnetd host none dns server hogeeee dns server select 500001 hogeeee any . restrict pp 1 dns private address spoof on snmp sysname yamaha-rtx1200 schedule at 1 */* 00:00 * ntpdate 10.0.10.2 syslog schedule at 2 */* 03:00 * mail notify status exec 1 schedule at 3 */* 03:10 * clear log l2tp service on mail server name 1 hoge mail server smtp 1 10.0.10.1 mail template 1 1 From:foo@bar.com To:hoge@piyopiyo.com "Subject:hogepiyo's status mail" notify-wait-time=1 mail notify 1 1 trigger status all sshd service off sshd host lan1 sshd host key generate * statistics cpu on statistics memory on #
「ip route 10.0.20.0/24 gateway 10.0.10.230」について
過去記事にも書いていますが、自宅NWはVRFで構築しています。
こういった環境ですのでVPNで自宅にアクセスすると、通常ではサーバセグメントには入れません。が、VRFはルート漏洩させていますので、10.0.10.230までのルーティングを書いてあげれば問題ないということです。10.0.20.0/24行きを10.0.10.230に飛ばすようにすることで解決。まぁVPNの設定だけでなくて、メールサーバやNTPサーバがサーバセグメントにあるので、これがないと無理ゲーになるというアレ。
「ip lan1 proxyarp on」について
「ルータまではpingが通るのにその先に行かねえ!」とかいう状況に陥ったら、まずProxy ARPがONになっていることを確認しましょう。えぇえぇ、これで1時間ハマりましたよ…。
ケーブルコスメの前にまずラック買うべきかと思い始めた。 pic.twitter.com/eOUXr1b2ec
— にいな (@tydk27) February 9, 2016
サーバラックください(懇願)