В Red Hat 7 я пытаюсь заставить службу IP-таблиц запускаться автоматически после перезагрузки. В настоящее время после каждой перезагрузки мне нужно запускать команду:
sudo systemctl start iptables
Я пробовал установить
sudo chkconfig iptables on
но он не работает.
В моем файле /etc/sysconfig/iptables-config
Я установил
IPTABLES_SAVE_ON_STOP="yes"
IPTABLES_SAVE_ON_RESTART="yes"
Может кто-нибудь дать мне знать, как настроить запуск при перезагрузке?
Согласно RHEL7 / Centos7 в установке по умолчанию нет службы iptables. Вместо этого они хотят, чтобы вы использовали firewalld
который включен по умолчанию. (видеть man firewall-cmd
для получения дополнительной информации о том, как работать с firewalld)
Если вы хотите использовать iptables, вам необходимо установить iptables-services
и включить их с systemctl enable iptables
. Вам нужно будет отключить firewalld с помощью systemctl disable firewalld
.
Если нет действительно конкретной причины использовать iptables или chkconfig, я бы посоветовал вам не использовать их. Вместо этого я бы инвестировал в изучение того, как работают firewalld и systemctl.
Это сработало для меня:
yum -y установить iptables-services;
systemctl отключить firewalld;
systemctl mask firewalld;
перезапуск службы iptables;
сервис iptables save;
Правила, созданные с помощью команды iptables, хранятся в памяти. Если система перезагружается до сохранения набора правил iptables, все правила теряются. Чтобы правила netfilter сохранялись после перезагрузки системы, их необходимо сначала сохранить.
Чтобы сохранить правила, введите следующую команду от имени пользователя root:
iptables-save
или
service iptables save
После этого перезапустите сервис iptables.
service iptables restart
Вы можете изменить служебные команды для запуска или остановки службы в соответствии с вашим вкусом Linux.