Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Не понимаю как работает IPFW
 
Здравствуй, уважаемый! Настраивал как-то фаервол IPFW и заболела голова... Как эта штука работает? Пример правила:

"$IPFW" add allow tcp from any to any 80,443 via ppp0
"$IPFW" add allow tcp from any 80,443 to any via ppp0

"$IPFW" add deny all from any to any via ppp0

Вопрос такой: Я разрешаю все от себя на 80,443 и т.п. (см. первое правило) и токо в самом конце указываю что для все закрыто (это как я понят у меня типо правило по умолчанию), это значит что все порты у меня открыты пока последнее правило не будет прочитано?
 
до тех пор пока последнее правило не будет прочитано, пакет не будет никуда пропускаться, а будет стоять и ждать решения "суда" в камере предварительного заключения (так называемом буфере)
 
Цитата
xtension пишет:
Здравствуй, уважаемый! Настраивал как-то фаервол IPFW и заболела голова... Как эта штука работает? Пример правила:

"$IPFW" add allow tcp from any to any 80,443 via ppp0
"$IPFW" add allow tcp from any 80,443 to any via ppp0

"$IPFW" add deny all from any to any via ppp0

Вопрос такой: Я разрешаю все от себя на 80,443 и т.п. (см. первое правило) и токо в самом конце указываю что для все закрыто (это как я понят у меня типо правило по умолчанию), это значит что все порты у меня открыты пока последнее правило не будет прочитано?
IMHO правильней будет так:
"$IPFW" add allow tcp from any to me 80,443 keep-state via ppp0"
"$IPFW" add deny all from any to any via ppp0
 
Цитата
xtension пишет:

Я разрешаю все от себя на 80,443 и т.п. (см. первое правило) и токо в самом конце указываю что для все закрыто (это как я понят у меня типо правило по умолчанию), это значит что все порты у меня открыты пока последнее правило не будет прочитано?
Это значит что все порты у тебя будут как бы закрыты,если к тебе будут прицепляться с портов кроме 80 и 443. Если же сделать
# netcat -p 80 твой_ip  любой порт
или
# nmap --source_port 443 твой_ip
чтобы SRC PORT в пакетах был равен 80 или 443 соответсвенно, то такие пакеты будут пропускаться  твоими правилами(т.к. ими разрешены как исходящие соединения на 80 и 443, так и входящие сооединения с 80 и 443 портов) и твоя машина позволит соединения к _любым_портам_ с 80 и 443 портов, т.е. фактически она открыта.

Правильнее было бы проверять состояние флага SYN во втором правиле, чтобы твоя машина не принимала входящих соединений, а принимала бы только пакеты летящие к тебе по уже установленным соединениям(установлены флаги ACK или RST, но не флаг SYN, к-рый установлен только при инициации TCP-соединения):

"$IPFW" add allow tcp from any to any 80,443 via ppp0
"$IPFW" add allow tcp from any 80,443 to any via ppp0 established

либо, как сказал Garin:

"$IPFW" add allow tcp from me to any 80,443 via ppp0 keep-state"
 
Советую почитать доку по ipfw http://ipfw.ism.kiev.ua/
Страницы: 1
Читают тему