VPNルータを作りたい(2)
さて、とりあえずIPSECが使いたいので設定してみる。
それに先立ってVPSで借りてるサーバーにL2TP/IPSECサービスをインストールしたがこれは割愛。それに向けて接続する。
参考記事
http://masanoriprog.blogspot.jp/2013/02/vps-l2tp-ipsec-vpn-centos.html
http://www.jacco2.dds.nl/networking/linux-l2tp.html
1) インストール
最初l2tp-ipsec-vpnをインストールした。GUIのツールで結果的にうまくいかなかったのだが依存性でインストールされたopenswan / xl2tpdがインストールされたので利用する。
$ sudo apt-get update
$ sudo apt-get upgrade
root@raspberrypi:/var/log# apt-get purge l2tp-ipsec-vpn
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
bind9-host geoip-database host l2tp-ipsec-vpn-daemon libbind9-80 libblas3gf libctemplate2
libdns88 libgeoip1 libisc84 libisccc80 libisccfg82 liblapack3gf liblwres80 openswan xl2tpd
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
0 upgraded, 0 newly installed, 1 to remove and 1 not upgraded.
After this operation, 603 kB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 59842 files and directories currently installed.)
Trying to delete all generated config files
[ ok ] Stopping enhanced syslogd: rsyslogd.
[ ok ] Starting enhanced syslogd: rsyslogd.
Purging configuration files for l2tp-ipsec-vpn ...
Processing triggers for man-db ...
Processing triggers for desktop-file-utils ...
2) openswanとxl2tpdの設定
-- /etc/ipsec.confに接続先情報を
(略)
conn SERVER
authby=secret (preshared keyを利用)
pfs=no
rekey=yes
keyingtries=3
type=transport
leftprotoport=17/1701
right=server.com
rightprotoport=17/1701
rightid=""
auto=add
-- /etc/ipsec.secretsにPSKを
%any @server.com: PSK "XXXXXXXXXXXXXX"
-- /etc/xl2tpd/xl2tpd.conf
[lac server]
lns = server.com
require chap = yes
refuse pap = yes
require authentication = yes
ppp debug = yes
pppoptfile = /etc/ppp/server.options.xl2tpd
length bit = yes
redial = no
-- /etc/ppp/server.options.xl2tpd
name userid
noauth
crtscts
mtu 1410
mru 1410
nodefaultroute
lock
logfile /var/log/xl2tpd-server.log
-- /etc/ppp/chap-secrets
userid * secret *
3) 接続テスト
# ipsec auto --up server
# echo "c server" > /var/run/xl2tpd/l2tp-control
# ifconfig ppp0するとインタフェースがみえる。
# ping でトンネルを通って応答がある
4) 切断
# echo "d server" > /var/run/xl2tpd/l2tp-control
# ipsec auto --down server
5) 課題
まだルーティングの設定をしていないのでVPNサーバにしかつながらない。
- ipsecが上がった時にデフォルトルートを変更する
一連の動作を自動化したい
- ブートしたら接続
- 切れたら再接続
- シャットダウン時切断