Я хочу, чтобы iptables фильтровал только один интерфейс eth0, который обращен к WAN. Как это может быть сделано? И я хочу, чтобы порты ftp и ssh были открыты на eth0.
Пожалуйста, прочитайте справочные страницы iptables - или, если я неправильно понял вашу проблему, уточните вопрос.
Яри Йокинен
Ответы:
25
Таким образом, для всех интерфейсов, кроме одного, вы хотите принимать весь трафик, а на eth0 вы хотите отбросить весь входящий трафик, кроме ftp и ssh.
Во-первых, мы можем установить политику приема всего трафика по умолчанию.
ПРЕДУПРЕЖДЕНИЕ!!! Сделайте «iptables -P ...» перед «iptables -F». Если ваши текущие правила по умолчанию настроены на отбрасывание трафика, запуск -F заблокирует вас из вашего ящика. Вот почему рекомендуется придерживаться политики по умолчанию, разрешающей, и специально добавлять правило для удаления всего остального трафика.
Coops
8
Нечто подобное должно сделать работу:
iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
Довольно много места (хотя, может быть, немного приятнее, чем «Отбрасывать ВСЕ» на интерфейсе WAN, а?) - Напишите правила для фильтрации интерфейса, который вы хотите фильтровать, и всего ACCEPTостального на других интерфейсах.
voretaq7
4
Возможность указать интерфейс в правиле Iptables является -i, например: -i eth0.
Последнее правило - отклонить любой другой пакет, который не соответствует первым двум правилам. Все правила iptablesвыполняются в указанном порядке, поэтому правило отклонения пакетов всегда последнее.
Ответы:
Таким образом, для всех интерфейсов, кроме одного, вы хотите принимать весь трафик, а на eth0 вы хотите отбросить весь входящий трафик, кроме ftp и ssh.
Во-первых, мы можем установить политику приема всего трафика по умолчанию.
Затем мы можем сбросить ваши правила брандмауэра.
Теперь можно сказать, что мы хотим разрешить входящий трафик на eth0, который является частью соединения, которое мы уже разрешили.
Также, что мы хотим разрешить входящие ssh-соединения на eth0.
Но что-либо еще поступающее на eth0 должно быть отброшено.
Для более подробной информации смотрите эту статью CentOS вики .
FTP сложнее, чем ssh, поскольку он может использовать произвольный порт, поэтому посмотрите этот предыдущий вопрос .
источник
Нечто подобное должно сделать работу:
источник
ACCEPT
остального на других интерфейсах.Возможность указать интерфейс в правиле Iptables является
-i
, например:-i eth0
.источник
Это очень просто, когда вы создаете
iptables
правило, тогда вы должны указать интерфейс. Опция указать карту LAN, на которойiptables
должно работать-i
Следующие правила могут дать вам хороший пример
Последнее правило - отклонить любой другой пакет, который не соответствует первым двум правилам. Все правила
iptables
выполняются в указанном порядке, поэтому правило отклонения пакетов всегда последнее.источник