テレワークが提唱されているので、自宅にもVPNサーバを立てることにしました。
これで、息子がマレーシアで完全自宅待機なので、VPN経由で日本の番組をみることが
できるでしょう。
また、外出先からワンコのライブ映像も見ることができます。
さて、VPNサーバをどう立てるかですが、自宅にあるルータ(IOデータ、バッファロー)は
残念ながらPPTPにしか対応していなくて、iPhoneやiPadからつながりません。
L2TPに対応したVPNサーバをたてなければなりません。
ということで、困ったときのRaspberryPiということで、RaspberryPiにSoftEtherを
インストールすることにしました。

RaspberryPiが動いていて、sshが使えるという前提で奨めます
また、固定のIPアドレスを振っておいてください。
SoftEtherの設定はGUIでやるのが便利なのでWindows版の管理マネージャを
使うことにします。

【SoftEtherのダウンロード】
最新版を探すのがべんりなのでパソコンでダウンロードします
https://www.softether-download.com/ja.aspx?product=softether
から次のように選んでダウンロードします。
 ソフトウェア:SoftEther VPN
 コンポーネント:SoftEther VPN Server
 プラットフォーム:Linux
 CPU:ARM EABI(32bit)

【SCPなどでRaspberryPiヘ転送】
RaspberryPiでSCPなどを使って転送します。

【RaspberryPiにSoftEtherをインストール】
先ずは展開します

$ tar xf softether-vpnserver-v4.34-9744-beta-2020.03.20-linux-arm_eabi-32bit.tar.gz

【展開したものビルドします】

$ cd vpnserver $ make

【/usr/localへコピーしてパーミッションの変更します】

$ sudo mv vpnserver /usr/local $ cd /usr/local/vpnserver $ chmod 600 * $ chmod 700 vpncomd vpnserver

【インストールできているかの確認(VPN Toolsの実行)をします】

$ /usr/local/vpnserver/vpncmd 1. VPN Server または VPN Bridge の管理 2. VPN Client の管理 3. VPN Tools コマンドの使用 (証明書作成や通信速度測定) 「3.を選びcheckコマンドの実施」 VPN Tools>check VPN Toolsの終了 VPN Tools>quit

【vpnserverの自動起動を設定します】
/etc/systemd/system に vpnserver.serviceを作成します

$ sudo vi /etc/systemd/system/vpnserver.service [Unit] Description=SoftEther VPN Server After=network.target network-online.target [Service] User=root ExecStart=/usr/local/vpnserver/vpnserver start ExecStop=/usr/local/vpnserver/vpnserver stop Type=forking RestartSec=3s WorkingDirectory=/usr/local/vpnserver/ ExecStartPre=/sbin/ip link set dev eth0 promisc on [Install] WantedBy=multi-user.target

【サービスの動作確認と停止と自動起動の設定を行います】

$ sudo systemctl start vpnserver $ systemctl status vpnserver.service 「動作している状態が表示されます」 $ sudo systemctl stop vpnserver 「自動起動の設定」 $ sudo systemctl enable vpnserver.service 「再起動後動作確認をしてください」

【Windowsに VPN Server Managerをインストールして設定】
VPN Server Managerのダウンロードをします
https://www.softether-download.com/ja.aspx?product=softether
から次のように選んでダウンロードします。
 ソフトウェア:SoftEther VPN
 コンポーネント:SoftEther VPN Server Manager for Windows
 プラットフォーム:Windows
 CPU:Interl(x86 and x64)

【インストールの実行と設定】
インストールするソフトウエアの選択で「SoftEther VPM サーバー管理マネージャ」
を選びます。
SoftEther VPM サーバー管理マネージャを起動し次の設定をします。
 新しい接続設定
  接続設定名
  ホスト名(IPアドレス)
設定した接続情報に接続し次の設定をします。
 IPSec/L2TPP設定
  L2TPサーバ機能を有効にする
  IPSec共有鍵(シークレット)を入力
 仮想HUBの管理
  ユーザ管理
   ユーザの登録をします
 仮想NATおよび仮想DHCPサーバ機能
  SecureNAT機能を有効にする これをしないとiPhoneで「PPPサーバへの接続を確立
  できませんでした~」といわれます

【ルータにポートの転送を書きます(L2TP, IPSec)】
 UDP:500,4500
 AH:プロトコル番号51
 ESC:プロトコル番号50
 をSoftEtherを動かすホストに転送設定をします。

【ルータにプロトコル指定での転送機能がないとき】
VPNサーバをDMZに置かざるを得ないですが、このときはsshのアクセスを
外部からできないようにします。
VPNの接続以外は許可しないようにするのが良いと思います。SoftEtherによるIPSecをfirewalldで許可します
  sudo firewall-cmd –add-port=500/udp –zone=public –permanent
  sudo firewall-cmd –add-port=4500/udp –zone=public –permanent
  sudo firewall-cmd –permanent –zone=public –add-service=ipsec
SSL, SSHを外からアクセスできないようにして
  sudo firewall-cmd –remove-port=443/tcp –zone=public –permanent
  sudo firewall-cmd –remove-port=22/tcp –zone=public –permanent
SSL, SSHを内側からはアクセスできるようにする
  sudo firewall-cmd –permanent –zone=public –add-rich-rule=”rule family=”ipv4″ source address=”192.168.101.0/24″ port protocol=”tcp” port=”443″ accept”
  sudo firewall-cmd –permanent –zone=public –add-rich-rule=”rule family=”ipv4″ source address=”192.168.101.0/24″ port protocol=”tcp” port=”6022″ accept”
firewalldをリロードします
  sudo firewall-cmd –reload
(*)
  RaspberryPiにfirewalldがインストールされていない時
  sudo apt install firewalld でインストールします
  firewalldのコマンドなどについて、インターネット検索で沢山情報が
  ありますので、そちらを参考にしてください