WiMAX利用者がOpenVPNで自宅NASにアクセスするまで

# はじめに

ネットワークエンジニアでなくても自宅NASにアクセスできるようにした時のまとめを、個人的備忘録ついでに投稿します。

## 接続環境

| 項目 | 環境 |
| --- | --- |
| 自宅ネット環境 | WiMAX |
| WiMAX業者 | UQ WiMAX|
| ルーター | L01 Speed Wi-Fi HOME |
| NAS | Synology 218+ |
| VPNプロトコル | OpenVPN |
| VPN Client | OpenVPN GUI / OpenVPN Connect |

## 大まかな手順と前提

大まかには、ルーターの設定、NASの設定、PCの設定、Androidの設定と進む。
また、SynologyNASの基本的な設定はすでに完了していることを前提とする。

## ルータの設定

ルーターの設定は、Global IPアドレスの固定とポート開放に分かれる。

### Global IPアドレスの固定

ルーターにログイン後、プロファイルを設定を行うことにより、特に申し込等を行うことなく、Global IPアドレスが割り当てられる。

設定方法は[UQ WiMAX(`https://www.uqwimax.jp/plan/wimax/option/global_ip/`)](https://www.uqwimax.jp/plan/wimax/option/global_ip/)のウェブページを参照するとよくわかります。接続機器によって設定方法が異なるので、適宜必要なリンク先を参照する。
L01 SpeedWiFi HomeはHuawei製なので、[管理画面(```http://speedwifi.home/```)](http://speedwifi.home/) からログインする。
ログインPWは本体下の **初期ログインID/パスワード** に記載されている。

L01の場合、ログイン後、「設定」→「WAN設定」→「プロファイル設定」からAPN等の設定を行う。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/479f6ef4-a6c9-c1b0-278e-fc6399553f1a.png" width=70% alt="APN設定">

その後、「設定」→「WAN設定」→「接続設定」からプロファイルリスト **Global** を選択する。

参考までに、以下の通りプロファイルを設定するとすぐにグローバルIPアドレスが割り当てられる。

| 項目 | 設定内容 |
| --- | --- |
| プロファイル名 | Global(任意) |
| APN | wx2.uqwimax.jp |
| ユーザー名 | global@wx2.uqwimax.jp |
| パスワード | 0000(ゼロ4つ) |
| 認証タイプ | CHAP |
| IPタイプ | IPv4 |

Global IPアドレスが割り当てられると、「接続」→「接続ステータス」から確認できる **WAN IPアドレス(IPv4)** が変化する。画像の黒塗り部分が割り当てられたIPアドレスとなる。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/aae17d2d-c5d1-c933-1a73-74f312d9d8d4.jpeg" width=70% alt="Global IPアドレス">

### ポート開放

Global IPアドレスの取得と同じく、ルーターの設定画面より、各種設定を行う。
設定は「設定」→「ファイヤウォール設定」→「ポートマッピング」から行う。

今回はOpenVPNを使うので、以下の通り設定を行う。NASのIPアドレスは、アクセスしたいNASのローカルIPアドレス(通常は192.168.XXX.XXX)を入力する。セキュリティ対策等で、使用ポートを変更する場合は適宜ポートを変更する。
すべての項目を入力し終われば「Add」→「適用」と選択し、しばらく待つと設定が反映される。

| 項目 | 設定値 |
| --- | --- |
| 名前 | Synology_OpenVPN(任意に設定) |
| ステータス | オン |
| WANポート | 1194 |
| LANポート | 1194 |
| LAN IPアドレス | **NASのローカルIPアドレス** |
| プロトコル | UDP |

設定が終われば、仮想サーバリストに先ほど入力した設定値が列挙される。
IPSec関係のポートも表示されるが、今回とは別の話。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/677258d3-4b9c-4a0a-ca45-398361c8e59a.jpeg" width=70% alt="ポート設定">

## NASの設定

NAS上ではVPNサーバーを構築する。また、セキュリティ対策に、不要なサービスの停止や、不要なユーザー権限の停止を行う。
すべて、ブラウザ上から行う。

### VPNサーバーのインストール

パッケージセンターより、VPN Serverをインストールする。画像はインストール後の状態。
設定時のバージョンは1.3.9-2770。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/a71320f1-8bcf-1211-3379-24678d1d1168.jpeg" width=70% alt="VPNサーバーインストール">

### VPNサーバーの設定

以下の通り、OpenVPNの設定を行う。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/d726fb3b-1351-2850-f16b-d9e4cb8eb18b.jpeg" width=90% alt="OpenVPN設定">

ポート等を変更している場合はそれぞれ以下の通り対応するように設定を変更する。そのほか、VPN経由でNASのファイルにアクセスしたい場合は **クライアントにサーバーのLANにアクセスさせる** にチェックを入れる。

| ルーター設定 | NASのOpenVPN設定 |
| --- | --- |
| LANポート | ポート |
| プロトコル | プロトコル |

そのほかに、以下の設定を行った。

- **全般設定** で **新しく追加したローカルユーザーにVPN権を与える**のチェックを外す
- **特権** で各ユーザーの権限を最低限に変更する
- **OpenVPN** 以外のサービスの無効化

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/92f56d54-4b8c-8e9e-113e-ab3e84935350.jpeg" width=70% alt="権限設定">

最後に、「エクスポート設定」を選択し、設定ファイルをPCに保存する。ファイル名は **openvpn.zip**として保存される。

## 設定ファイルの編集

NASのVPNサーバの設定で保存した設定ファイル **openvpn.zip** を解凍し、その中にある **VPNConfig.ovpn**というファイルを開き、**YOUR_SERVERIP** に先ほどのルーターの設定で取得した　**WAN IPアドレス(IPv4)** を入力する。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/d4fb8235-9124-a353-4716-825fb545f730.jpeg" width=70% alt="設定ファイル">

## PCの設定

まずは、[OpenVPN.JP(`https://www.openvpn.jp/`)](https://www.openvpn.jp/)より、Windowsインストーラーをダウンロードする。設定時のバージョンは2.4.6。

インストールは[公式ドキュメント(`https://www.openvpn.jp/document/install-windows/`)](https://www.openvpn.jp/document/install-windows/)を参考に行う。

### OpenVPN GUIの設定

タスクトレイのOpenVPNのアイコンを右クリックして、 **Import File.....** を選択し、先ほど編集した **VPNConfig.ovpn** をインポートする。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/89e2863e-9652-b653-6331-1b66480acb11.jpeg" width=20% alt="WinClient">

### 接続テスト

公衆無線LANやスマホのテザリングを使うのが接続確認の確実な方法であるが、設定が正しく行われていれば、ローカル環境でもこの設定でVPN接続が可能となる。

OpenVPN GUIのアイコンを右クリックし、接続を選択。 **ユーザー名** と **パスワード** の入力を求める画面が出るので、NASにアクセスするための **ユーザー名** と **パスワード** を入力する。接続に成功すると、ロゴが変化する。 

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/a96322dd-5bcd-09cf-0914-9debf1b3644f.jpeg" width=50% alt="User">

次に、VPN接続ができた状態でエクスプローラから、NASにアクセスすると、NAS上のファイルがすべて見ることができる。
VPN接続ができているが、NASのファイルにアクセスできない場合、NASのOpenVPN設定で **クライアントにサーバーのLANにアクセスさせる** にチェックが入っていない可能性がある。

## Androidの設定

GooglePlayより[OpenVPN Connect `https://play.google.com/store/apps/details?id=net.openvpn.openvpn` )](https://play.google.com/store/apps/details?id=net.openvpn.openvpn)をインストールする。設定時のバージョンは3.0.5.。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/f27cb384-1d6c-0c01-a0b3-757d57680615.jpeg" width=70% alt="AndroClient">

インストール後、アプリを起動し、「OVPN Profile Connect with .opvn file」→「画面右下の`+`」と進み、先ほど編集した **VPNConfig.ovpn**を選択する。設定ファイルのインポートが完了すれば、 **Username** と **Password** をPCの設定と同様に入力する。設定のインポートが完了すれば、画像のように **OpenVPN Profile** の下にルーターの設定で取得した　**WAN IPアドレス(IPv4)**が表示される。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/10827a41-aa21-8877-bfec-7bae9367447a.jpeg" width=30% alt="AndroSS-1">

接続時に、 **Select Certificate** というメッセージが出るが、 **CONTINUE**を選択する。正常に設定が行われていれば、画像の **DISCONNECTED** が **CONNECTED**となり、下にグラフが表示される。

<img src="https://qiita-image-store.s3.amazonaws.com/0/198826/5c50ed16-b9e6-9123-bc2e-2393718dadbb.jpeg" width=30% alt="AndroSS-2">

## 2018年11月25日追記

以下の2つを参考に、SynologyのDDNS、mydns.meに登録を行った。固定Global IPを持たなくても、OpenVPN接続できるかと思ったが、どういうわけかうまくいかなかった。

https://nw.myds.me/synology/setup-ddns/

https://nw.myds.me/synology/setup-domain/

## 注意事項

- 同じWiMAXでも、UQ WiMAX以外と契約している場合はグローバルIP割り当てができない可能性がある
- WiMAXでGlobal IPアドレスを利用すると追加で約100円/月かかる
- SynologyのNASの設定、アカウント設定は完了していることを前提とする
- VPN対応NASでも、PPTP対応だが、OpenVPNには非対応という製品もある
- SynologyのNASがすべてOpenVPNに対応しているかは不明
- **参考** に挙げているウェブページにはSynologyのDDNSサービスを設定しているものもありますが、今回はGlobal IPアドレスを使って接続するため、スキップした
- ホスト名でアクセスしたい場合はDDNSサービスの設定をリンク先を参考に設定が必要

## 参考

### ルーター設定

- [UQ WiMAXでGlobal IPアドレスを取得する方法](https://www.uqwimax.jp/plan/wimax/option/global_ip/)
- [L01 SpeedWifi Home](https://www.akakagemaru.info/port/l01au-portfw.html)
- [Speed WiFi NEXT W04でポート開放ができない](http://bbs.kakaku.com/bbs/K0000939412/SortID=20819049/)

### Synology NAS設定

- [DiscStation Manager VPN Serverの設定](https://www.synology.com/ja-jp/knowledgebase/DSM/help/VPNCenter/vpn_setup)
- [Synology DS218j で VPN を構築する](https://qiita.com/mizutoki79/items/37e44eeb58fd69fb86b6)
- [Synology DS216j DDNSとVPN](http://jasmin.sakura.ne.jp/blog/0247)

### Windows設定

- [DiscStation Windows PCまたはMacを使ってSynology VPN Serverに接続するには](https://www.synology.com/ja-jp/knowledgebase/DSM/tutorial/Application/How_to_connect_to_Synology_s_VPN_Server_using_a_Windows_PC_or_Mac)
- [OpenVPNインストール方法](https://www.openvpn.jp/document/install-windows/)