Amazon-Web-Services

連接到沒有靜態 IP 地址的 AWS 私有子網

  • July 23, 2021

我的 ISP 使用者 CGNAT 和我沒有靜態 IP 地址,但我想連接到我的 AWS 子網。我嘗試為 OpenVPN 伺服器創建一個虛擬機,但這樣我只能連接到伺服器虛擬機,除非我在所有其他虛擬機上進行了設置。如何在沒有靜態 IP 地址的情況下連接到我的子網?

我沒有使用 OpenVPN 的經驗,但是,通過簡單的wireguard 設置,您可以擁有一個允許訪問任意數量的私有子網的wireguard 伺服器。

在這個例子中,10.xx.xx.x是我的私有子網,192.168.x.x是我的wireguard 網路。

  1. 選擇或設置專用機器作為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!
  1. 配置wireguard伺服器以允許ip轉發,例如sysctl設置:
sysctl -w net.ipv4.ip_forward=1
sysctl -w net.ipv6.conf.all.forwarding=1
  1. 配置wireguard伺服器以允許偽裝,例如使用firewalld,wireguard介面所在區域的自定義規則(例如內部)
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.211.0/24" masquerade' --permanent
firewall-cmd --reload

應該就是這樣。用於wg驗證wireguard 是否正常工作,並且您應該能夠ping10.x.x.x到wireguard 伺服器可以ping 通的任何地址。

我使用單個 Wireguard 伺服器虛擬機針對具有數百台機器的數十個私有子網執行此設置。

引用自:https://serverfault.com/questions/1070375