iptables-restore не удается загрузить мои правила

10

Я искал вокруг в течение некоторого времени, но ничто не решает мою проблему. Я настраиваю почтовый сервер, но при записи в iptables я получаю сообщение об ошибке:

iptables-restore: строка 2 завершилась неудачно.

Я пытаюсь использовать следующий /etc/iptables.test.rules:

# Allows SMTP access
-A INPUT -p tcp --dport 25 -j ACCEPT

# Allows pop and pops connections 
-A INPUT -p tcp --dport 110 -j ACCEPT
-A INPUT -p tcp --dport 995 -j ACCEPT

# Allows imap and imaps connections 
-A INPUT -p tcp --dport 143 -j ACCEPT
-A INPUT -p tcp --dport 993 -j ACCEPT

После этого я выдаю следующую команду:

sudo iptables-restore < /etc/iptables.test.rules

Однако я получил это:

iptables-restore: line 2 failed.

Я не знаю, в чем проблема. Кто-нибудь может уточнить?

Я использую Ubuntu 10.10 LTS

Сорен Лоренцен
источник

Ответы:

13

Это потому, что этот файл не в ожидаемом формате. Сначала вы должны добавить свои правила вручную, а затем использовать iptables-saveдля получения файла в ожидаемом формате.

Однако довольно просто «имитировать» формат, который ожидает iptables-restore.

Добавьте строку только *filterв верхней части файла.

Добавьте строчку COMMITвнизу.

В итоге вы выглядите так:

*filter    

# Allows SMTP access
-A INPUT -p tcp --dport 25 -j ACCEPT

# Allows pop and pops connections 
-A INPUT -p tcp --dport 110 -j ACCEPT
-A INPUT -p tcp --dport 995 -j ACCEPT

# Allows imap and imaps connections 
-A INPUT -p tcp --dport 143 -j ACCEPT
-A INPUT -p tcp --dport 993 -j ACCEPT

COMMIT

Есть несколько других фрагментов, которые он должен иметь, но это должно заставить его работать. После этого вы можете использовать, iptables-save >filenameчтобы получить полностью правильно отформатированный файл сохранения в filename.

Обратите внимание, что если вы используете iptables-saveваши комментарии в файле, они будут потеряны (он заменит весь файл своим аналогичным отформатированным).

цезий
источник
0

Запустить:

iptables-save > /etc/sysconfig/iptables

затем запустите / перезапустите iptablesслужбу

Юнес
источник