在 AWS 上,我在 VPC 上有一个 NAT 实例 (Linux) 和一个 Web 服务器 (Windows 2019)。Web 服务器正常工作,我也可以通过 nat 通过 RDP 连接到 Web 服务器,没有问题。问题是 Web 服务器实例无法出站访问互联网;在我通过 RDP(以管理员身份)后,我无法浏览。
AWS 基本网络配置:
VPC 网络 ACL:入站:全部允许,出站:全部允许
VPC 与互联网网关相关联
VPC:10.0.0.0/16
公共子网:10.0.2.0/24
私有子网:10.0.1.0/24
NAT IP:10.0.2.40
网站IP: 10.0.1.128
禁用 NAT 上的源/目标检查
Web 服务器上的安全组:从 nat-server 入站,出站全部打开。
nat 服务器上的安全组:从 80、web sg 和我的 IP 入站,出站全部打开。
NAT 上的网络:IP 转发已启用,并且由于 Web 应用程序正常运行,因此我认为这里不存在任何问题。
sysctl -q -w net.ipv4.ip_forward=1
iptables -L -n -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 10.0.2.40 tcp dpt:443 to:10.0.1.128
DNAT tcp -- 0.0.0.0/0 10.0.2.40 tcp dpt:80 to:10.0.1.128
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
113235 7781297 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
我可以通过互联网访问 Windows 2019 实例提供的应用程序,网络在这方面似乎可以正常工作。
我可能需要在 NAT 或 Windows 2019 上进行其他设置,我在 Windows 2019 上所做的唯一配置是设置 IIS。
我需要检查和设置什么才能从网络服务器获得出站互联网浏览功能?
答案1
问题解决了。私有路由表需要将其目标设置为 NAT 实例。
编辑私有路由,添加:0.0.0.0/0 目标:NAT 实例。
如果尚未设置,公共路由应该以互联网网关为目标。
在 NAT 上运行端口地址转换器也可能有帮助,我相信我的设置在运行之前已经支持这一点。
/usr/local/sbin/configure-pat.sh
希望这对某人有帮助,它让我忙了几天。