自宅サーバにWireGuardをインストールしてみました。
本記事では、AndroidスマホでWireGuardを使って自宅サーバに接続する方法について解説します。
Contents
事前準備
インターネット上にWireGuardがサーバモードで立ち上がっていることが前提となります。
自宅サーバにWireGuardを導入する方法は以下の記事を参考にしてください。
上記の記事に沿ってWireGuardを導入した場合を前提に、解説していきます。
peer情報を端末にコピー
WireGuardのサーバ側で生成した秘密鍵と公開鍵の情報を端末にコピーします。
上記の記事したがってDockerでWireGuardを構築した場合、プロジェクト配下の./configにpeer情報が生成されています。
この中から、適当なpeer情報をディレクトリごと端末にコピーします。
1 2 3 4 |
ls -d ~/wireguard/config/peer* ~/wireguard/config/peer1 # ↑ # このディレクトリを端末にコピーする |
peer情報は、peerXという名前のディレクトリ配下に生成されています。
Xはdocker-compose.ymlで指定した、peerの名前になっています。
記事の通りに構築した場合、peer1というディレクトリになっているはずです。
このpeer1をsamba等を使って端末にコピーしておきます。
sambaにアクセスできるファイラ(アプリ)を使うと便利です。
本当に必要なのは、~/wireguard/config/peer1/peer1.confだけです。
Android端末からWireGuardを使う方法
ここからはスマートホン(Android端末)の操作になります。
WireGuardアプリをインストール
Google PlayでWireGuardアプリを検索し、インストールします。
中ニなロゴがWireGuardの目印です
peer情報の設定
WireGuardのアプリをインストールしたら以下のような画面になりますので、右下の⊕ボタンをタップします。
ここでメニューが出てきますので、「ファイル、アーカイブからインポート」を選択します。
左上の「三」をタップして、事前準備でダウンロードしたpeer1のディレクトリを参照します。
ここで、peer1.confをインポートすると、リストに「peer1」が出てきます。
peer1のトグルをonにすると、WireGuardで自宅サーバとのVPNが確立します。
分かりにくいですが、タスクバーにVPNのアイコンが出てきます。
使ってみて分かる通り、WireGuardの場合、OpenVPNに比べてVPNセッションの確立が非常に高速なのが体感できると思います。
ただ、これはVPNが確立されていなくてもアイコンが出てくるので、VPNアイコン=VPN確立済ではありません。
うまく行ったかが分かりづらいのは、このアプリの悪いところ。
(参考)QRコードでpeer情報をインポート
「QRコードのスキャン」を選択すれば、QRコード(peer1.png)でもインポートできます。
この際は、PCの画面にQRコードを映して、スキャンします。
QRコードでpeer情報をインポートすると、トンネル名(peer名)を聞かれるので適当な名前で登録すればOKです(トンネル名は後で変更できます)。
斬新!
VPN接続の確認
本当に自宅サーバとVPNが確立できているか、確かめてみます。
このとき、忘れずに端末のWi-Fiをオフにしてから、WireGuardアプリでVPN接続をします。
そして、自宅LAN内のEPGStationにアクセスしてみます。
自宅LAN内のEPGStationが見れました。
つまり、WireGuardで自宅サーバとのVPN接続に成功しています。
うぉ!いけた。
これで、外出先から自宅の共有フォルダにアクセスできるようになりました。
うまく行かないとき
ルータのfirewallで外からの51820/udp通信を許可しているか確認してみてください。
私です
まとめ
AndroidのWireGuardアプリを使って自宅サーバとVPN接続する方法について記事にしてみました。
実際に使ってみて分かったのは、WireGuardが非常に高速だということ。
暗号強度については正直分かりません。
使用感についてはまだまだ発展途上のアプリですが、今後の改良に期待といったところでしょうか。
何よりも、画面を見てVPNが確立されているのかどうかが分からない(VPNアイコンがとりあえず表示される)のは使っていてストレスが溜まりそうです。
OpenVPNのアプリの秀逸さが際立ちましたね。
参考になれば幸いです。
コメント