この図では、一部のデバイスとWireGuardをインストールできるルーターを備えたホームネットワークを描写しています。
パブリックインターネット┌·レス - #−理の10.10.11.1/2410.10.11.2/24│VPNネットワークHome0│XXXXXX PPP0│├│。Wlan0xx xx〜~athry#└-xxxxxx│laptopのラップトップ─x- xxxxxx└┘-┴-┴-┐coffeeショップ││nas│...
もちろん、このセットアップは、ルーターにソフトウェアをインストールできる場合にのみ可能です。ほとんどの場合、ISPから提供される場合、できません。ただし、一部のISPにより、デバイスをブリッジモードに入れることができます。その場合、ルーティングデバイスとして独自のデバイス(コンピューター、ラズベリーPI、または他の何か)を使用できます。
ルーターはすでにネットワークのデフォルトゲートウェイであるため、これはVPNユーザー向けのまったく新しいネットワークを作成できることを意味します。また、ルーターはインターネットから直接到達可能であるため、(d)NATルールを作成する必要はありません。
このガイドで使用されているいくつかのアドレス、ネットワーク、および用語を定義しましょう。
- コーヒーショップのラップトップ:提供されたWi-Fiアクセスを使用してホームネットワークに接続するために、コーヒーショップで通常のユーザーだけです。これは私たちの1つになりますピアVPNセットアップで。
Home0
:これは、ラップトップのワイヤーガードインターフェイスになります。それは呼ばれていますHome0
に接続するために使用されることを伝えるために家通信網。- ルーター:ホームネットワークの既存のルーター。パブリックインターフェイスがあります
PPP0
これには、ルーティング可能だが動的なIPv4アドレス(CGNATではなく)があり、内部インターフェイスがあります10.10.10.1/24
これは、ホームネットワークのデフォルトゲートウェイです。 - ホーム・ネットワーク:既存のホームネットワーク(
10.10.10.0/24
この例では)、ユーザーがワイヤガードVPNを介してリモートでアクセスしたい既存のデバイスを使用します。 10.10.11.0/24
:WireGuard VPNネットワーク。これは、VPNユーザーのためだけに作成されたまったく新しいネットワークです。WG0
にルーター:これは、ルーターで持ち上げるワイヤガードインターフェイスです。10.10.11.1/24
住所。それはのためのゲートウェイです10.10.11.0/24
VPNネットワーク。
このトポロジーで、たとえば、NASがトラフィックをに送りたい場合10.10.11.2/24
、それはそれをデフォルトゲートウェイに送信します(NASには特定のルートがないため10.10.11.0/24
)、そしてゲートウェイはそれをに送る方法を知っています10.10.11.2/24
それが持っているからですWG0
そのネットワーク上のインターフェイス。
構成
まず、このセットアップの仲間のキーを作成する必要があります。ラップトップには1つのキーが必要で、ホームルーターには別のキーが必要です。
$ umask 077 $ wg genkey> laptop-private.key $ wg pubkey laptop-public.key $ wg genkey> router-private.key $ wg pubkey router-public。鍵
ルーターを作成しましょうWG0
インターフェイス構成ファイル。ファイルはなります/etc/wireguard/wg0.conf
そして、これらの内容を持っています:
[interface] privatekey = listenport = 51000Address = 10.10.11.1/24 [peer] publickey = aotadips = 10.10.11.2
ありません終点
ラップトップピア用に構成されています。これは、事前にどのようなIPアドレスがあるかわからないため、そのIPアドレスは常に同じではありません。このラップトップは、コーヒーショップの無料Wi-Fi、空港ラウンジ、または友人の家から接続できます。
ここにエンドポイントがないことは、ホームネットワーク側ができないことも意味します開始するVPN接続。それは座って待つことができます応答するVPNのハンドシェイクリクエストには、ピアからエンドポイントを学習し、それが変更されるまで(つまり、ピアが異なるサイトから再接続するとき)、またはそれを使用するまでそれを使用します。
重要:
この構成ファイルには秘密が含まれています。privatekey。
次のように、必ずその権限を調整してください。See AlsoAndroidからWireGuard VPNに接続しますWireGuard VPNサイトからサイトへ|ubuntuワイヤーガードVPNトンネルを介したインターネットアクセスWireGuard VPNの紹介|ubuntusudo chmod 0600/etc/wireguard/wg0.confsudo chown root:/etc/wireguard/wg0.conf
アクティブ化されると、これはaを持ち出しますWG0
アドレスとのインターフェース10.10.11.1/24
、港で聞いています51000/UDP
、およびのルートを追加します10.10.11.0/24
そのインターフェイスを使用したネットワーク。
の[ピア]
セクションは、公開キーを介してピアを識別し、そのピアから接続できる人をリストしています。これAldocatips
設定には2つの意味があります。
- パケットを送信するとき、
Aldocatips
リストはルーティングテーブルとして機能し、このピアの公開キーを使用してトラフィックを暗号化する必要があることを示します。 - パケットを受け取るとき、
Aldocatips
アクセス制御リストのように動作します。復号化後、トラフィックはリストと一致する場合にのみ許可されます。
最後に、リッスンポート
パラメーターはを指定しますUDPワイヤーガードがトラフィックを聴くポート。このポートは、ルーターのファイアウォールルールで許可する必要があります。WireGuard用のデフォルトポートも標準ポートもありません。そのため、お好みの値を選択できます。
次に、他のピアであるラップトップで同様の構成を作成しましょう。ここでは、インターフェイスが呼び出されますHome0
、したがって、構成ファイルはです/etc/wireguard/home0.conf
:
[interface] privatekey = listenport = 51000Address = 10.10.11.2/24 [peer] publickey = endpoint = :51000allowedips = 10.10.11.0/24,10.10.10.0/24
重要:
前と同様に、この構成ファイルには秘密が含まれています。privatekey。
次のように、それに応じて権限を調整する必要があります。sudo chmod 0600/etc/wireguard/home0.confsudo chown root:/etc/wireguard/home0.conf
このラップトップを与えました10.10.11.2/24
住所。それは、に有効なアドレスであったかもしれません10.10.11.0/24
ネットワークは、既存のものと衝突せず、ルーターのピアで許可されている限りAldocatips
リスト。
注記:
DHCPのようなものを介してではなく、アドレス割り当てはマニュアルであることに気づいたかもしれません。それを監視してください!
の中に[ピア]
私たちが持っているラップトップのスタンザ:
- いつもの
publicKey
ピアを識別するアイテム。このピアへのトラフィックは、この公開キーを使用して暗号化されます。 終点
:これは、暗号化されたトラフィックを実際に送信する場所をWireGuardに伝えます。私たちのシナリオでは、ラップトップが接続を開始するため、ホームルーターのパブリックIPアドレスを知る必要があります。ISPが固定IPアドレスを与えた場合、素晴らしい!他に何もすることはありません。ただし、動的なIPアドレス(新しい接続を確立するたびに変更される)がある場合、何らかの動的DNSサービスを設定する必要があります。このようなサービスはインターネット上で無料で利用できる多くのサービスがありますが、このガイドのセットアップは範囲外です。- で
Aldocatips
目的地をリストします。VPNネットワーク10.10.11.0/24
私たちがpingできるようにリストされていますWG0
ホームルーターと同じVPN上の他のデバイス、および実際のホームネットワーク、10.10.10.0/24
。
使用していた場合0.0.0.0/0
単独でAldocatips
、その後、VPNはデフォルトゲートウェイになり、すべてのトラフィックがこのピアに送信されます。見るデフォルトゲートウェイそのタイプのセットアップの詳細については。
テスト
これらの構成ファイルを設置すると、WireGuardインターフェイスを作成する時が来ました。
ホームルーターで、実行してください:
$ sudo wg -quick up wg0 [#] ip link add wg0 type wireguard [#] wg setconf wg0/dev/fd/63 [#] ip -4アドレスAdd 10.10.11.1/24 dev wg0 [#] ip link set mtu1378 UP DEV WG0
あなたが持っていることを確認しますWG0
のアドレスとのインターフェース10.10.11.1/24
:
$ IP A Show Dev WG09:WG0: Mtu 1378 QDISC NOQUEUE STATE UNKNOWN GROUP DEFAULT QLEN 1000リンク/なしINET 10.10.11.1/24スコープグローバルWG0 valive_lft forever preferred_lft forever forever
あなたが持っていることを確認しますWG0
のアドレスとのインターフェース10.10.11.1/24
:
$ IP A Show Dev WG09:WG0: Mtu 1378 QDISC NOQUEUE STATE UNKNOWN GROUP DEFAULT QLEN 1000リンク/なしINET 10.10.11.1/24スコープグローバルWG0 valive_lft forever preferred_lft forever forever
とへのルート10.10.1.0/24
ネットワークを介してWG0
インターフェース:
$ ipルート|GREP WG010.10.11.0/24 DEV WG0 Proto Kernel Scope Link SRC 10.10.11.1
そしてWGショー
いくつかのステータス情報を表示する必要がありますが、接続されたピアはまだありません。
$ sudo wg showinterface:WG0公開キー:<ルーター公開キー>プライベートキー:(非表示)リスニングポート:51000peer:<ラップトップ公開キー>許可ips:10.10.11.2/32
特に、リストされているパブリックキーが作成したものと一致していることを確認します(そして期待されます!)。
他のピアのインターフェイスを開始する前に、上記を離れるのに役立ちます見せる
コマンドを継続的に実行するため、変更があるときに確認できます。
$ sudo watch wg show
次に、ラップトップでインターフェイスを開始します。
$ sudo wg -quick up home0 [#] ip link add home0タイプWireguard [#] wg setconf home0/dev/fd/63 [#] ip -4アドレスAdd 10.10.11.2/24 dev home0 [#] ip link set mtu1420 UP DEV HOME0 [#] IP -4ルート追加10.10.10.0/24 DEV HOME0
同様に、インターフェイスのIPと追加されたルートを確認します。
$ IP A SHOW DEV HOME024:home0: mtu 1420 qdisc noqueue state unknown group default qlen 1000リンク/なし10.10.11.2/24スコープグローバルhome0 valid_lft forever preferred_lft forever $ ip route |GREP HOME010.10.10.0/24 DEV DEV HOME0スコープリンク10.10.11.0/24 DEV HOME0 Proto Kernel Scope Link SRC 10.10.11.2
この時点まで、WGショー
ホームルーターの出力はおそらく変更されませんでした。それは、VPNをまだトリガーしていないホームネットワークにトラフィックを送信していないためです。デフォルトでは、WireGuardはネットワーク上で非常に「静か」です。
ただし、いくつかのトラフィックをトリガーすると、VPNは「目を覚ます」ものになります。ホームルーターの内部アドレスを数回pingしましょう。
$ ping -c 3 10.10.10.1ping 10.10.10.1(10.10.10.1)56(84)bytes of data.64バイト10.10.10.1:ICMP_SEQ = 1 TTL = 64時間= 603 MS64バイト10.10.10.1:ICMP_SEQ =から2 TTL = 64時間= 10.10.10.1からの300 MS64バイト:ICMP_SEQ = 3 TTL = 64時間= 304ミリ秒
最初のpingがどのように遅かったかに注意してください。それは、VPNが「目覚め」、確立されていたからです。その後、トンネルがすでに確立されていると、レイテンシーが減少しました。
同時に、WGショー
ホームルーターの出力は次のようなものに変更されます。
$ sudo wg showinterface:WG0公開キー:<ルーター公開キー>プライベートキー:(非表示)リスニングポート:51000peer:<ラップトップ公開キー>エンドポイント:<ラップトップパブリックIP>:51000許容IPS:10.10.11.2/32最新ハンドシェイク:1分、8秒前転送:564 b受信、476 b送信
以前のピアツーサイト 次のピアツーサイト(デバイス内)
このページは5日前に最後に変更されました。フォーラムでこの文書を改善するのに役立ちます。