7.11. nmtui を使用した WireGuard クライアントの設定
NetworkManager で接続プロファイルを作成することで、WireGuard クライアントを設定できます。この方法を使用して、NetworkManager に WireGuard 接続を管理させます。
この手順では、次の設定を前提としています。
クライアント:
-
秘密鍵:
aPUcp5vHz8yMLrzk8SsDyYnV33IhE/k20e52iKJFV0A=
-
トンネル IPv4 アドレス:
192.0.2.2/24
-
トンネル IPv6 アドレス:
2001:db8:1::2/32
-
秘密鍵:
サーバー
-
公開鍵:
UtjqCJ57DeAscYKRfp7cFGiQqdONRn69u249Fa4O6BE=
-
トンネル IPv4 アドレス:
192.0.2.1/24
-
トンネル IPv6 アドレス:
2001:db8:1::1/32
-
公開鍵:
前提条件
- サーバーとクライアントの両方に公開鍵と秘密鍵を生成している。
以下の情報を把握している。
- クライアントの秘密鍵
- クライアントの静的トンネルの IP アドレスとサブネットマスク
- サーバーの公開鍵
- サーバーの静的トンネル IP アドレスおよびサブネットマスク
-
NetworkManager-tui
パッケージをインストールしました
手順
nmtui
アプリケーションを開始します。nmtui
# nmtui
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Edit a connection を選択し、Enter を押します。
- を選択し、Enter を押します。
- リストから WireGuard 接続タイプを選択し、Enter を押します。
Edit connection ウィンドウで:
-
NetworkManager が接続に割り当てる仮想インターフェイス (
wg0
など) の接続名を入力します。 クライアントの秘密鍵を入力します。
Peers ペインの横にある をクリックします。
- サーバーの公開鍵を入力します。
Allowed IPs フィールドを設定します。たとえば、次のように設定します。
- サーバーのトンネル IP アドレスに設定すると、そのサーバーのみがこのクライアントと通信できるようになります。
-
リモートの IPv4 アドレスおよび IPv6 アドレスが、このクライアントと通信できるように許可する
0.0.0.0/0,::/0
この設定を使用して、すべてのトラフィックをトンネル経由でルーティングし、WireGuard サーバーをデフォルトゲートウェイとして使用します。
-
Endpoint フィールドに、WireGuard サーバーのホスト名または IP アドレスとポートを入力します。
<hostname_or_IP>:<port_number>
という形式を使用します。 - オプション: ネットワークアドレス変換 (NAT) を使用するネットワークでクライアントを使用するか、またはしばらく非アクティブにした後にファイアウォールが UDP 接続を閉じる場合は、永続的なキープアライブの間隔を秒単位で設定します。この間隔で、クライアントは、キープアライブパケットをサーバーに送信します。
IPv4 Configuration の横にある を選択し、Enter を押します。
- IPv4 設定方法 Manual を選択します。
- トンネルの IPv4 アドレスとサブネットマスクを入力します。Gateway フィールドは空のままにします。
IPv6 Configuration の横にある を選択し、Enter を押します。
- IPv6 設定方法 Manual を選択します。
- トンネルの IPv6 アドレスとサブネットマスクを入力します。Gateway フィールドは空のままにします。
- オプション: Automatically connect を選択します。
-
NetworkManager が接続に割り当てる仮想インターフェイス (
- 接続のリストが表示されたウィンドウで、 を選択し、Enter を押します。
- NetworkManager TUI のメインウィンドウで、 を選択し、Enter を押します。
- DHCP またはステートレスアドレス自動設定 (SLAAC) が設定されたネットワークでこのホストを使用すると、接続がリダイレクトされる危険性があります。詳細と軽減策は、接続がトンネルを回避しないように VPN 接続を専用ルーティングテーブルに割り当てる を参照してください。
検証
サーバーの IP アドレスの ping を実行します。
ping 192.0.2.1 ping6 2001:db8:1::1
# ping 192.0.2.1 # ping6 2001:db8:1::1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow wg0
デバイスのインターフェイス設定を表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力に秘密鍵を表示するには、
WG_HIDE_KEYS=never wg show wg0
コマンドを使用します。VPN トンネルを介してトラフィックをすでに送信している場合は、
latest handshake
エントリーとtransfer
エントリーのみが出力に含まれることに注意してください。wg0
デバイスの IP 設定を表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow