У меня есть 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 для получения дополнительной информации или подумал бы о переходе на другого провайдера.