linux(ubuntu)でL2TPのVPN接続

こんにちは。

以前VPNサーバを構築したのですが、VPNサーバにubuntuから接続しようとした際に、VPN接続で少し手間取ったので嬉々として更新する次第です。

https://synrock-tech.com/network/vpn/raspberrypi-vpn-server

前提と背景

環境は以下のようになっている。ラズパイ4をSoftetherを使用してVPNサーバ稼働させている。そこに対して、ubuntuからVPNのセッションを繋ごうというわけだ。

iPhoneやAndroid、MacOSは特に支障もなく設定できたので、家で転がっているWindowsPCからubuntuに生まれ変わったPCでも容易だろうと高を括っていたら手間取った。

設定

設定 > ネットワーク > VPNと選択し、VPNの横の+ボタンをクリックする。

20200607-1-1.png

するとプロトコルが選択できる画面が表示されるのだが、PPTPしかないためLayer 2 tunneling protocol(L2TP)が選択できない。

20200607-1-2.png

どうも必要なものを追加しないといかんらしい。

必要最低限しか入っていないubuntu最高である。

network-manager-l2tp network-manager-l2tp-gnome の二つをインストールする。

sudo apt-get update
sudo apt-get install network-manager-l2tp
sudo apt-get install network-manager-l2tp-gnome

インストール後に再度VPN接続の画面を開くと、プロトコルの選択肢が増えている。

※増えない場合は、一旦設定画面を閉じて、開きなおすと表示される。

20200607-1-3.png

Layer 2 Tunneling Protocol(L2TP)を選択する。

そして後は上の記事で設定したゲートウェイやユーザー名などを入力する。

20200607-1-4.png

画面下部のIPsec Settingsのボタンをクリックして、設定を追加する。

のだが、ここが鬼門である。pre-shared kayは特に問題ない。

Phase1 AlgorithmsとPhase2 Algorithmsの設定がわけわからん。

20200607-1-5.png

一応上記のように設定すると、動作はした。 AES128-SHA1に関しては理解できるのだが、3des-sha1-modp1024は自分のサーバの状態から導いたわけではない。

これは追加の調査が必要である。

※この部分は自己責任でお願いいたします。

※追記 IKEのアルゴリズムの調べ方と設定に関して更新した。

https://synrock-tech.com/network/vpn/ipsec-ike-algorithm

続いてPPP settingsも設定を行う。

MPPE暗号を使用するにチェックを追加し、PPP echoパケットを送信するにチェック。

20200607-1-6.png

上記設定ができたら、VPNをONにする。

20200607-1-7.png

ものすごくモヤモヤが残る結果となった。

追加の調査を行い、気持ちよくなりたい。

参考

VPNTunnel:L2TP Installation Guide for Ubuntu 18.04:https://help.vpntunnel.com/support/solutions/articles/5000782608-vpntunnel-l2tp-installation-guide-for-ubuntu-18-04-

ubuntu documentation:https://help.ubuntu.com/stable/ubuntu-help/net-vpn-connect.html.en