Назад | Перейти на главную страницу

IPTABLES не сохраняет изменения при перезапуске

У меня есть hostgator VPS с CENT OS. Когда я останавливаю VPS и запускаю его снова, изменения, внесенные в IPTABLES, не сохраняются. Я пытался сохранить IPTABLES, но безрезультатно. Каждый раз, когда я перезапускаю сервер, я должен запускать следующее, чтобы получить IPTABLES, как они мне нужны:

iptables -I INPUT -p tcp --dport 3000 --syn -j ACCEPT
sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000

Первая команда открывает порт 3000, а вторая команда перенаправляет трафик порта 80 на порт 3000.

Когда я перезапускаю или полностью останавливаю VPS и снова запускаю его, IPTABLES запускается, как будто я их никогда не сохранял, и возвращаюсь к значениям по умолчанию, когда я впервые получил VPS.

Я перепробовал все эти команды и все равно без радости.

Я подумываю написать сценарий для запуска команд, которые мне нужны для настройки IPTABLES. Какие-либо предложения?

К вашему сведению: я отредактировал / etc / sysconfig / iptables и сделал service iptables save и не повезло, после перезагрузки он вернулся к конфигурации Host Gator после сброса VPS.

Чтобы правила iptables оставались на месте после перезагрузки, вы должны явно указать это.

В CentOS после того, как ваши правила установлены, вы можете запустить:

/sbin/service iptables save

Больше информации здесь: https://library.linode.com/securing-your-server#sph_creating-a-firewall (См. Пункт 10)

Вчера вечером я отправил электронное письмо (до того, как опубликовал этот вопрос), и наконец получил ответ от администратора Linux в Host Gator (я обновлю, если это сработает):

Привет!

HostGator создал специальный брандмауэр, который по умолчанию установлен на всех тарифных планах VPS и выделенных серверов.

К счастью, в конфигурации брандмауэра есть файл, который должен сохраняться. iptables конфигурации.

Это файл: / etc / firewall / INCLUDE

Просто добавьте свой iptables строк в этот файл и перезапустите брандмауэр с service firewall restart. В iptables правила сохранятся.

На самом деле, я добавил эти строки в файл, так что ваш iptables правила должны загрузиться и сохраниться.

Пожалуйста, не стесняйтесь обращаться к нам, если у вас возникнут дополнительные вопросы или проблемы.


Я попросил добавить следующие правила, когда позвонил в Host Gator, но это не сработало, потому что, когда он сказал мне добавить их, я не добавил «iptables» перед правилами. Вот что добавил администратор Linux в Host Gator. Я скопировал этот текст из /etc/firewall/INCLUDE файл:

iptables INPUT -p tcp -m tcp --dport 3000 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
iptables -A INPUT -j acctboth
iptables -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3000

iptables -I INPUT -p tcp --dport 3000 --syn -j ACCEPT
iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

Я нашел несколько ссылок в Интернете, которые указывают на то, что HostGator устанавливает собственный скрипт межсетевого экрана на свои VPS и выделенные серверы. Однако я не смог найти никаких инструкций о том, как он был установлен или как от него избавиться. Я бы связался с HostGator для получения дополнительной информации или подумал бы о переходе на другого провайдера.