−25%

Windows 年払い、10月31日まで。 プランを見る

EQVPS

VPS に OpenVPN サーバーを構築する方法

openvpn-install スクリプトで Ubuntu や Debian に自分の OpenVPN サーバーを立てます。UDP 1194 か TCP 443、クライアントファイル、アクセスの失効、WireGuard との比較。

最近は WireGuard が注目を集めていて、それも当然です。それでも OpenVPN にはまだ出番があります。TCP の 443 番ポートで動かせ、ルーターや企業向けクライアントに組み込まれていて、UDP ベースの VPN が遮断されるネットワークでも通ることがあります。そんな状況なら、動くサーバーまでの最短で確実な道のりはこうです。

必要なもの

1. インストールスクリプトを実行する

認証局、鍵、ルーティングを手作業で用意すると午後がまるごと潰れます。angristan による定番スクリプト openvpn-install なら一度で済みます。ダウンロードして、実行する前に中身を読んでください。ネットワーク設定を書き換えるシェルスクリプトなので、何をするのか把握しておくべきです。

curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
less openvpn-install.sh
sudo ./openvpn-install.sh

スクリプトはいくつか質問してきます。妥当な答えは次のとおりです。

最後に最初のクライアントファイル、たとえば /root/phone.ovpn が作られます。

2. ポートを開ける

スクリプトは独自の iptables ルールを設定します。UFW も使っているなら、VPN のポートを明示的に許可します。

sudo ufw allow 1194/udp
sudo ufw status

TCP を選んだ場合は 443/tcp に置き換えてください。

3. クライアントファイルを端末へ移す

.ovpn ファイルを SSH でコピーします。

scp -P 22 root@203.0.113.10:/root/phone.ovpn .

OpenVPN Connect アプリ、Linux の NetworkManager、またはルーターに読み込ませます。このファイルにはそのクライアントの秘密鍵が入っているので、パスワードと同じように扱ってください。メールで送らず、共有フォルダーにも置かないこと。

4. 動作を確認する

サーバー側で:

systemctl list-units --type=service | grep -i openvpn
journalctl -u 'openvpn*' --since "10 min ago"

クライアント側で接続し、自分のパブリック IP を確認します。サーバーのアドレスが表示されれば成功です。

端末の追加と失効

スクリプトをもう一度実行します。

sudo ./openvpn-install.sh

新しいクライアントの追加、既存クライアントの失効、OpenVPN の完全削除を選べます。端末ごとに 1 クライアントにしておく手間は小さく、その価値はあります。ノート PC が盗まれても、そのファイルだけを失効させれば他は何も変わりません。

正直なトレードオフ

OpenVPN は WireGuard より古く、重いです。暗号化は 1 コアで行うので、1 vCPU のプランでは高速な家庭回線の速度をフルには出せません。ハンドシェイクは遅く、スマホのバッテリー消費も多めです。OpenVPN ならではの機能が特に必要なければ、代わりに WireGuard のガイドに従ってください。大半の人にはそちらをおすすめします。

OpenVPN が勝るのは互換性です。単純なファイアウォールから見ると TCP 443 は普通の HTTPS 通信と区別がつかず、多くの機器が最初から OpenVPN に対応しています。

個人 VPN についての詳しい背景は VPN の活用例ページに、各プランでの IPv4/IPv6 の扱いはネットワークのドキュメントにあります。

よくある質問

OpenVPN と WireGuard、どちらがいいですか?

WireGuard のほうが速く、シンプルで、CPU も食いません。基本はこちらを選びましょう。UDP を遮断するネットワーク向けに 443 番ポートで TCP が必要なときや、端末や社内ポリシーが OpenVPN しか対応していないときは OpenVPN を選びます。

NAT プランで OpenVPN を動かせますか?

いいえ。クライアントは外から UDP 1194 か TCP 443 でサーバーに接続する必要があり、NAT プランが転送するのは個別の SSH ポートだけです。専用 IP のプランを使ってください。個人用 VPN なら月 $8 の Nano-IP で足ります。

速度はどのくらい出ますか?

OpenVPN は 1 つの CPU コアで暗号化するため、1 vCPU がスループットの上限になります。ブラウジング、動画視聴、リモートワークには十分すぎるほどですが、高速な家庭回線を使い切るなら WireGuard のほうが明らかに有利です。

端末の追加や削除はどうやりますか?

スクリプトをもう一度実行します。クライアントの追加(新しい .ovpn ファイルを作成)か、既存クライアントの失効を選べます。端末ごとに別のクライアントを割り当てておけば、なくしたスマホだけを他に影響なく切り離せます。

IPv6 に対応していますか?

はい。専用 IP のプランは IPv4 と IPv6 の両方を持ち、サーバーに IPv6 アドレスがあればスクリプトは IPv6 もトンネル経由でルーティングできます。

コメント

まだコメントはありません。最初になりましょう。

コメントを残す

コメントは表示される前にモデレートされます。