DS216JでOpenVPN環境を構築する

2018年5月18日

VPNなんてルーターに環境つくればいいんじゃいという方も中にはいるとは思いますが、私のようにIP電話利用のためにルーターをプロバイダーからレンタルしているような場合や、そもそも利用しているルーターに目的のVPNプロトコルがない場合、のっぴきならない事情をお持ちの方などいると思います。
そんな事情がおありの方々のために、DS216JはNASでありながらVPNサーバー環境も提供してくれるスグレモノです。
しかもOpenVPNが選択できるのがポイント高い。IPsecやL2TPじゃ安全性に問題がありますからね。
自分の環境だけかわかりませんが、iPhoneの標準機能のVPNだと常時接続ができないんですよね。スリープからの復帰で再接続不能に陥る。前に試してからそれっきりなんで今改善されてるかはわかりませんが。。その点OpenVPNはiOSアプリを提供しており、必要十分なUIでなんといっても常時接続ができており、満足です。
なお、VPNを構築するにあたって、グローバルIPアドレスが固定された環境または、DDNS(ダイナミックDNS)が導入済みの環境が必要です。
ところで、私の家の回線がauひかりなんですが、IPアドレスがずっと変わりません。

一応、動的IPという体裁のようですが、今もIPアドレスは変わったことがありません。ルーター及び回線終端装置の電源をしばらく落としたとしても。
さすがに何日も落としたことはないですが。
私の場合はたまたま契約してから気づいたのですが、自宅にサーバー機器を置いたり、VPNを構築する機会があったので、結果的によかったという話でした。
固定IPをプロバイダに申し込もうとすると、月額千円以上かかってしまいますからね。DDNSという選択肢はありますが、なるべくなら不要なソフトは入れないほうが良いわけで。

以下、ds216jでOpenVPNを設定する方法。

DS216J側の設定

まず管理画面を開きます。
たぶんいないとは思いますが、DS216JをDHCPの設定にしている人はIPアドレスを固定にしてください。
コントロールパネル→ネットワークインターフェース→LAN→編集→IPv4→手動で設定する

↑設定例ですが、ゲートウェイとIPアドレスは各家庭で設定されているものを設定してください。

パッケージセンターからユーティリティ→VPN Serverを見つけてインストール。
VPN Serverの画面に入ります。
OpenVPNの項目に入り、OpenVpnサーバーを有効にするにチェックを入れます。
後の項目は基本的にそのままで良いと思いますが、セキュリティ意識の高い方は使用ポートを1194以外に設定すると幸せになれます。そんなのどうでもいいよって方はそのままで。


適用を押して設定完了。

ルーター側の設定

VPNプロトコルを利用して外と通信する場合、そのままではVPNサーバーと外の世界とが遮断されている状況なので、設定が必要です。
私のルーターで説明します。覚えてませんが確かこんなやつ↓

ルーターの管理画面にログイン。
まず、ポートマッピングの設定です。
詳細設定→ポートマッピング設定の順に入ります。
別なルーターの方はそれっぽいやつに入ってください。きっと似たような名前で同等の項目があるはずです


「LAN側ホスト」・・・DS216JのIPアドレスです。
「プロトコル」・・・UDP
「ポート番号」・・・1194(変えた方は変えた番号に)
これで、内から外への経路が確立されました。

次に、ルーティング設定に入ります。

「宛先IPアドレス」・・・10.8.0.0/24
「ゲートウェイ」・・・DS216JのIPアドレス
これで、外から内への経路ができました。

それぞれ設定して、ルーターを再起動。

設定ファイル

DS216Jの管理画面で、VPN Server→OpenVPN→エクスポート設定
で、opvn設定ファイルがダウンロードできます。

  • ca.crt(証明書)
  • VPNConfig.ovpn(openvpn設定ファイル)

ダウンロードしたら↑のファイルがそれぞれあると思うので、VPNConfig.ovpnをメモ帳等でひらきましょう。
remote YOUR_SERVER_IP 1194
YOUR_SERVER_IPをグローバルIPアドレス、またはDDNSのFQDNに変更してください。
先の手順でOpenVPNのUDPポートを変更された方は、1194をその値に変更しましょう。
あとはデフォルトで問題ないハズ。

手順は割愛しますが、設定した証明書と、設定ファイルをクライアント端末で設定します。以上。

余談

お気づきの方はいると思いますが、私の自宅のゲートウェイのIPアドレスの第3オクテットが1以外のものに設定されています。
これは、自宅のゲートウェイのIPアドレスを192.168.1.1に設定した状態でVPNサーバーを立てた場合に、
別の家の回線につないだ時にもしそこの家のゲートウェイのIPアドレスが192.168.1.1だった場合に競合が起きます。

このままの状態で使うとインターネットでの通信がVPN経由にならないので、必要な場合はredirect-gatewayの設定をします。
DS216Jにssh接続をし、ルートユーザーで

一番上に

を追記してVPNを再起動します。

この設定はクライアントのゲートウェイをVPNサーバーに切り替えるもので、インターネットの経路がVPNサーバー経由になるので、場合によってはインターネットの速度低下につながります。

追記:
当記事で扱ってるSynologyNASのOpenVPNの認証方法はクライアント証明書を使用しない認証方法=プラグイン認証(ID/PW認証)となっています。
そのため、ユーザー名、パスワードが第三者に流出するとVPN接続される恐れがあります。

これはSynologyの提供するVPN Serverの元々の設定となっており、DSMのメニューからは設定の項目自体が無いようです。
そのため、もし証明書認証を利用したい場合は自身でクライアント証明書を作成してNASのopenvpn.confを直接編集することになると思います。

記事にしました!設定方法はこちら