Здравствуйте.
Помогите пожалуйста со скриптом SuSEfirewall2.
Как сделать его настроить таким образом, что бы iptables пропускал весь трафик за исключением определённого?
мне нужно дропнуть UDP пакеты с разных IP имеющие исходный порт XXX и порт(ы) значения YYY(:ZZZ)
Думаю надо использовать правило FW_SERVICES_DROP_EXT или INT, в зависимости от того для какой зоны хотите создать правило.
Если графического интерфейса не достаточно для настройки Firewall-а SUSE, надо лезть в фаил /etc/sysconfig/SuSEfirewall2 и править в ручную. Если и настроек в файле будет не достаточно то можно создавать свои дополнительные правила iptables.
Графического интерфейса нет вообще, через yast мало возможностей, правил /etc/sysconfig/SuSEfirewall2
использовал FW_SERVICES_DROP_EXT
если использовать только его, то сервер перестаёт быть доступен через внешний интерфейс, если добавлять в FW_SERVICES_EXT_UDP то перестаёт отрабатывать FW_SERVICES_DROP_EXT
для примера у меня было прописано так
FW_SERVICES_EXT_UDP=“XXX:YYY”
FW_SERVICES_DROP_EXT=“0/0,udp,XXX:YYY,1:1024”
В таком варианте в iptables добавляются правила сначала разрешающие FW_SERVICES_EXT_UDP=“XXX:YYY” а уже потом FW_SERVICES_DROP_EXT соответственно второе правило запрещающее в данном случае не работает.
Под графическим интерфейсом я конечно же подразумевал именно яст.
Попробуйте прочитать про все опции думаю поймете как их можно использовать. Да конечно это надстройка над iptables, но настраивается она совсем по другому, предполагается что это должно упростить настройку. В вашем случае надо забыть про iptables и представить что это самостоятельный фаервол. В крадце:
Для того что бы открыть все я бы просто добавил интерфейс во внутреннюю зону, и убедился что опция FW_PROTECT_FROM_INT=“no”, или если надо допускать пакеты только с определенных адресов то можно использовать опцию доверять определенным сетям.
Тут я не очень понял запись, получается вы открываете и блокируете одни и порты XXX:YYY. В любом случае по моему это некорректная запись так как если вы хотели блокировать 2 диапазона, то надо писать через пробел, примерно так “0/0,udp,XXX:YYY 0/0,udp,1:1024”
Так же если хотите открыть только верхние порты, можно использовать опцию FW_ALLOW_INCOMING_HIGHPORTS_UDP
Я не уверен что эти две опции должны нормально в месте работать, тут надо читать описание, что чего перекрывает, Например знаю точно что опции FW_SERVICES_EXT* точно перекрывают опции FW_SERVICES_ACCEPT*
Кстати может быть именно их стоит использовать для открытия всех портов, а потом закрытия через указанные выше.