у меня есть VMware: 10.10.10.1
, а linux in VMware (Guest): 10.10.10.128
и honeypot on Guest: 10.10.10.15
, и мой Windows (Host): 192.168.1.11
. Я могу отправлять запросы FTP прямо со своего Host
к honeypot
и соединение установлено. Теперь я хочу отправить FTP-запросы на Guest
и это жду моего honeypot
. Я вложил эти правила в iptables
на Guest
:
iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to-destination 10.10.10.15:21
iptables -t nat -A POSTROUTING -p tcp -s 10.10.10.15 --sport 21 -j SNAT --to-source 10.10.10.128
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Но не могу добиться желаемого результата. Что я могу сделать?
Заметка: Когда honeypot
бежит, я могу ping
это из Host
, но я не могу ping
это из Guest
и результат:
Destination Host Unreachable
Где я ошибаюсь?
Если вы хотите переслать FTP-запрос, вы не можете просто перенаправить порт 21. FTP использует 2 или более соединения:
Итак, если вы хотите пересылать FTP-соединения, вам нужно посмотреть в конфигурации вашего сервера, чтобы проверить диапазон портов, который FTP-сервер будет использовать для приема клиентских подключений (при условии, что ваш клиент подключается к FTP-серверу в «пассивном режиме»).
Таким образом, вам нужно перенаправить порт 21 + весь порт, определенный в диапазоне «пассивных портов».
Но этого недостаточно, потому что это FTP-сервер, который указывает FTP-клиенту, с каким IP-адресом связаться, чтобы открыть соединение для передачи данных, и обычно это IP-адрес сервера.
FTP-сервер не знает, какой сервер вы используете для пересылки соединения.
Таким образом, вы также должны сообщить своему FTP-серверу, что его «общедоступный IP-адрес» - это не IP-адрес FTP-сервера, а IP-адрес сервера, который будет принимать (и пересылать) FTP-соединение от клиента.