前にubuntu 18.04からL2TPでVPN接続 - over the rainbowにてsoftetherのubuntu版(Linux版)VPN Clientのことを書いたけど、その時は結局Windows10のクライアントインストールは簡単で良い。Android版とiOS版も簡単で良い。しかし、ubuntu 20.04 でクライアントソフトを入れずに純粋なL2TPとしてサーバーへ接続しようとしてもうまく出来ない。
ってことで終わりにしちゃった。
けど、また挑戦してみたくなった。
まずは、softether公式サイトに置いてある tar.gz形式のクライアントをダウンロードしてみた。
https://jp.softether-download.com/files/softether/v4.34-9745-rtm-2020.04.05-tree/Linux/SoftEther_VPN_Client/64bit_-_Intel_x64_or_AMD64/softether-vpnclient-v4.34-9745-rtm-2020.04.05-linux-x64-64bit.tar.gz
これね。
β版ではなく、RTM版の最新。
で、展開して sudo mekeってやればいいというのをネットでチラ見したので、やろうとしたらmakeが入ってないよというエラーが出たので、
makeをインストールした。
その後、sudo make やってみたらエラーで終了。
なによ、ranlibって。
sudo apt-get install ranlib しても該当なしだし。
https://ja.softether.org/4-docs/1-manual/7/7.3
は、サーバー版の説明だけど、
もしこの処理の過程でエラーが発生した場合は、vpnserver プログラムの生成処理に失敗しています。そのような場合は、「7.3.1 推奨システム」 および 「7.3.3 必要なソフトウェアおよびライブラリの確認」 をもう一度確認し、必要なライブラリなどが不足していないかどうか確認してください。
って書いてある。というかsoftether公式サイトの説明だとubuntuは動作環境に該当してないみたいだけど。
って、あ! よく見るとgccが入っていないよって書いてあるな。
つーこってgccをインストール
そのあとでsudo makeでファイル作成は出来た。あとは更にコピーやchmodなども必要なのか。
さて。
ここまでやっといてなんだけど、
https://zenn.dev/nemuki/articles/aa5b93e506f765
によると、sudo apt-add-repository ppa:paskal-07/softethervpn でリポジトリを追加してapt-getでsoftether関連をインストールすれば良いという手段も書いてある。
これでLinux版のクライアントインストールしてみようかなー。と思ったりして。
(上記サイトもserverにしか言及していなくて、ubuntuでclientを使うのはレアケースなのかなーというふうに思える。)
上記リポジトリを追加し、
apt-getでsoftether VPNのClientをインストール
とりあえずコマンドラインの管理画面には入ることが出来た。
しかし、仮想LANカードを作ろうとするとエラーが出る。
とりあえず、ここまでにするか。
この状態で、同一LANにあるWindows10からGUIで設定だけでもしちゃえば良さそうな気もする。
最初には書いたけど、やっぱり初心者にはWindows10でやるのが楽でいいね。ubuntuでclient接続は(linuxの基礎知識がないと)難しいわ。
でも勉強になっていい。
追記:
Dockerコンテナ内でSoftEther仮想NICを作る方法 : みからぼ。
を読んでてわかったけど、公式ドキュメントに
ソフトイーサ株式会社では Linux 版 VPN Client を提供しますが、これが正常動作することについて一切サポートしておりません。
Linux 版の VPN Client を動作させるためには、「Universal TUN/TAP デバイスドライバモジュール」が、カーネルに組み込まれている必要があります。詳しくは、http://vtun.sourceforge.net/tun/ を参照してください。
Linux 版の VPN Client は、ルーティングテーブルの自動書き換えなどの機能はありません。VPN 接続した tap デバイス側をデフォルトゲートウェイにする場合は、VPN サーバーへのスタティックルートを手動で接続する必要がある場合があります。
Linux 版 VPN Client によって生成される tap デバイスを DHCP クライアントデバイスとして使用する場合は、DHCP クライアントデーモンなどを適切に設定する必要があります。
と書いてあって、「Universal TUN/TAP デバイスドライバモジュール」のカーネル組み込みもわからないし、DHCPとかも自動じゃないし、やっぱりまだまだハードルは高そうだ。