The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"natd рубит пакет"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [ Отслеживать ]

"natd рубит пакет"  
Сообщение от scayn (ok) on 02-Янв-09, 12:41 
Доброго времени суток!
Уже весь моз взорвал, не могу разобраться. Правило
${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
рубит пакеты, не дает соединиться с машиной (freebsd) по ssh, сама машина может пинговать сервера только по ip адресу, а например ping ya.ru результатов не дает.

в rc.firewall оставил только правила:

${ipfw} add allow ip from any to any via lo0
${ipfw} add divert natd ip from ${lan_in}/24 to any out via ${intf_out}
${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
${ipfw} add allow all from any to any

rc.conf

firewall_type="/etc/rc.firewall"
natd_enable="YES"
natd_interface="rl0"
natd_flags="-f /etc/natd.conf"


Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "natd рубит пакет"  
Сообщение от daloman on 02-Янв-09, 15:42 
>[оверквотинг удален]
>${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
>
>${ipfw} add allow all from any to any
>
>rc.conf
>
>firewall_type="/etc/rc.firewall"
>natd_enable="YES"
>natd_interface="rl0"
>natd_flags="-f /etc/natd.conf"

Посмотрите внимательней, что у Вас есть что:
${intf_out} - что за интерфейс?
${interf_out} - что за интерфейс?

Не мучьте себя, замените одним правилом:


${ipfw} add divert natd ip from any to any via ${внешний_интерфейс}

Если хотите получать доступ по ssh извне к своей машине, добавляете правилом выше (перед NAT):


${ipfw} add allow all from any to me 22 in via ${внешний_интерфейс}

А как у Вас выглядит rc.firewall?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "natd рубит пакет"  
Сообщение от scayn (ok) on 03-Янв-09, 03:45 
${intf_out} и ${interf_out} - это один внешний интерфейс (ссори за опечатку, торопился)

rc.firewall так и выглидит:
${ipfw} add allow ip from any to any via lo0
${ipfw} add divert natd ip from ${lan_in}/24 to any out via ${interf_out}
${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
${ipfw} add allow all from any to any
ну плюс еще описание переменных.

На самом деле меня больше интересует не поиск альтернатив, а сама суть: почему не работает традиционным способом, где я мог ошибиться или же это случайный глюк.
доступ по ссх рубит 3-е правило.
daloman  за совет спасибо, как закончатся выходные (машина на работе) обязательно испытаю.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "natd рубит пакет"  
Сообщение от Michael (??) on 03-Янв-09, 13:58 
переменная net.inet.ip.forwarding установлена?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "natd рубит пакет"  
Сообщение от scayn (ok) on 04-Янв-09, 21:58 
>переменная net.inet.ip.forwarding установлена?

Установлена и равна "1"

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "natd рубит пакет"  
Сообщение от daloman on 05-Янв-09, 00:26 
>[оверквотинг удален]
>
>${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
>
>${ipfw} add allow all from any to any
>ну плюс еще описание переменных.
>
>На самом деле меня больше интересует не поиск альтернатив, а сама суть:
>почему не работает традиционным способом, где я мог ошибиться или же
>это случайный глюк.
>доступ по ссх рубит 3-е правило.

Собственно, все верно, если у Вас демон natd запускается с ключем -d или, как мне думается, конкретно у Вас в /etc/natd.conf указана опция


deny_incoming yes

Правило заворачивает все пакеты демону natd, а тот обрабатывает пакеты только от тех адресов, на которые он до этого уже обрабатывал исходящие пакеты и "знает" внутреннюю таблицу трансляции адресов.
Если же соединение устанавливается с внешнего адреса, то он отвергает его. Если Вы установите эту опцию в значение "No", тогда демон будет создавать запись в своей локальной таблице трансляции адресов для IP-адреса, которому предназначен пакет, и соответственно - передавать его по назначению.
Об этом можете более подробно почитать в man natd.

Если же указывать ключ -d для демона, тогда нужно отдельным правилом выше этого:


${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}

разрешать входящие пакты необходимых протоколов, таких как ssh, smtp и т.д.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "natd рубит пакет"  
Сообщение от scayn (ok) on 05-Янв-09, 09:59 
Собственно проблема даже не в том, что закрывается доступ по ssh, это я могу победить, а втом, что все пакеты вообще где то теряются. складывается такое ощушение что, интерфейс смотрящий в интернет блокируется правилом:
>${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}

притом опция deny_incoming yes не указана (пробовал даже устанавливать deny_incoming no).
Меня всё чаще посещают мысли о переустановки фри, но это не спортивно. в общем ни чего из вышеописанного не помогает :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "natd рубит пакет"  
Сообщение от daloman email on 05-Янв-09, 14:23 
>Собственно проблема даже не в том, что закрывается доступ по ssh, это
>я могу победить, а втом, что все пакеты вообще где то
>теряются. складывается такое ощушение что, интерфейс смотрящий в интернет блокируется правилом:
>
>>${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
>
>притом опция deny_incoming yes не указана (пробовал даже устанавливать deny_incoming no).
>Меня всё чаще посещают мысли о переустановки фри, но это не спортивно.
>в общем ни чего из вышеописанного не помогает :(

Не только не спортивно, но и очень вредно.

Давайте попробуем разобраться где затык.
Можете прислать мне на почту или полностью процитировать здесь файлы конфигурации:
1. /etc/rc.conf
2. /etc/rc.firewall
3. /etc/natd.conf
а также, привести полный вывод команд:

# uname -a
# ipfw show

что валит в консоль:
# /etc/netstart

И желательно, файл конфигурации ядра, если пересобирали его.
Если хотите, стучитесь в асю - 273222596

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "natd рубит пакет"  
Сообщение от daloman on 05-Янв-09, 21:06 
>Собственно проблема даже не в том, что закрывается доступ по ssh, это
>я могу победить, а втом, что все пакеты вообще где то
>теряются. складывается такое ощушение что, интерфейс смотрящий в интернет блокируется правилом:
>
>>${ipfw} add divert natd ip from any to ${ip_out} in via ${interf_out}
>
>притом опция deny_incoming yes не указана (пробовал даже устанавливать deny_incoming no).
>Меня всё чаще посещают мысли о переустановки фри, но это не спортивно.
>в общем ни чего из вышеописанного не помогает :(

И, кстати, о птичках, чтобы подтвердить или опровергнуть ощущения, посмотрите, правило вообще отрабатывает? Например, если включена опция логгирования для ядра, перед этим правилом добавьте следующее:

${ipfw} add divert natd log logamount 2000 ip from any to ${ip_out} in via ${interf_out}

и посмотрите, что пишется в логи, когда пытаетесь установить соединение извне к этой машине:
# tail -f /var/log/security

Также, можно поглядеть пакеты tcpdump'ом (можно очень много информации собрать), или, к примеру, утилитой trafshow.

Я на виртуалках эмулирую ситуацию - все проходит именно так как я и описывал.

И кстати, еще как вариант, родился вопрос, а перед внешним интерфейсом, случайно не стоит какая-нибудь железяка, на которой рубятся пакеты? они доходят до внешнего интерфейса машины? Желательно посмотреть логи пакетного фильтра.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру