カーネルの関係でIPsecはできないようで、
Android 4.4用のL2TP/IPsec PSK、L2TP/IPsec RSAなVPSサーバにはなれません。
そこでローカルのUbuntu 14.04をL2TP/IPsecにしてみました。
まずは必要なものを以下でインストールします。
# apt-get install xl2tpdで、最初racoonを利用しようとしましたが、
うまくできなかったので途中でopenswanに乗り換えました。以下を実行します。
# apt-get install openswanその際
このホスト用に X.509 証明書を自動的に生成あるいはインポートできます。他 のホストとの IPSec 通信での認証に利用可能で、セキュアな IPSec 通信を確立 する方法として好まれています。他に利用可能な方法としては共通鍵 (PSK、ト ンネルの双方で同じパスワードを利用する) を通信の認証に利用するというのが ありますが、多数の接続に対しては RSA 認証のほうが管理がより簡単でよりセ キュアです。 または、この選択肢を選ばないでおいて、後ほど「dpkg-reconfigure openswan」を実行して再度呼び出すこともできます。 このホストに対して X.509 証明書を利用しますか? <はい> <いいえ>と表示されました。
[はい]ならL2TP/IPsec RSA、[いいえ]ならL2TP/IPsec PSKということになるのでしょうが、
私はここでデフォルトの[いいえ]を選びました。
そして設定です。
"/etc/ipsec.conf"は
protostack=autoの行を
protostack=netkeyに変更し、
# Add connections hereの行の直後に
include /etc/ipsec.d/*.confを追加します。 "/etc/ipsec.secrets"には
: PSK "<IPSec事前共有鍵となる任意の文字列>"を追加します。
"/etc/ipsec.d/l2tp-psk.conf"は内容を以下のようにします。
サンプルが"/etc/ipsec.d/examples/l2tp-psk.conf"にあります。
conn L2TP-PSK-NAT rightsubnet=0.0.0.0/0 also=L2TP-PSK-noNAT conn L2TP-PSK-noNAT authby=secret pfs=no auto=add keyingtries=3 rekey=no ikelifetime=8h keylife=1h type=transport left=%defaultroute leftprotoport=17/1701 right=%any rightprotoport=17/%any"/etc/xl2tpd/xl2tpd.conf" は以下のようにします。
[global] auth file = /etc/xl2tpd/l2tp-secrets [lns default] name = l2tpd local ip = <L2TPサーバのIPアドレス(例えば 172.30.40.1)> ip range = <L2TPクライアントに配るIPアドレス群(例えば 172.30.40.100-172.30.40.200)> require chap = yes refuse pap = yes require authentication = yes ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd length bit = yes"/etc/ppp/options.l2tpd"は以下のようにします。
ipcp-accept-local ipcp-accept-remote require-mschap-v2 noccp nodefaultroute auth idle 1800 mtu 1280 mru 1280 debug lock proxyarp connect-delay 5000 ms-dns <DNSサーバのIPアドレス> netmask 255.255.255.0 logfile /var/log/xl2tpd.log"/etc/xl2tpd/l2tp-secrets"にはアカウントごとに以下のような行を追加します。
ちなみに'#'から始まる行はコメントです。
<ユーザ名> * <パスワード>これで
# /etc/init.d/xl2tpd restart # /etc/init.d/ipsec restartすれば完了です。
なお、@knok blogを参考にさせてもらいました。
あと実行時にリダイレクトがどうとか怒られるのですが、
"proc/sys/net/ipv4/conf/*/accept_redirects"と"proc/sys/net/ipv4/conf/*/send_redirects"を 無効にしていないのが原因のようです。
lowendtalkを見ると
他にも色々いじっていますが、
基本的にはaccept_redirectsとsend_redirectsを軒並み無効(0)にしておけば問題ないようです。
あとはルーティングテーブルやNATを適切にいじれば
他のサブネットやインターネットへもアクセスできるようになります。
ところで今回利用を途中やめしたracoonを使うならdebianや
nikoforgeのページが参考になりそうですし、
l2tpでないIPSec Xauthなvpnを使いたければ
serverfaultが参考になるかもしれません。
あるいはアメコロガシもいいかもしれません。
インターネット上にはたくさんの知恵があるんです。
0 件のコメント:
コメントを投稿