Home Made Garbage

Raspberry Pi & SoftEther VPN で中国ネット規制回避

ホーム
電子工作
Raspberry Pi
WordPress
IOT

お父ちゃんが中国に出張に行く際、ネット規制を回避するため、このブログを運用中のRaspberry Pi 2 サーバ に VPNを構築しました。

こちらを参考にさせていただきました。
(インストール〜スタートアッププログラム登録まではほぼそのままです)

インストール

DL

SoftEther ダウンロード センター で下記を選択します。

  • ダウンロードするソフトウェアを選択:SoftEther VPN(Freeware)
  • コンポーネントを選択:SoftEther VPN Server
  • プラットフォームを選択:Linux
  • CPUを選択:ARM EABI(32bit)

「ダウンロード可能なファイル」から最新のものをDLします。

解凍

解凍したディレクトリに移動

Make

英語で使用権許諾契約書関連のメッセージが出てきます。すべて「1」を選択して完了させます。

VPN Server の配置

完了したら、解凍で生成された vpnserver ディレクトリを /usr/local/ ディレクトリに移動します。ここからはrootで行う必要があるそうです。

ルートになる

ディレクトリを移動

権限の変更

check コマンドで動作確認

下記のメッセージが表示されます。

「3」 を入力して Enter します。

「check」 を入力して Enter すると、チェックツールが実行されます。

スタートアップスクリプトの登録

新規ファイルを開きます。

下記を入力します。冒頭でも記載した「30分あれば出来る、RaspberryPIでVPNサーバー構築(IPSec/L2TP Raspbian編) – Qiita」のプログラムをそのまま使用させていただきました。

権限を変更します。

この後 chkconfig コマンドを使うのですが、入っていなかったのでインストールしました。

起動設定を有効にします。

設定を確認します。

下記の表示が出たらOKなようです。

vpnserver の起動/終了/再起動

起動

終了

再起動

SoftEther VPN Server の設定

セットアップ・設定は、Mac や Windows などの他のPCからGUIで操作できる「VPN サーバー管理マネージャ」があります。

DL〜設定まで、こちらのページ「Raspberry Pi でSoftEther VPN 1.0 RC2を試す | よもやま雑記帳」の通りに行うことで、VPN接続することが出来ました。

その後、いろいろ弄って接続出来なくなってしまったり、インストールをやり直したりしたので、勉強がてらコマンドラインで設定しました。

コマンドライン管理ユーティリティ

マニュアル:
コマンドライン管理ユーティリティマニュアル – SoftEther VPN プロジェクト

管理ユーティリティを起動

管理モードを選択するメッセージが表示されるので、「1」を選択します。

接続先は localhost なので、空のまま Enter します。

サーバー管理モードで入るには、空で Enter します。

コマンド入力出来る状態になります。

コマンド一覧

「Help」まはた「?」と入力すると、コマンド一覧が表示されます。

コマンドの入力は大文字/小文字を区別しません。また、一部を入力することで自動補完してくれる機能があるそうです。

1. 仮想ハブの作成

仮想HUBを作成するコマンドを入力します。

名前とパスワードを設定します。

作成したハブへ入ります。

プロンプトにハブ名も表示されます。

2. ユーザの設定

ユーザを作成します。
UserCreate コマンドを入力し、ユーザ名を設定します。その他の項目は未設定(空のままEnter)でも大丈夫です。

「UserPasswordSet」コマンドで、ユーザのパスワードを設定します。(他にも認証方法があります。)

3. ローカルブリッジの作成

「BridgeCreate」 コマンドでローカルブリッジを作成します。

使用できるデバイスは「BridgeDeviceList」コマンドで確認できます。

4. IPsec VPN サーバー機能の有効化

Android から接続したいので、 IPsec VPN サーバー機能を有効化します。

仮想ハブが選択されている状態だと、「エラーが発生しました。(エラーコード: 52)権限が不足しています。」というエラーが出ます。その場合、「exit」 で一旦 vpncmd を終了させ、入りなおしています。ハブの選択はせずに、VPN Server 全体の管理権限がある状態で設定を行います。

SecureNAT 機能

SecureNAT 機能をONにしないと接続できないという情報もあるようです。私の環境では大丈夫でした。このあたり勉強不足ですが、ONにしているとパケットが大量に通信されるような状態になったりしたので、一旦オフにしました。

ルータの設定

UDPの500と4500ポートを開放します。

ルータのポート開放についてはこちらの記事もあります。

HUMAX HG100R-02JG の ポート開放設定

Android 5.1 からの接続

同一LAN上では接続出来ないので、Wi-Fiを切って4G回線でテストします。

  1. 設定 > もっと見る > VPN
  2. 右上の「+」で新規作成する
  3. 適当な名前をつける
  4. タイプ:L2TP/IPSec PSK
  5. サーバーアドレス:URL
  6. IPSec事前共有鍵:設定したパスワード
  7. 「保存」
  8. 保存して、作成した接続をタップ
  9. ユーザ名とパスワードを入力し、「アカウント情報を保存する」にチェックを入れ、「接続」

上海にて

中国出張時、Wi-Fiで無事接続出来たようです!😊

 

#Shanghai

Home Made Garbageさん(@homemadegarbage)がシェアした投稿 –

メモ

  • ポートを開けたり閉じたりして実験していたのですが、ポートを閉じた直後は何故か Android からVPNに接続が出来てしまうようでした。
  • 何もしていなくて結構パケット通信していることに気づきました。今までパケットの事を気にかけた事が無かったので、ちょっと驚きました。
  • VPNで、サーバ自身にアクセスするには更に設定が必要なようです。
    Softether VPNと仮想ブリッジの設定 – かひわし4v1.memo

参考にさせて頂きました

コメントを残す

メールアドレスが公開されることはありません。コメントのみでもOKです。

TOP