ソースコードのダウンロードと構築git clone https://github.com/SoftEtherVPN/SoftEtherVPN/ commit 001fd910fedfd0ef1690a9d3c50c1a28d1680d1d ./configure 1 1 make 特権ポートの bind 許可 (root で)
setcap CAP_NET_BIND_SERVICE=ep ./bin/vpnserver/vpnserver VPN Server 開始と停止開始: ./bin/vpnserver/vpnserver start 停止: ./bin/vpnserver/vpnserver stop ログは bin/vpnserver/server_log/vpn_20140124.log に保存されている (20140124 は日付)。日本語の場合 UTF-8 になっている。 しばらく動かした後だと stop が Stopping SoftEther VPN Server Service...と表示したまま止まってしまう。killall -9 vpnserver で停止させることができる。
管理./bin/vpncmd/vpncmd バックスクロールがたくさん欲しくなるので emacs -f shell などの中で実行するとよい。 仮想 HUB "a" を作り、SecureNAT を有効化、ユーザー foo を作成しパスワードを設定し、IPSec を有効化する。NAT と DHCP の設定はデフォルト。変更する場合は NatSet, SecureNatHostSet や DhcpSet などのコマンドを使う。
HubCreate a
Hub a SecureNatEnable
UserCreate foo UserPasswordSet IPsecEnable /L2TP:yes /L2TPRAW:yes /ETHERIP:no /PSK:hoge /DEFAULTHUB:DEFAULT 設定ファイル./bin/vpnserver/vpn_server.config というところに保存されているようだ。また、bin/vpnserver/backup.vpn_server.config/ というディレクトリーが作られていて、その中に古い設定が残されるようだ。
Android から接続テストL2TP/IPSec PSK VPN は下の設定で。L2TP VPN (暗号化なし) の場合は IPSec 事前共有鍵の設定がいらない以外は同じ。 - VPN 名: 適当に
- VPN サーバーの設定: VPN Server の IP アドレスを設定 (名前解決できればホスト名でもよさそう)
- IPSec 事前共有鍵の設定: hoge
- L2TP セキュリティ保護: 無効
- DNS 検索ドメイン: お好きに
接続の際にユーザー名とパスワードを入力する。ユーザー名は VPN Server のユーザー名の後ろに @ をつけてその後ろに仮想 HUB の名前をつける。ここでは foo@a となる。パスワードは VPN Server のパスワードを入れる。 L-04C で無線 LAN 経由でテストしたところ、暗号化あり・なしのいずれも動作した。LAN 上のホストに SSH でログインし、ログイン元の IP アドレスを確認することで、VPN 経由で接続していることが確認できた。また、tcpdump コマンドにより、L2TP パケットが飛んでいる様子が確認できた。
|