У меня установлен KVM на Centos с одной виртуальной машиной
Host ip: 192.168.1.108, Guest ip: 192.168.100.227, LAN: 192.168.1.4/24
вот все, что я сделал:
я отключил firewalld и установил iptables-services
systemctl disable firewalld
yum install iptables-services
systemctl enable iptables.service
вот мои правила
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.4/22 -d 192.168.1.108 --dport 8000 -j DNAT --to-destination 192.168.100.227:8888
iptables -t nat -A POSTROUTING -p tcp --dport 8888 -d 192.168.100.227 -j SNAT --to 192.168.100.1
iptables -I FORWARD -m state -d 192.168.100.0/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT
и, наконец, сохраните мои правила iptable (с суперпользователем)
/usr/libexec/iptables/iptables.init save
(также пробовал "сервис iptables save" НОВЫЙ, СВЯЗАННЫЙ, УСТАНОВЛЕННЫЙ -j ПРИНЯТЬ
больше не работает. Мне нужно добавить его снова для доступа к моему серверу python.
Есть ли другой способ перенастроить этот порт (возможно, с помощью FirewallD), или я пропал что-то?
Поскольку месяц назад я столкнулся с подобной проблемой, моим решением было загрузить мои правила iptable из: etc / network / interfaces с помощью команды восстановления:
iptables-restore etc /iptables.rules
Каждый раз, когда я перезагружаю iptables, все обновления сохраняются в iptables.rules.
Я думаю, что ваша проблема связана с сохранением конфигурации ipables. Просто чтобы уточнить, можете ли вы попробовать запустить файл: /etc/sysconfig/iptables, чтобы проверить содержимое файла, чтобы узнать, успешно ли сохранен iptables или нет после перезапуска службы iptables
. Кстати, я думаю, вы должны попробовать это, чтобы сохранить правила iptables: iptables-save > /etc/sysconfig/iptables