2013年10月16日水曜日

だるまブログ » ヤマハ-ルータ(RT107e)のIPSec/L2TP – 2:Centosとの接続

だるまブログ » ヤマハ-ルータ(RT107e)のIPSec/L2TP – 2:Centosとの接続:

 RT107eの設定

基本的にこちらを参考にしました。
ただしNATトラバーサルを利用しますので、若干設定が変わります。
pp select 2 ←CentOS固定IPアドレス用L2TP接続設定
pp bind tunnel1 ←tunnel1を使用
pp auth request chap-pap ←RT107eはchapかpapを利用可能(※ルーターによって異なります)
pp auth username L2TPユーザー名 L2TPパスワード
ppp ipcp ipaddress on
ppp ipcp msext on
ip pp remote address 192.168.1.80 ←CentOSはRT107e内側のローカルで192.168.1.80として扱う
ip pp mtu 1258
pp enable 2
tunnel select 1 ←CentOS固定IPアドレス用L2TP用トンネル
tunnel encapsulation l2tp
tunnel endpoint address yyy.yyy.yyy.yyy ←CentOSのGlobalアドレス
ipsec tunnel 1 ←tunnel1で利用するIPSecトンネルを1とする
ipsec sa policy 1 1 esp aes-cbc sha-hmac ←tunnel1、IPSecトンネル1の暗号アルゴリズム、認証アルゴリズムを設定
ipsec ike keepalive log 1 off
ipsec ike keepalive use 1 off
ipsec ike local address 1 192.168.1.1 ←RT107eのLocalアドレス
ipsec ike nat-traversal 1 on ←NATトラバーサル有効化
ipsec ike pre-shared-key 1 text ABCD1234 ←共有キー
ipsec ike remote address 1 yyy.yyy.yyy.yyy ←CentOSのGlobalアドレス
l2tp tunnel disconnect time off
l2tp keepalive use on 10 3
l2tp keepalive log on
l2tp syslog on
ip tunnel tcp mss limit auto
tunnel enable 1
既にプロバイダ接続用で1000番にnatの設定がありましたので、udpの500(ISAKMP : Internet Security Association and Key Management Protocol)と4500(IPSec NAT Traversal)を追加しました。
また、ヤマハのNATトラバーサルのページには「NATトラバーサルを使う限り、ESPパケットは発生しないので、ESPの設定は不要です。」とあるのですが、ESPの設定がないとCentOSから接続できなかったので、ESP関係も設定しました。
nat descriptor type 1000 masquerade
nat descriptor address outer 1000 ipcp
・・・
nat descriptor masquerade static 1000 10 192.168.1.1 udp 500
nat descriptor masquerade static 1000 11 192.168.1.1 udp 4500
nat descriptor masquerade static 1000 12 192.168.1.1 esp
ipsec transport 1 1 udp 1701  ←tunnel1のIPSecトンネル1にトランスポートモードを設定
ipsec auto refresh on
l2tp service on
プロバイダ接続用でフィルタの設定がありましたので、udpの500、4500、1701(L2TP)、ESPを追加しました。
ip filter 200089 pass * 192.168.1.1 udp * 500
ip filter 200090 pass * 192.168.1.1 udp * 4500
ip filter 200091 pass * 192.168.1.1 udp * 1701
ip filter 200092 pass * 192.168.1.1 esp * *
上記フィルタが使用されるようにプロバイダ接続用pp1インターフェースを設定します。
ip pp secure filter in ・・・ 200089 200090 200091 200092 ←追加したフィルタ

 CentOSの設定

こちらを参考にさせていただきました。
上記設定で接続できましたので、変更点だけ記載します。
/etc/ipsec.d/connection.conf
right=xxx.xxx.xxx.xxx ←RT107eのGlobalIP
/etc/ipsec.d/ipsec.secrets
: PSK “ABCD1234″ ←共有キー
/etc/xl2tpd/xl2tpd.conf
lns = xxx.xxx.xxx.xxx ←RT107eのGlobalIP
/etc/ppp/options.xl2tpd.conn-1
name L2TPユーザー名 ←RT107eで設定したL2TPユーザー名
mtu 1258 ←RT107eのmtu設定に合わせました
mru 1258 ←RT107eのmtu設定に合わせました
/etc/ppp/chap-secrets
“L2TPユーザー名” * “L2TPパスワード” * ←RT107eで設定したL2TPユーザー名とL2TPパスワード
以上の設定でVPS上のCentOSがローカル側のクライアントから192.168.1.80でアクセスできるようになりました。
2013/5/26追記
route add -net 192.168.1.0 netmask 255.255.255.0 dev ppp0
を /etc/ppp/ipup に追加すると接続時、自動的に設定されます。
2013/5/26追記
クライアントのCentOSで /var/log/messages に
Maximum retries exceeded for tunnel 37028.  Closing
Connection 44740 closed to ・・・
というエラーが出て接続が切れる現象が発生しました。
/etc/xl2tpd/xl2tpd.conf の [lac L2TP1] に
redial = yes ←切断時に再接続する
redial timeout = 10 ←再接続までの待機時間
max redials = 6 ←再接続を行う最大回数
を追加することで自動的に再接続されるようになりました。
'via Blog this'

0 件のコメント:

コメントを投稿