Re: загрузка правил iptables
On Friday 27 February 2009 11:40:46 Artem Chuprina wrote:
> AB> А я бы не придумал лучше. ferm дишь транслирует правила с некого
> AB> иерархического языка на язык таблиц iptables. по сути ferm то же
> AB> самое, что и iptables, но позволяет групировать правила по общим
> AB> полям. можно на шелле делать также, только язык ferm красивее шелла
>
> Эээ... А (поскольку мне, в общем, лениво читать доку на то, что мне
> вроде как не необходимо) можно привести _реальный_ пример, где ferm, по
> твоему мнению, выигрывает у прямого применения iptables?
Пример из хелпа по ferm:
текст
chain (INPUT OUTPUT) {
proto (udp tcp) ACCEPT;
}
разворачивается им в:
iptables -A INPUT -p tcp -j ACCEPT
iptables -A OUTPUT -p tcp -j ACCEPT
iptables -A INPUT -p udp -j ACCEPT
iptables -A OUTPUT -p udp -j ACCEPT
Мне первое читать проще. А вам?
Подобные сокращения он может делать и в других местах.
table filter {
chain INPUT {
policy DROP;
mod state state INVALID DROP;
mod state state (ESTABLISHED RELATED) ACCEPT;
interface lo ACCEPT;
proto icmp ACCEPT;
proto tcp dport (ssh smtp ftp http) ACCEPT;
}
}
разворачивается в:
iptables -A INPUT -P DROP
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
Лично мне первый вариант читать проще.
> Потому как в моих файрволах мне не видно, что можно заметно улучшить в
> языке, не ослабляя выразительных возможностей...
Надеюсь приведённых примеров хватит, чтобы сделать вывод.
Выразительных возможностей ferm нисколько не ослабляет, так как весь его язык
однозначно транслируется в iptables.
Reply to: