LinuxMint18.3でL2TP/IPSecを使用したVPN接続

※UbuntuGnome16.04でも同じ手順で接続可能なのを確認済み

VPN設定画面にL2TP/IPSecを追加

Mintはリポジトリを追加してインストールする必要がある。

$ sudo -s
# add-apt-repository ppa:nm-l2tp/network-manager-l2tp
# apt update
# apt install network-manager-l2tp
# apt install network-manager-l2tp-gnome

GUIでVPN設定

「設定」の「ネットワーク接続」から追加ボタンでl2tpのVPN接続を追加する。

・接続名を入力
・ゲートウェイを入力
・ユーザー名・パスワードを入力
・IPSecを有効にしてPre-shared keyを入力
・IPSecのAdvancedからAlgorithmsを下記の通り入力
  [Phase1] aes256-sha1-modp2048,aes256-sha1-modp1536
  [Phase2] 3des-sha1-modp3072,3des-sha1-modp2048
  ※この値の調べ方は後述
・PPPのMPPE暗号を使用するをチェック
・MSCHAPv2のみ残してあとはチェック外す

Algorithmを調べる

下記のサイトを参考にike-scan.shを作成し、ike-scanをインストールしてからスクリプトを実行する。結果を解析して適宜Algorithmを入力する。
https://github.com/nm-l2tp/network-manager-l2tp/wiki/Known-Issues#querying-vpn-server-for-its-ikev1-algorithm-proposals
作成したike-scan.shはこちら

一時ファイルの削除

設定は合っているのに何故か接続できない場合は下記のコマンドで一時ファイルを削除すると接続できる場合がある。

# rm -f /etc/ipsec.d/nm-l2tp-ipsec-*.secrets