ルートを定義する
トンネルがプライベートサービスのトラフィックのみを運ぶのか、すべてのインターネットトラフィックを運ぶのかを決定してください。許可されたルートを意図的に構成し、IPv4とIPv6の両方を考慮してください。スプリットトンネルとフルトンネルの設定では、リークと到達性の考慮事項が異なります。
デバイスごとに1つのキーを保持してください
可能な限りデバイス上で秘密鍵を生成し、決して公開しないでください。ピアの識別情報を分けておくことで、すべてのクライアントを交換することなく、紛失したデバイスを取り消せます。サーバー設定は保護された権限で保管してください。
転送とDNSを設定する
転送とファイアウォールのルールは意図的に設定してください。名前解決、MTU、戻り経路を確認します。ハンドシェイクの成功がすべてのトラフィックが意図した経路を使用していることを意味すると仮定せず、クライアントから実際のパブリックアドレスと DNS の挙動をテストしてください。
信頼の移行を理解する
セルフホスト型VPNはローカルネットワーク上の通信を保護できますが、VPSと上流は依然としてメタデータや未暗号化の通信を確認できます。ブラウザセッションが匿名になるわけでも、アクセスするサービスのポリシーを上書きするわけでもありません。
明示的なリスナーを使用し、ハンドシェイクを検査してください
UDP 51820は一般的なWireGuard構成の選択肢であり、必須または保証されたホストポリシーではありません。選択したUDPポートのみを開放し、管理は別途制限してください。wg showコマンドは、秘密鍵を公開することなく、ピアのハンドシェイクと転送情報を報告できます。
- 最近のハンドシェイクを確認する
- 目的のプライベートサービスをテストする
- 完全なトンネルを意図する場合に限り、インターネットと DNS のルートをテストしてください
wg show公式ドキュメント: WireGuard クイックスタート
ネットワークが必要とする場合にのみキープアライブを使用する
NAT の背後にあるピアは、受信パケットのマッピングを維持するために定期的なキープアライブトラフィックを必要とする場合があります。適切な設定はネットワークによって異なります。構成は意図的に保ち、目的が 1 つのプライベートアプリケーションへのアクセスのみである場合は、フルトンネルのレシピをコピーしないでください。
スプリットトンネリングかフルトンネル設計を選択する
実際の目標から始めてください。スプリットトンネルはプライベートサブネットや管理サービスだけを対象にできますが、フルトンネルではインターネット転送、エグレスルール、DNS計画も必要です。重複しないトンネルアドレスを選択し、IPv6の処理方法を決定してください。UDP51820は一般的なポートであり、必須ではありません。選択したホストのポリシーを確認し、ルートやファイアウォールルールを変更する間もコンソール/管理者アクセスを利用可能にしておいてください。
- 各デバイスに固有の鍵ペアと限定的なピア ID を付与してください。
- 秘密鍵は本来のデバイスに保管し、公開ファイルやQR共有の対象にしないでください。
- 公開エンドポイントとクライアントのローミングを、ネットワーク設計の一部として扱ってください。
公式ドキュメント: WireGuard クイックスタート
インターネットルーティングを追加する前に小さなトンネルを起動する
サポート対象のOSインストール手順に従い、制限付きのファイル権限でキーを生成してください。サーバーインターフェース、1つのピア、選択したUDPリスナーを設定します。サーバー側のピアは通常、複数のクライアントに割り当てられた重複するキャッチオールではなく、AllowedIPs内に独自のトンネルアドレスを持つべきです。まずトンネルアドレスへのアクセスから始め、その後、承認された転送と宛先ルートを追加してください。ハンドシェイクの成功はピアの接触を証明するものであり、DNSやインターネットへの出力が正しいことを証明するものではありません。
# Inspection examples; these do not reveal a private key:
wg show
ip address show dev wg0
ip route get 10.44.0.1公式ドキュメント: WireGuard インターフェースとピア設定
想定されるパスと禁止されたパスをテストする
クライアントから、最近のハンドシェイクと許可されたプライベートサービスを確認してください。拒否されるべき宛先を試してください。フルトンネルを使用する場合は、そのクライアントから有効な公開経路、DNS リゾルバー、IPv6 の動作を確認してください。スプリットトンネルのトラフィックは意図したローカル経路を維持する必要があります。クライアントのネットワーク変更後に再度確認してください。NAT キープアライブはピアのネットワークが必要とする場合にのみ使用し、間隔は文書化された設計と一致させてください。
- ハンドシェイクなし: エンドポイントDNS、UDP到達性、鍵、ピアマッピングを検査します。
- ハンドシェイクは成功してもサービスがない場合:AllowedIPs、ファイアウォール、フォワーディング、戻りルートを確認してください。
- 一部のサイトでは通信が停滞します。無作為な固定値を適用する前に、パス MTU を調査してください。
失効と再起動の動作を再現可能にする
紛失したデバイスのピアキーを削除し、意図したアクセスを確立できなくなったことを確認してください。暗号化された構成バックアップと、どの公開キーがどのデバイスに属するかの一覧を保持してください。通常の再起動後にインターフェースと必要なルーティングルールが復元されるかテストしてください。VPNは信頼をVPSとその上流に移すものであり、アプリケーション識別子、アカウントCookie、最終宛先へのHTTPSの必要性をなくすものではありません。
公式ドキュメント: WireGuard wg-quick マニュアル