2014年9月24日水曜日

ServersMan@VPS(Debian32bit)でL2TPできるようになった

ServersMan@VPSがPPTPサーバになれることが分かったので、
今度はL2TPを試してみます。
2年半前に途中止めになっていたこの記事の続きにあたります。

L2TPのインストールから始めます。
# apt-get install xl2tpd
でインストールします。
設定ファイル"/etc/xl2tpd/xl2tpd.conf"の内容は以下のようにします。
ちなみに';'から始まる行はコメントです。
[global]
auth file = /etc/xl2tpd/l2tp-secrets
access control = no
[lns default]
local ip = <L2TPサーバのIPアドレス(例えば 172.30.40.1)>
ip range = <L2TPクライアントに配るIPアドレス群(例えば 172.30.40.100-172.30.40.200)>
pppoptfile = /etc/ppp/options.xl2tpd
認証情報ファイル"/etc/xl2tpd/l2tp-secrets"にアカウントごとに以下のような行を追加します。
ちなみに'#'から始まる行はコメントです。
<ユーザ名> * <パスワード>
設定ファイル"/etc/ppp/options.xl2tpd"を以下の内容で新規作成します。
ms-dns <DNSサーバのIPアドレス>
require-mschap-v2
asyncmap 0
auth
crtscts
lock
hide-password
modem
debug
name l2tpd
proxyarp
lcp-echo-interval 10
lcp-echo-failure 100
最後に
# /etc/init.d/xl2tpd restart
でデーモンを再起動します。

これでAndroid 2.3からL2TP接続できることが確認できました。
もしVPN経由で外に出たい場合は、上記のIPアドレス例どおりならvpsで
# iptables -t nat -A POSTROUTING -s 172.30.40.0/24 -o venet0 -j MASQUERADE
# echo 1 > /proc/sys/net/ipv4/ip_forward 
を実行した上でクライアントのルーティングテーブルを適切に設定すればいいでしょう。

ただし、最新のAndroid 4.4では単なるL2TPのサポートはされていません。
VPN接続で選べるのは
  • PPTP
  • L2TP/IPsec PSK
  • L2TP/IPsec RSA
  • IPsec Xauth PSK
  • IPsec Xauth RSA
  • IPsec Hybrid RSA
だけです。
ipsecはどうかなとvpsにracoonをインストールし起動しようとしたところ
racoon - IKE keying daemon will not be started as /proc/net/pfkey is not
         available or a suitable 2.6 (or 2.4 with IPSEC backport)
         kernel with af_key.[k]o module is not installed.
と表示されました。
どうやらServersMan@VPSではカーネルのサポートが抜けているようです。
素直にPPTPOpenVPNを使いましょう。

0 件のコメント:

コメントを投稿