2017年8月27日日曜日

OpenVPN のセットアップ

先日、TP-LINK Archer C1200というWiFiルーターを購入しました。こいつはVPNサーバーになることができるので、公共のWiFiスポットなどのいまいち信頼性に欠けるようなネットワークを利用する場合でもVPNを使用して安全に通信をすることができます。

では、早速セットアップしていきます。
VPNの前にDDNSをセットアップします。IIJmioひかりは固定IPではないのでIPアドレスが変わる可能性があります。DDNSを設定しドメインネームでアクセスすれば、IPアドレスが変わっても名前解決できるので便利です。DDNSの説明はここら辺見ておくとわかりやすいかも。C1200が対応しているDDNSサービスは、TP-LINK自身が提供しているDDNSとNO-IPDynDNSの3つです。今回はTP-LINKのものを使ってドメインを登録しました。

Archer C1200自身は、OpenVPNとPPTPという2つのVPN方式に対応しています。

VPNプロトコル比較表
https://jp.giganews.com/vyprvpn/compare-vpn-protocols.html

PPTPはかなり古くからあるVPN方式で、どのOSでも標準で対応しています。しかし、古いために脆弱性も存在しており、iOSはiOS10でPPTPの対応をやめてしまいました。OpenVPNはPPTPと比較して安全ですが、OS標準で対応されていることはあまりなく、別途クライアントを導入する必要があります。iPadを使っていることもあり、今回はOpenVPNをチョイスします。
C1200の設定画面でVPNサーバーのOpenVPNページでVPNを有効にし、証明書を生成してダウンロードします。
ダウンロードしたOpenVPN-Config.ovpnファイルをテキストエディタで開き、赤線のIPアドレスの部分をDDNSで登録したドメイン名に書き換えます。これでIPが変わるたびにovpnファイルを変更する必要がなくなります。

グーグルのプレイストアからOpenVPNクライアントをダウンロードインストールします。

OpenVPN Connect
https://play.google.com/store/apps/details?id=net.openvpn.openvpn

また、OpenVPN-Config.ovpn ファイルを Android スマホに移動します。私の場合は、ファイル共有経由で受け渡しをしました。
右上の縦3点からImport Profile from SD Cardを選択し、OpenVPN-Config.ovpnファイルを読み込みます。
読み込みができたら、あとは Connect ボタンを押すだけ。正常に接続できればステータスが表示されます。
実際に確認してみると、OpenVPNを接続せずに確認くんのページにいくと、リモートホストがIIJmioモバイルのvmobile.jpが表示されます。OpenVPNを接続して再度同じページを見ると、IIJmioひかりのiij4u.or.jpがリモートホストになりました。AndroidスマホとWiFiルーター間が OpenVPN によって暗号化された通信を行い、自宅のルーターからインターネットを参照していることがわかります。