2018年11月5日月曜日

Raspbian Stretch にSoftEther VPNをインストールするときのメモ

Raspberry PiをVPNサーバーにしようと思い、以下の記事を参考にしてSoftEther VPNをインストール・設定しました。

http://xn--u9j0md1592aqmt715c.net/raspberry-pi2-vpnserver-part1/

RaspbianがJessieの時は、この記事のとおりで大丈夫だったのですが、Stretchになってからうまくいきません。そこで以下2点の改良を加えることで問題を解決しました。


1点目
ブリッジの設定です。以下の様に設定しました。

$ sudo nano /etc/network/interfaces
iface eth0 inet manual 
auto br0
iface br0 inet manual
bridge_ports eth0
bridge_maxwait 10

$ sudo nano /etc/dhcpcd.conf
interface br0
static ip_address=192.168.1.50/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8 192.168.1.1

Jessieの時は、/etc/network/interfaces にIPアドレス等を記述したものですが、Stretchではエラーになります。必ず、/etc/dhcpcd.conf の方に記述します。もちろんIPアドレス等の設定値は環境に合わせて変更してください。static domain_name_servers はGoogleのDNS 8.8.8.8 を使うのが良い様です。


2点目
SoftEther VPNを自動起動させる。

1点目の改良だけではVPN接続ができません。試行錯誤の結果、Raspbianの起動後に
$ sudo /etc/init.d/vpnserver start
を実行すれば良いことがわかりました。でもそれでは不便です。

私はLinuxに詳しくないので、おかしなことをしてるかもですが、以下の様に設定して解決しました。


以下の様なスクリプトを作成します。
$ sudo nano softethervpn.sh
#!/bin/sh 
sudo /etc/init.d/vpnserver start

スクリプトに実行権限を与えます。
$ chmod +x softethervpn.sh


crontabを編集します。
$ sudo nano /etc/crontab
(一番下に以下を記述します)
@reboot                  root    /home/pi/softethervpn.sh


設定は以上です。最後にシステムを再起動します。
$ sudo reboot


これで問題なくVPN接続ができる様になりました。
終わり