
私の ISP ユーザーは CGNAT で、静的 IP アドレスを持っていませんが、AWS サブネットに接続したいと考えています。OpenVPN サーバー用の VM を作成しようとしましたが、その方法では、他のすべての VM を設定しない限り、サーバー VM にしか接続できません。静的 IP アドレスなしでサブネットに接続するにはどうすればよいですか?
答え1
私は OpenVPN の経験はありませんが、シンプルな Wireguard 設定により、任意の数のプライベート サブネットへのアクセスを許可する単一の Wireguard サーバーを持つことができます。
この例では、10.xx.xx.x
は私のプライベート サブネットであり、192.168.x.x
は私の Wireguard ネットワークです。
- Wireguardサーバーとして専用のマシンを選択またはセットアップし、基本的な構成を設定します。例:サーバー側
[Interface]
Address = 192.168.200.1
PrivateKey = ...
ListenPort = 51820
[Peer] # Enes home computer
PublicKey = ...
AllowedIPs = 192.168.200.2
クライアント側
[Interface]
PrivateKey = ...
Address = 192.168.200.2
ListenPort = 51820
[Peer]
PublicKey = ...
Endpoint = your.wg.server
AllowedIPs = 192.168.200.1/32, 10.0.0.0/8 # We can route whatever we want!
- たとえば sysctl 設定を使用して、IP 転送を許可するように Wireguard サーバーを構成します。
sysctl -w net.ipv4.ip_forward=1
sysctl -w net.ipv6.conf.all.forwarding=1
- Wireguard サーバーを設定して、マスカレードを許可する (例: ファイアウォール、Wireguard インターフェースがあるゾーン (例: 内部) のカスタム ルール)
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.211.0/24" masquerade' --permanent
firewall-cmd --reload
これで完了です。 を使用して、 Wireguard が動作していることを確認し、 Wireguard サーバーが実行できるwg
すべてのアドレスに ping できるはずです。10.x.x.x
私は、数百台のマシンを持つ数十のプライベート サブネットに対して、単一の Wireguard サーバー VM を使用してこのセットアップを実行します。