MyEnigma

とあるエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

Raspberry Pi上にSoftEtherを使って無料でVPNサーバを立てる方法

ハッカー御用達!魔法のソフトウェアガイドブックSoftEther入門

ハッカー御用達!魔法のソフトウェアガイドブックSoftEther入門

目次

はじめに

先日、

Raspberry Pi 3を購入し、

設定した記事を書きましたが、

今回は、家のローカルネットワークに

安全に繋がるために、

家の中のRaspberry PiにVPNサーバを立てて、

接続してみましたので、

その方法をメモとして残しておきます。

 

使用するツール

使用するハードウェアは、

Raspberry Pi3です。

 

初期設定は、下記の記事を元に実施しています。

myenigma.hatenablog.com

 

また、外部から

家の中のRaspberry Pi VPNサーバに繋がるには、

ポートフォワード設定に対応したルータを使用する必要があります。

 

使用するソフトウェア

VPNのサーバ用のソフトウェアとしては、

無料で高性能であると有名な、

SoftEtherを利用します。

SoftEther VPN プロジェクト - SoftEther VPN プロジェクト

 

Raspberry Piへの、

SoftEtherのソースコードの転送は、

Macの無料sftpクライアントであるCyberduckを使いました。

Cyberduck | Libre FTP, SFTP, WebDAV, S3, Backblaze B2 & OpenStack Swift browser for Mac and Windows

 

1. Rasberry PiへのSoftEtherのインストールと起動設定

基本的には下記の記事の方法でOKです。

qiita.com

7.3 Linux へのインストールと初期設定 - SoftEther VPN プロジェクト

 

しかし、上記の記事ではVPNサーバのアカウント作成などは、

WindowsのGUIツールを使っているので、

途中まで参考にさせて頂きました。

 

下記はコマンドのメモです。

(sshでログインした後のコマンドです)

$ sudo apt-get update

$ sudo apt-get upgrade

下記のコマンドは、インストールするOSの応じて、

下記のリンクからソフトウェアのリンクを設定します。

SoftEther ダウンロード センター

$ wget http://www.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Linux/SoftEther_VPN_Server/64bit-Intel_x64_or_AMD64/softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz

$ tar zxvf softether-vpnserver-v4.14-9529-beta-2015.02.02-linux-arm_eabi-32bit.tar.gz

$ cd vpnserver

$ sudo make

$ cd ..

$ mv vpnserver /usr/local

$ cd /usr/local/vpnserver/

$ chmod 600 *

$ chmod 700 vpncmd

$ chmod 700 vpnserver

 

最後に/usr/local/vpncmdを起動して、

3番の選んで、checkコマンドを入力すると、

インストールしたシステムのテストをしてくれます。

すべての項目でエラーでないことを確認します。

 

2. VPNサーバのアカウント作成

Windowsはサーバ管理用のGUIソフトがあるみたいですが、

Macには無いので、下記の記事の通り、

CUIでアカウントの設定をします。

qiita.com

 

上記のアカウント設定ができれば、

ローカルからのVPN接続は次のステップの方法で

できるはずです。

 

3. LANからのMacからの接続

下記のマニュアル通りでOKでした。

 

4. ルータのポートフォワーディングを設定

SoftEtherは、VPNとして、

L2TP over IPsec、EtherIP over IPsec を使用する場合

UDPの500番のポートと、

UDPの4500番のポートを使用します。

 

そこで、外部のネットワークから

Raspberry PiのVPNサーバに接続するためには、

上記のポートのデータを、

ルータからRaspberry Piに転送(ポートフォワーディング)

する必要があります。

 

設定の方法は、

使用しているルータのマニュアルを参照して

頂きたいですが、

ルータによってはポートフォワーディング機能が無い

ものもあるため、注意しましょう。

 

自分はGoogle Wifiを使っているので、

スマホのアプリで簡単にポートフォワーディングの

設定ができました。

 

5. 外部からのネットワークでのVPN接続確認

最後に外部からのネットワークの接続を確認します。

ルータのグローバルIPを調べて、

外のネットワークや、テザリングなどを介して、

VPN接続してみましょう。

ローカルから接続した時と比べて、

IPアドレスだけを変更すれば接続できるはずです。

 

クラウドにVPNサーバを立てる方法

上記の方法で、Raspberry Pi上にサーバを立てることができますが、

日本の何処かでRaspberry Piを起動しっぱなしにする必要があります。

そもそもグローバルIPを得るのが難しい場合もあります。

 

そこでクラウドのVPSサーバにVPNサーバを立ててみました。

詳しくは下記の記事を参照下さい。

myenigma.hatenablog.com

 

参考資料

30分あれば出来る、RaspberryPIでVPNサーバー構築(IPSec/L2TP Raspbian編) - Qiita

7.3 Linux へのインストールと初期設定 - SoftEther VPN プロジェクト

qiita.com

qiita.com

qiita.com

Raspberry Pi VPN Router · GitHub

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

http://xn–u9j0md1592aqmt715c.net/raspberry-pi2-vpnserver-part2/

http://xn–u9j0md1592aqmt715c.net/raspberry-pi2-vpnserver-part3/

qiita.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

ハッカー御用達!魔法のソフトウェアガイドブックSoftEther入門

ハッカー御用達!魔法のソフトウェアガイドブックSoftEther入門

 

MyEnigma Supporters

もしこの記事が参考になり、

ブログをサポートしたいと思われた方は、

こちらからよろしくお願いします。

myenigma.hatenablog.com