2015-06-13 2 views
17

У меня есть VPS Debian 8 jessie x64 stable release. После установки im пытается настроить iptables (как в debian 7).debian 8 iptables-persistent

apt-get install iptables-persistent 

Выполнено, некоторые пакеты были установлены. но когда им пытается

service iptables-persistent start 

им получают сообщение об ошибке, которое говорит Тары сервис Iptables-стойкий непризнанный

halp!

+1

Не вопрос программирования, попробуйте http://superuser.com/questions/tagged/linux – tink

ответ

41

Упорство Таблицы IP Debian/Ubuntu

Чтобы сохранить изменения, внесенные в правила Iptables, сделайте следующее.

Установите IPTables-стойкие:

sudo apt-get install -y iptables-persistent 

Внесите необходимые изменения в свои правила Iptables, например

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 

Затем запустите

sudo dpkg-reconfigure -y iptables-persistent 

правила должны сохраняться после перезагрузки Теперь.

Extra Info

Dpkg-перенастроить только вызывает Iptables-стойкие делать снова, что он делает при установке, что для сохранения текущих IPTables в файл с помощью команды так же, как:

iptables-save >/etc/iptables/rules.v4 
ip6tables-save >/etc/iptables/rules.v6 

Пакет iptables-persistent заставляет перезагрузить перезапуск.

iptables-restore < /etc/iptables/rules.v4 
ip6tables-restore < /etc/iptables/rules.v6 

Надеется, что это помогает:)

+0

Любопытные пропуски голосования. Это не в тему или что-то в этом роде? Если бы это не переместило его куда-нибудь по теме, это была бы лучшая идея? Я думал, что буду полезен:/ – tobuslieven

+3

Я проголосовал за это, чтобы компенсировать;) Я не эксперт iptables, но это выглядит достаточно полезным. – ultracrepidarian

+0

Опция -y не работает на Debian 7.8 на 'sudo dpkg-reconfigure -y iptables-persistent' –

9

Я просто споткнулся вуп, тоже (а потом его вопрос); нашел решение, посмотрев на package description for iptables-persistent. Новый интерфейс, кажется, Netfilter-стойкие, то есть использовать например .:

# invoke-rc.d netfilter-persistent save 

По крайней мере, это то, что работает для меня, НТН ...

0

Finaly проблема была в firewalld службе. Это какой-то новый демон брандмауэра. Как я думаю, это конфликтует с netfilter (iptables) -переходным. Поэтому я запускаю

chkconfig firewalld off 

и теперь все работает нормально. Отказ от ответственности :) Я это не самая лучшая практика, это просто обход. У вас нет времени изучать firewalld.

3

Обновление 8/7/16: Это зависит от дистрибутива. Следующий комментарий был введен в незнании того, имеет ли OP-дистрибутив сетевой пакет, устойчивый к сетевому фильтру. Мои извинения. Мой дистрибутив для ноутбука (Mint) не содержит пакет, поддерживающий netfilter, в то время как мои серверные дистрибутивы (Ubuntu 15+).

Оригинальный ответ: Как правильно говорит Оливер, netfilter-persistent заменяет iptables-persistent в Ubuntu. То, что работало с Ubuntu 15.04 следующим образом:

Установите его, убедитесь, что он работает как сервис: service --status-all | grep netfilter-persistent

Если не работает как сервис, запустить его один раз за все время с: invoke-rc.d netfilter-persistent start

Затем вы должны разместить сценарий где-нибудь, который будет работать, когда сеть или ее интерфейсы прекратятся. Важное содержание сценария просто: invoke-rc.d netfilter-persistent save

Я положил сценарий в каталог /etc/network/if-post-down.d. Не забудьте сделать chmod для исполняемого файла. Если перебои в подаче электроэнергии имеют какую-либо вероятность, вы можете сделать запись cron для команды save.

+0

Похоже, он говорит, что netfilter является базой, и iptables-persistent будет простираться от этого. Очень неясно. Это похоже на кремлеологию, проблемы Ubuntu, еще один уровень выше первых мировых проблем. – tobuslieven