Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по FreeBSD » FreeBSD - Задача с IPFW+NAT

Ответить
Настройки темы
FreeBSD - Задача с IPFW+NAT
zlx zlx вне форума

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго дня суток! Администрирую машину на ОС FreeBSD 7.2, настроен ipfw, кастом-ядро. Собственно, недавно настроил проброс некоторых портов извне в локальну сеть на основе семерочного NAT-а (IPFW+NAT), и тут выяснил что не могу закрыть доступ к интересующим мне портам, по причине того что трафик заходит в НАТ и соответственно открывается доступ всем к любому порту....Вот правила фаервола


Код: Выделить весь код
#!/bin/sh


FwCMD="/sbin/ipfw -q"
LanIn="rl0"
LanOut="rl1"
IpIn="192.168.0.5"
IpOut="1.2.3.4"
NetMask="24"

local_1="192.168.0.6"
local_2="192.168.0.7"


${FwCMD} -f flush
${FwCMD} -f pipe flush
${FwCMD} -f queue flush


#${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0

${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any


# disable x-scan
${FwCMD} add reject tcp from any to any tcpflags fin, syn, rst, psh, ack, urg
# disable N-scan
${FwCMD} add reject tcp from any to any tcpflags !fin, !syn, !rst, !psh, !ack, !urg
# disable FIN-scan
${FwCMD} add reject tcp from any to any not established tcpflags fin
# disable IP-Spoof
${FwCMD} add reject log ip from any to any not verrevpath in
# limiti
${FwCMD} add allow tcp from any to ${IpOut} 80 limit src-addr 15

#rubim chastnie seti na vneshke
${FwCMD} add deny ip from any to 192.168.0.0/16 in recv ${LanOut}
${FwCMD} add deny ip from 192.168.0.0/16 to any in recv ${LanOut}
${FwCMD} add deny ip from any to 172.16.0.0/12 in recv ${LanOut}
${FwCMD} add deny ip from 172.16.0.0/12 to any in recv ${LanOut}
${FwCMD} add deny ip from any to 10.0.0.0/8 in recv ${LanOut}
${FwCMD} add deny ip from 10.0.0.0/8 to any in recv ${LanOut}
${FwCMD} add deny ip from any to 169.254.0.0/16 in recv ${LanOut}
${FwCMD} add deny ip from 169.254.0.0/16 to any in recv ${LanOut}


#spamers
${FwCMD} add deny ip from 62.175.248.0/21 to any

# ICMP
${FwCMD} add deny icmp from any to any frag
${FwCMD} add allow icmp from any to any via ${LanIn}
${FwCMD} add allow icmp from any to ${IpOut} in via ${LanOut} icmptype 3,8,12
${FwCMD} add allow icmp from ${IpOut} to any out via ${LanOut} icmptype 0,3,4,11,12
${FwCMD} add allow icmp from ${IpOut} to any out via ${LanOut} frag


#server v inet
${FwCMD} add allow tcp from any to any out via ${LanIn}
${FwCMD} add allow udp from any to any out via ${LanIn}


#dns
${FwCMD} add allow udp from any 53 to me in via ${LanOut}
${FwCMD} add allow udp from any 53 to me in via ${LanIn}

#ssh server
${FwCMD} add allow tcp from any to any 22 in via ${LanIn}
${FwCMD} add allow tcp from any to any 22 in via ${LanOut}

#web server
${FwCMD} add allow tcp from any to any 80 in via ${LanOut}
${FwCMD} add allow tcp from any to any 80 in via ${LanOut}

#ntp time
${FwCMD} add allow udp from any to any 123 via ${LanOut}
${FwCMD} add allow udp from any to any 123 via ${LanIn}


################################ NAT ############################

${FwCMD} nat 1 config log if ${LanOut} same_ports redirect_port tcp ${local_1}:3434 5001 redirect_port tcp ${local_2}:3434 5002
${FwCMD} add nat 1 ip from any to any via ${LanOut}

${FwCMD} nat 2 config log if ${LanIn} reset same_ports
${FwCMD} add nat 2 ip from any to any via ${LanIn}


##################################################################


${FwCMD} add deny log ip from any to any

Как сделать так, чтобы все же можно было прикрыть доступ например к 80-му порту или ограничить доступ к 22 порту? Помогите пожалуйста...Удаление правил разрешающих коннект на 80 порт - ничего не дает, на веб-сервер по прежнему можно попасть...

Отправлено: 23:06, 08-01-2010

 
wp2 wp2 вне форума

Аватара для wp2

Старожил


Сообщения: 284
Благодарности: 21

Профиль | Отправить PM | Цитировать


может поменять местами правила?

Отправлено: 02:57, 09-01-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для WhitePangolin

Старожил


Сообщения: 398
Благодарности: 49

Профиль | Отправить PM | Цитировать


Цитата zlx:
Администрирую машину на ОС FreeBSD 7.2 »
Цитата zlx:
выяснил что не могу закрыть доступ к интересующим мне портам »
А все потому что тупой копипаст чужих конфигов знаний не прибавляет, администратор должен понимать что он делает.
Цитата zlx:
Удаление правил разрешающих коннект на 80 порт - ничего не дает, на веб-сервер по прежнему можно попасть »
Естественно. Если нет ни одного запрещающего правила для того чтобы убить пакет входящий в нат, он в него войдет. Так же как если нет ни одного запрещающего правила способного убить пакет выходящий из ната, то он совершенно свободно достигнет цели.
Вообще вопрос из области: мне в падлу читать маны, скажите как сделать чтобы заработало.
За сим откланиваюсь.

p.s.
Цитата wp2:
может поменять местами правила? »
нет смысла. фаер скопипастен правильный, не хватает банального правила типа deny ip from any to me not dst-port ${allow_ports} in via ${LanOut}

-------
"Будьте реалистами - требуйте невозможного!" (c) Ernesto Che Guevara


Отправлено: 12:58, 09-01-2010 | #3

zlx zlx вне форума Автор темы

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Благодарен вам за выражение своего ЧСВ и вниманию к моей проблеме. Задачу смог решить, добавив директиву deny_in. Было раньше так:

${FwCMD} nat 1 config log if ${LanOut} same_ports redirect_port tcp ${local_1}:3434 5001 redirect_port tcp ${local_2}:3434 5002
${FwCMD} add nat 1 ip from any to any via ${LanOut}


Теперь рабочий вариант:
${FwCMD} nat 1 config log if ${LanOut} deny_in same_ports redirect_port tcp ${local_1}:3434 5001 redirect_port tcp ${local_2}:3434 5002

Больше ничего менять не пришлось! Взял решение отсюда http://zxl.nnov.ru/241-nastrojka-ipf...om-portov.html

Отправлено: 00:25, 10-01-2010 | #4



Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по FreeBSD » FreeBSD - Задача с IPFW+NAT

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
FreeBSD - [решено] IPFW+NAT+MPD mss_sarvarbek Общий по FreeBSD 14 27-02-2009 21:11
FreeBSD - IPFW через какие правила прошел пакет / debuging ipfw lcat Общий по FreeBSD 2 03-02-2009 10:24
FreeBSD - [решено] Динамическое подключение IPFW & NAT Аlchemist Общий по FreeBSD 6 11-08-2008 12:16
Proxy/NAT - Настройка NAT в WS win 2003 server (3 - интерфейса, 2 -NAT ) kopchik Сетевые технологии 13 09-11-2007 17:17
[решено] Проблема NAT'a или уже бог знает чего... (2003RU sp1, DC, DNS, NAT+10 XP ) Solid20 Microsoft Windows NT/2000/2003 14 24-07-2006 10:32




 
Переход