3

現在、複数のサービスを実行しているホーム サーバーがありますが、VPN にルーティングされるのはほんの一握りです。VPS に Wireguard をセットアップし、Mac とホスト (Ubuntu 18.04) を介して正常に接続できますが、コンテナーを分離できませんでした。これが私が行った進歩です。

サーバー構成

[Interface]
Address = 10.66.66.1/24,fd42:42:42::1/64
ListenPort = 49161
PrivateKey = xxx
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0  -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
PublicKey = xxxx
PresharedKey = xxxx
AllowedIPs = 10.66.66.2/32,10.0.5.0/24,fd42:42:42::2/128

クライアント構成

[Interface]
PrivateKey = xxxx
Address = 10.66.66.2/24
DNS = 176.103.130.130,176.103.130.131

[Peer]
PublicKey = xxxx
PresharedKey = xxxx
Endpoint = xxxx:49161
AllowedIPs = 10.0.5.0/24

Client Wireguard のブート出力 ここで奇妙なのは、AllowedIPs を 0.0.0.0/0 に設定したときに実行されるいくつかのコマンドが欠落していることです。多分それはヒントですか?

~$ sudo wg-quick up wg0
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.66.66.2/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] resolvconf -a tun.wg0 -m 0 -x
[#] ip -4 route add 10.0.5.0/24 dev wg0

起動したwgの出力。握手会です!

~$ sudo wg
interface: wg0
  public key: xxxx
  private key: (hidden)
  listening port: 40518

peer: xxxx
  preshared key: (hidden)
  endpoint: xxxx:49161
  allowed ips: 10.0.5.0/24
  latest handshake: 23 seconds ago
  transfer: 92 B received, 1.08 KiB sent

Docker のセットアップ 私は常に WG を最初に起動してから、docker コンテナーを起動しようとします... 逆の方法で実行しようとすると、WG を実行できません この時点で、docker コンテナーを起動します。ここに私のdocker-composeからの関連情報があります

networks:
  wireguard-vpn:
    ipam:
      config:
        - subnet: 10.0.5.0/24

services:
  transmission:
    ...
    networks:
        wireguard-vpn:
            ipv4_address: 10.0.5.4

私の考えが正しければ、wg の起動時にサブネットが作成され、docker の起動時にそのアドレスが使用されます。

curl 10.0.5.4:9091

そして、ここのコンテナ内からはcurlの出力です

root@dd0ec0b1cd5a:/# curl ifconfig.me
curl: (6) Could not resolve host: ifconfig.me

なぜこれが機能しないのか理解できません...

4

0 に答える 0