SoftEther VPNを使ってみた


softeatherVPNというものがオープンソース化されました

外部から自宅LAN内に接続する際のVPNの構築が

簡単そうなので、ちょっと興味を持ったのでやってみた。

以下、メモ書き

2014/8/17 自動起動について追記

2014/10/05 更新する際は、そのまま上書きでインストールすれば、更新されるようです

2016/01/10 自動起動について追記

2016/05/08 自動起動とカードリーダについて追記

epgrecとか使用する予定の人は、先にカードリーダ関係を入れてから設定しないと

依存関係で面倒くさいことになるので注意

 

OpenSSHのインストール

$ sudo tasksel

OpenSSH serverを選択してインストール

1 必要なパッケージのインストール

$ sudo apt-get install gcc make binutils chkconfig libc-dev zlib1g-dev openssl libreadline-dev libncurses-dev  #gitから入れるので多分、これはいらない chkconfigは使われていないので入らないと思う

$ sudo apt-get install git build-essential libreadline-dev libssl-dev libncurses5-dev

2 softeatherVPNの導入

$ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git

$ cd SoftEtherVPN

$ ./configure

Welcome to the corner-cutting configure script !

Select your operating system below:
1: Linux
2: FreeBSD
3: Solaris
4: Mac OS X
5: OpenBSD

Which is your operating system (1 – 5) ? : 1  # Ubuntuなので 1を選択

Select your CPU bits below:
1: 32-bit
2: 64-bit

Which is the type of your CPU (1 – 2) ? : 2  # 64bitなので2を選択

The Makefile is generated. Run ‘make’ to build SoftEther VPN.

$ make

$ sudo make install

$ sudo vpnserver start   #Serverの起動をしておく

($ sudo vpnserver stop)で、停止らしい

 

3 softeatherVPNを使う

設定は、Windows用サーバー管理ツールをを使う方法が一番簡単らしい。

softeather ダウンロードセンター から、SoftEther VPN Server Manager for Windows を選択

softether-vpnserver_vpnbridge-v4.05-9423-beta-2014.02.18-windows-x86_x64-intel.exe をダウンロードした

SoftEther VPN Server Manager for Windowsをインストールする際は、管理マネージャのみのインストール

サーバーの設定

1. 接続設定

「新しい接続設定」をクリック

「接続設定名」に任意の名称を入力

「ホスト名」は VPN サーバーの IP アドレスを入力

「ポート番号」は 443(HTTPS)

入力が終わったら「OK」

「ログイン」画面でパスワードを入力せずに「OK」しているので、

「管理者パスワードの設定」になる ここで管理者パスワードを入力

これでサーバー管理マネージャに接続できるはず

2. 簡易セットアップ

VPN サーバーの設定

初めて設定する時は簡易セットアップ画面が表示されるはずなので、

「リモートアクセス VPN サーバー」を選択

3. 仮想 HUB 名

クライアントはこの仮想 HUB に接続する 好きにつけて良い

4. ダイナミック DNS 機能

特に変更無し

5. IPsec/L2TP/EtherIP/L2TPv3 サーバー機能

Androidからの接続用に「L2TP サーバー機能を有功にする (L2TP over IPsec)」にチェックを入れて、

「IPsec 事前共有鍵」を設定します。

6. VPN Azure クラウド

「有効にする」を選択して「OK」します。

7. ユーザーの作成

ユーザー名とパスワードを設定します。認証方法は「パスワード認証」

必要数だけ作成

8. ローカルブリッジの設定

VPN サーバーからサーバー側の LAN にアクセスするために、仮想 HUB と物理的な LAN カードをブリッジ接続

LAN カードは eth0 を選択します。

9. 簡易セットアップと設定箇所

「閉じる」をクリックすると簡易セットアップが終了

サーバー管理マネージャを終了

 

クライアントの設定

1 仮想LANカードの作成

「接続」→「接続設定の新規作成」

「仮想 LAN カードを作成しますか?」と聞かれるので「はい」をクリック

仮想 LAN カードに好きな名前を入力して「OK」 面倒なのでデフォルト

2 接続設定

仮想 LAN カードが作成されたら、もう一度「接続設定の新規作成」を選択

「新しい接続設定のプロパティ」画面が開くので、「接続設定名」に任意の名称を入力

「ホスト名」は VPN サーバーのダイナミック DNS ホスト名を入力

「ポート番号」は デフォルトのまま(443)

「仮想 HUB 名」を開くと、 ホストを検出できればサーバー側で設定した仮想 HUB 名が表示されるので選択

「ユーザー認証」の「認証の種類」は「標準パスワード認証」、「ユーザー名」と「パスワード」を設定

「OK」をクリックしてプロパティ画面を閉じます。

3. VPN 接続の開始

作成した接続設定名を右クリックして「接続」を選択すると、VPN サーバーに接続

接続の終了は、接続先名を右クリックして「切断」を選択します。

 

自動起動の設定は、init.dへの記述が必要です

7.3 Linux へのインストールと初期設定を参照すると、記載があるので、その通りやる

自動起動の設定(シェルスクリプト)

sudo gedit /etc/init.d/vpnserver

#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther Server
DAEMON=/usr/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case “$1” in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo “Usage: $0 {start|stop|restart}”
exit 1
esac
exit 0

パーミッションの変更

$ sudo chmod 755 /etc/init.d/vpnserver

シェルスクリプトに実行権限の付与

$ sudo chmod +x /etc/init.d/vpnserver

chkconfigの代わりに「sysv-rc-conf」というのが用意されているので、インストール。

$ sudo apt-get install sysv-rc-conf

sysv-rc-confに登録

$ sudo sysv-rc-conf vpnserver on

vpnserver を on にする

$ sudo sysv-rc-conf vpnserver on

$ sudo sysv-rc-conf –list vpnserver

vpnserver    2:on    3:on    4:on    5:on

vpnserver を起動

$ sudo /etc/init.d/vpnserver start

再起動して自動起動されているかを確認

$ ps aux | grep vpnserver

3行くらい出てくればOK

SoftEther VPN Server Manager で、接続できればOK

 

ルータの設定

静的IPマスカレード設定

https :
500/udp :
1701/udp :
4500/udp :

これらを、サーバーに通すように設定する

 

Androidの設定

ルータの設定がきちんと出来ていれば、普通に設定すればVPNで接続できるはず

 

2/28 追加

SoftEtherVPNの設定 追加 参照

Leave a comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


 

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)