
На AWS у меня есть экземпляр NAT (Linux) и веб-сервер (Windows 2019) на VPC. Веб-сервер работает как надо, я также могу RDP к веб-серверу через NAT, никаких проблем. Проблема в том, что нет исходящего доступа к Интернету с экземпляра веб-сервера; после RDP (как администратор) я не могу просматривать.
Базовая конфигурация сети AWS:
ACL сети VPC: входящий: все разрешено, исходящий: все разрешено
VPC связан с интернет-шлюзом
ВПК: 10.0.0.0/16
публичная подсеть: 10.0.2.0/24
Частная подсеть: 10.0.1.0/24
IP-адрес NAT-сервера: 10.0.2.40
Веб-IP-адрес: 10.0.1.128
Отключена проверка источника/назначения на NAT
Группа безопасности на веб-сервере: входящие с nat-сервера и исходящие Все открыты.
Группа безопасности на NAT-сервере: входящий трафик с 80, веб-группа и мой IP, исходящий трафик Все открыто.
Сеть на NAT: переадресация IP включена, и поскольку веб-приложение работает, я не думаю, что здесь есть какие-либо проблемы.
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
Надеюсь, это кому-то поможет, меня это заняло на несколько дней.