DiskStation DS220j で VPN Server 構築
DiskStaion DS220jのVPNサーバーアプリを導入して、外にいる時でも自宅のネットワークにセキュアな接続ができる環境を構築してみたいと思います。
VPNの設定に関しては10数年前にはなりますが、現行のプロバイダーを使って自前のルーター上で設定して利用した経験があります。 その後ルーターなど全てのネットワーク機器が世代交代して現在はVPNを利用していません。
しかし現在でもたまに家のNASに保存してあるファイルに外からアクセスしたくなる事はあり、NASを新調したタイミングでVPNサーバーの構築をしてみる事としました。
VPNのプロトコルは下記のサイトで薦めている OpenVPNを利用します。
DiskStationでVPNサーバーを構築し、OpenVPNのクライアントインストールを詳しく説明している複数のサイトを参考にさせてもらいました。
行った設定手順としては以下の通りです。
- VPNサーバーのインストール & OpenVPN セットアップ
- ルーターのポートフォワーディング設定(又はポートマッピング設定)
- VPN設定ファイルの書き換え作業
- クライアント VPNアプリのインストール準備
- 設定上の注意事項のまとめ
VPNサーバーのインストール & OpenVPN セットアップ
ではVPNサーバーのインストールから始めたいと思います。
DS220jのパッケージセンターから VPN Server をインストールします。
以下の画面になります。
OpenVPNを選びます。
「OpenVPN サーバーを有効する」にチェックを入れて、設定作業を進めます。
「ダイナミックIPアドレス」、「最大接続数」、「アカウントの最大接続数」はデフォルトのままにします。
「ポート」に関してはデフォルトの1194 でも問題はありませんが、セキュリティを考えて変更した方が良いかもしれません。 (実際のポート番号は違う番号に変更してあります)
「プロトコル」、「暗号化」、「認証」もデフォルトのままでOKです。
「VPNリンクで圧縮を有効にする」はONのままでOK. 「クライアントにサーバーのLANにアクセスさせる」は今回の利用目的として必要ですのでチェックを入れて下さい。
残りの設定項目はデフォルトのままでOKです。
最後に「適用」ボタンを押して設定します。
以下の画面が表示されます。
利用中のルーターに下記のポートを通すように設定しなさいという意味です。
「OK」ボタンを押すと 「エクスポート設定」ボタンが押せるようになります。 クライアント側で使う設定ファイルをエクスポートします。
ルーターのポートフォワーディング設定(又はポートマッピング設定)
次にお使いのルーターにポートフォワーディング設定(又はポートマッピング設定)を行います。 お使いのルーターによって設定方法が異なりますので、詳細の設定方法はお使いのルーターの取扱説明書等で確認下さい。
設定に必要な情報としては
です。
プロバイダーからレンタルしているルーター (HG8045Q) には以下の様に設定しました。
DDNSの設定
インターネット側からアクセスする為に動的に変動する外部IPアドレスに固定のホスト名を紐づけするサービスですが、 Synology NAS を利用しているユーザーであれば SynologyのDDNSを利用可能です。
DS220jのコントロールパネルの外部アクセスをクリックします。
DDNSタブで追加を選択します。
追加ボタンを押すとDDNS登録に必要な入力画面が表示されます。
サービスプロバイダーは Synology以外にもプルダウンから選択できます。
ホスト名にはすでに存在しないホスト名を入力する必要があります。
ユーザー名には Synology アカウント名
パスワード/キー には Synology アカウント用のパスワード
VPN設定ファイルの書き換え作業
次に「VPNサーバーのインストール & OpenVPN セットアップ」の最後で「エクスポート設定」で出力したファイルが MACの場合ダウンロードフォルダに保存されています。
「VPNConfig.ovpn」をテキストディター等で開きます。
下記2箇所「YOUR_SERVER_IP」を DDNSで設定したサーバー名にし、ポート番号はすでにVPNサーバー設定の際に入力したものが記載されている事を確認の上で保存して下さい。
クライアント VPNアプリのインストール準備
次にクライアントの設定になります。 今回は iPhoneのIOS での設定でご説明しますが、iPadも基本設定方法は同じかと思います。
OpenVPN Connect というアプリをダウンロードします。
先ほど編集した設定ファイルをiPhoneにコピーする為にMACにiPhoneを接続します。 MAC側の設定さえ済んでいれば、WiFi経由でファイルをコピーする事も可能ですし、ケーブル接続なら確実かと思います。
macOS のFinderで、該当するiPhoneのマークをクリックします。 上のメニュータブから「ファイル」をクリックするとインストール済みのOpenVPNが表示されます。
先ほど編集した「VPNConfig.ovpn」ファイルを「OpenVPN」の場所にドラッグ&ペーストでコピーします。
最後に「設定上の注意まとめ」で記載しますが、 上記 VPNConfig.ovpn 以外にも一緒にエクスポートされた2つの証明書ファイルもiPhoneにコピーしておきます。
参照したサイトの説明では VPNConfig.ovpnのみをiPhoneにコピーしている様に説明がされているのですが、私の場合はそれではVPN接続時にエラーが表示されました。
コピーが完了したら、OpenVPNクライアントをiPhone上で起動します。
するとコピーしたファイルを追加する為に「ADD」をクリックします。
すると以下の画面になるので、
Username & Password を入力します。 ここで入力するUsername は DiskStation のファイルにアクセス件が与えられているUsername でOKです。
「Connect after import」にチェックを入れると、設定完了後に自動でVPN接続を行います。
以下のメッセージが表示されますので、「許可」を選んで進めます。
VPN構成を追加する為にiPhoneのパスコード入力が求められます。
さらに次の画面では、接続が行われて成功すると以下の様な画面が表示されます。
設定上の注意事項のまとめ
じつは、OpenVPN設定に関していくつか苦労した点がありました。
エラー1 グローバルIPアドレス
1つは プロバイダーとの契約で、グローバルIPアドレスが割当されている必要があります。
以前、別のVPN設定を行った事があってその時にグローバルIPアドレスが割り当てされている事は確認済みだったので、 今回はその点は気にしなくて良いと思っていたのですが 数年前にケーブル回線契約だったものを光回線に変更していて、その時にグローバルIPアドレスからローカルIPアドレスへと変更されていた事が判明しました。
それに気が付くまでは OpenVPN Connect アプリでVPN接続しようとすると以下のメッセージが表示され続けました。
エラー2 SSLファイルも併せてコピー
次にプロバイダからGlobal IPアドレスの割り当てに変更されると、メッセージが変わりSSLに関連したエラーが表示されました。
そういえば、DiskStationのVPN設定画面から出力されたファイルの中に、設定ファイルと証明書ファイル (*.crt)がありました。
iPhoneにコピーしたのは設定ファイルのVPNConfig.ovpn のみだったのですが、拡張子が .crtのファイルも併せてiPhoneにコピーしました。
これにより問題が解決し、OpenVPNでの接続が可能となりました!