Я установил правила в iptables несколько месяцев назад и использовал iptables-persistent
заставить правила сохраниться через перезагрузку. Я просто обновил свои правила и пытаюсь заставить их сохраниться, но ничто не работает, они продолжают сбрасывать к более ранней версии. Я попробовал:
Создание cronjob, который работает на перезагрузке И каждую минуту,
#!/bin/bash
iptables-restore -c < /home/amart219/iptables.backup
Я сохранил в файл, который, предположительно, является местоположением по умолчанию правил и реконфигурированный iptables-персистентный
iptables-save > /etc/iptables/rules.v4
dpkg-реконфигурируйте iptables-персистентный, я поместил сценарий в/etc/network/if-pre-up.d/каталог, в котором говорится следующее:
#!/bin/bash
/sbin/iptables-restore < /home/amart219/iptables.backup
/sbin/ip6tables-restore < /home/amart219/iptables.backup
Я изменил /etc/network/interfaces
файл
iface eth0 inet dhcp
pre-up iptables-restore < /etc/iptables.rules
post-down iptables-restore < /etc/iptables.downrules
Я добавил iptables-восстановление, и iptables-сохраните к if-pre-up.d
и if-post-down.d
каталоги в /etc/network directory
#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0
#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.downrules ]; then
iptables-restore < /etc/iptables.downrules
fi
exit 0
Я удостоверился, что они были файлами, был исполняемый файл.
sudo chmod +x /etc/network/if-post-down.d/iptablessave
sudo chmod +x /etc/network/if-pre-up.d/iptablesload
Ни одно из этих изменений не имеет значения. Мое понимание, это dpkg-реконфигурировало iptables-персистентный, корректный метод однако ничто, что я пробую работы. Я боюсь, что некоторое время в прошлом, я, возможно, попытался сделать их персистентными некоторым другим способом, который работал до установки iptables-персистентного, но раз так я понятия не имею, как я, возможно, сделал это. Я работал: tail -500 /var/log/syslog
прямо после перезагрузки, чтобы видеть, загрузила ли система что-нибудь, но я вижу только обычные данные начальной загрузки. Этот сервер не имеет никаких заданий крона кроме того, что я создал попытку восстановить установку iptables. Я не знаю, является ли это проблемой или нет, но если это было, я не знаю, как расположиться, куда это могло бы работать от изменить его.
Если я вручную запускаю скрипт, я настроил в кроне для восстановления iptables настроек, он работает просто великолепно, но не сохраняется через перезагрузку. cronjob настраивается правильно, на отдельном сервере я имею 40 + cronjobs, я знаком с процессом.
Какие-либо предложения? Я не придирчив на методе, мне просто нужен он для работы.
Andrea Turbiglio ответил на мой вопрос на другом сайте. Я полагаю, что сайт связан с этим, но я не знаю правил относительно соединения с другим сайтом, таким образом, я приписываю ему ответ и помещаю его сюда.
"Я раньше помещал строку с "iptables-восстановлением" в/etc/rc.local (протестированный и на Debian 8 и на Ubuntu 16.04), и это работало просто великолепно".
Возможно, сторонняя программа брандмауэра является проверкой actived. на ufw
и firewalld
использование
dpkg -l | grep ufw
dpkg -l | grep firewalld
, можно установить соответствующие gui инструменты:
sudo apt-get install ufw gufw
sudo apt-get install firewalld firewall-applet