не пускает в p2p через шлюз freebsd

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-19 8:57:33

Добрый день, участники форума!
Уж пару дней бьюсь над проблемкой:
Есть шлюз на фрибсд 7.1, фаервол вкомпилен в ядро, инет раздаётся по НАТу, вобщем ситуация стандартная.
на ipfw открыт 80 порт , 26180-26182 ну и другие... открыто всё одинаковыми правилами , типа:

Код: Выделить всё

 add №_правила allow all from any to any 80
add №_правила allow all from any 80 to any 
Но при проверке через http://connect.majestyc.net/ некоторые порты включая 80-ый пишет что открыт, а 26180 и некоторые другие закрыты. Надо это всё чтоб качать с p2p сетей, раньше не мог вообще зайти на хаб, когда открыл 411 - смог, однако http://connect.majestyc.net/ по прежнему пишет что 441 закрыт. В чём философия правила пробую делать точно такие же как и на 80-ый порт, но проверка показывает, что порт закрыть, в итоге и качать я не могу.
Может кто сталкивался с таким... подскажите :oops:

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

arkan
ст. прапорщик
Сообщения: 559
Зарегистрирован: 2008-08-03 19:58:13
Откуда: Новосибирск
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение arkan » 2009-08-19 9:23:02

если фря как шлюз для остальных компов то тут в ipfw не открывать а пробрасывать роут надо или натом во внутрь разруливать

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-19 9:34:53

arkan писал(а):если фря как шлюз для остальных компов то тут в ipfw не открывать а пробрасывать роут надо или натом во внутрь разруливать
фря действительно шлюз для компов.
Насчёт ната, в его конфигурационном файле я пробовал указывать:

Код: Выделить всё

redirect_port tcp ip_пк_в_сети:26180 26180
redirect_port udp ip_пк_в_сети:26181 26181
но результата положительного это не дало.

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-22 17:48:53

Так никаких идей больше нет ?
До сих пор бьюсь.

mnz_home
проходил мимо

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение mnz_home » 2009-08-22 22:38:47

Откройте все исходящие подключения из внутренней сети, все порты! И вообще, вам нужен stateful фаервол.

Код: Выделить всё

add 10 check-state - самое первое правило, перед loopback

add №_правила allow all from me to any keep-state
add №_правила allow all from 192.168.1.0/24(или какая там у вас) to any keep-state
Сервис проверки порта пишет правильно, порт мало открыть, надо чтобы на нем еще работал сервис. У вас лично как я понимаю хаба directconnect на шлюзе нет? :unknown:

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-22 23:46:54

mnz_home писал(а):Откройте все исходящие подключения из внутренней сети, все порты! И вообще, вам нужен stateful фаервол.

Код: Выделить всё

add 10 check-state - самое первое правило, перед loopback
Переставил в начало перед loopback
mnz_home писал(а):

Код: Выделить всё

 add №_правила allow all from me to any keep-state
add №_правила allow all from 192.168.1.0/24(или какая там у вас) to any keep-state 
добавил правила
mnz_home писал(а): Сервис проверки порта пишет правильно, порт мало открыть, надо чтобы на нем еще работал сервис. У вас лично как я понимаю хаба directconnect на шлюзе нет?
ничего подобного не стоит. Наварачивать лишний софт из-за такой задачи не хочется, хочется решить всё на уровне ipfw+natd.
Проблема осталась.

может листинг конфигов каких нибудь предоставить дабы понятней было?

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-23 14:31:44

насколько я понял p2p надо иметь белый адрес на клиента, тобишь максимум что получиться это всего один клиент, на которого нужные порты натом пробросить в локалку на клиент, или на самом серваке. p2p не только запросы но и отдача... разрулить с одним внешним апишником не выйдет на всех юзверей в сети
:evil:

Alteron
сержант
Сообщения: 230
Зарегистрирован: 2008-07-21 9:35:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Alteron » 2009-08-23 16:28:01

Да ничего там не надо кроме ipfw и nat. zidi правильно написал, но ещё надо правила фиревола написать правильно.
Измеритель верёвочками.

mnz_home
проходил мимо

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение mnz_home » 2009-08-23 22:46:24

zidi
Тут 3 kernel ната, сократите до одного сами. Такой фаервол долгое время стоял у меня на шлюзе. Пробросы портов для p2p тоже есть.

Код: Выделить всё

#!/bin/sh

FwCmd="/sbin/ipfw"

# Interfaces
ext_if="xl0"
int_if="xl1"
wan_inet_if="ng0"
wan_local_if="ng1"
vpn_if="tun0"

# Addresses
ext_ip="xx.xx.xx.xx"
int_ip="xx.xx.xx.xx"
cmp_ip="xx.xx.xx.xx"
nbt_ip="xx.xx.xx.xx"
dns_ip="xx.xx.xx.xx"

# Nets description
wan_local_net="xx.xx.xx.xx/xx"
int_net="xx.xx.xx.xx/xx"
ext_net="xx.xx.xx.xx/xx"
vpn_net="xx.xx.xx.xx/xx"

int_tcp_srvcs="22,80,139,445,1723,901,5006"
int_udp_srvcs="53,137,138"
wan_inet_srvcs="80"
wan_local_srvcs="22,80,1194"
vpn_udp_srvcs="53"
cmp_p2p_ports="4000:4004"
nbt_p2p_ports="4005:4009"

blocked_wan_tcp_srvcs="139,445,3306"
blocked_wan_udp_srvcs="137,138"

icmp_allowed="0,3,8,11"

#${FwCmd} disable one_pass
#${FwCmd} enable one_pass
${FwCmd} -f flush
${FwCmd} -f pipe flush
${FwCmd} -f queue flush

${FwCmd} add 5200 check-state

# loopback
${FwCmd} add 5300 allow all from any to any via lo0
${FwCmd} add 5400 deny all from any to 127.0.0.0/8
${FwCmd} add 5500 deny all from 127.0.0.0/8 to any

# DENY UNUSEFULL TRAFIC
${FwCmd} add 5600 deny log all from any to me frag
${FwCmd} add 5700 deny log all from any to me ipoptions ssrr
${FwCmd} add 5800 deny log all from any to me ipoptions lsrr
${FwCmd} add 5900 deny log all from any to me ipoptions rr
${FwCmd} add 6000 deny log all from any to me ipoptions ts
${FwCmd} add 6100 deny log tcp from any to me tcpflags syn,fin,!ack,
${FwCmd} add 6200 deny log tcp from any to me tcpflags syn,fin,urg,psh,!ack
${FwCmd} add 6300 deny log tcp from any to me tcpflags fin,urg,psh,!ack
${FwCmd} add 6400 deny log tcp from any to me tcpflags fin,!ack
${FwCmd} add 6500 deny log tcp from any to me tcpflags urg,!ack
${FwCmd} add 6600 deny log tcp from any to me tcpflags psh,!ack
${FwCmd} add 6700 deny log tcp from any to any tcpoptions !mss tcpflags syn,!ack
${FwCmd} add 6800 deny log tcp from any to any not established tcpflags fin
${FwCmd} add 6900 deny log tcp from any to any tcpflags fin, syn, rst, psh, ack, urg
${FwCmd} add 7000 deny log tcp from any to any tcpflags !fin, !syn, !rst, !psh, !ack, !urg

${FwCmd} add 7010 deny log tcp from any to any ${blocked_wan_tcp_srvcs} via ${wan_local_if} in
${FwCmd} add 7020 deny log tcp from any to any ${blocked_wan_tcp_srvcs} via ${wan_local_if} in
${FwCmd} add 7030 deny log udp from any to any ${blocked_wan_udp_srvcs} via ${wan_inet_if} in
${FwCmd} add 7040 deny log udp from any to any ${blocked_wan_udp_srvcs} via ${wan_inet_if} in

# incoming rules
${FwCmd} add 7100 allow icmp from any to me icmptypes 8
${FwCmd} add 7200 allow tcp from ${wan_local_net} to me ${wan_local_srvcs} via ${wan_local_if} in
${FwCmd} add 7300 allow tcp from any to me ${wan_inet_srvcs} via ${wan_inet_if} in

#${FwCmd} add 7350 allow gre from me to ${wan_local_net} via ${wan_local_if} out
#${FwCmd} add 7360 allow gre from ${wan_local_net} to me via ${wan_local_if} in

# NAT wan_local
${FwCmd} nat 10 config if ${wan_local_if} deny_in reset log \
  redirect_port tcp ${cmp_ip}:4000 4000 \
  redirect_port tcp ${cmp_ip}:4001 4001 \
  redirect_port tcp ${cmp_ip}:4002 4002 \
  redirect_port tcp ${cmp_ip}:4003 4003 \
  redirect_port tcp ${cmp_ip}:4004 4004 \
  redirect_port udp ${cmp_ip}:4000 4000 \
  redirect_port udp ${cmp_ip}:4001 4001 \
  redirect_port udp ${cmp_ip}:4002 4002 \
  redirect_port udp ${cmp_ip}:4003 4003 \
  redirect_port udp ${cmp_ip}:4004 4004 \
  redirect_port tcp ${nbt_ip}:4005 4005 \
  redirect_port tcp ${nbt_ip}:4006 4006 \
  redirect_port tcp ${nbt_ip}:4007 4007 \
  redirect_port tcp ${nbt_ip}:4008 4008 \
  redirect_port tcp ${nbt_ip}:4009 4009 \
  redirect_port udp ${nbt_ip}:4005 4005 \
  redirect_port udp ${nbt_ip}:4006 4006 \
  redirect_port udp ${nbt_ip}:4007 4007 \
  redirect_port udp ${nbt_ip}:4008 4008 \
  redirect_port udp ${nbt_ip}:4009 4009
${FwCmd} add 7400 nat 10 ip4 from ${int_net},${vpn_net} to ${wan_local_net} via ${wan_local_if} out
${FwCmd} add 7500 nat 10 ip4 from ${wan_local_net} to me via ${wan_local_if} in

# NAT internet
${FwCmd} nat 11 config if ${wan_inet_if} deny_in reset log \
  redirect_port tcp ${cmp_ip}:4000 4000 \
  redirect_port tcp ${cmp_ip}:4001 4001 \
  redirect_port tcp ${cmp_ip}:4002 4002 \
  redirect_port tcp ${cmp_ip}:4003 4003 \
  redirect_port tcp ${cmp_ip}:4004 4004 \
  redirect_port udp ${cmp_ip}:4000 4000 \
  redirect_port udp ${cmp_ip}:4001 4001 \
  redirect_port udp ${cmp_ip}:4002 4002 \
  redirect_port udp ${cmp_ip}:4003 4003 \
  redirect_port udp ${cmp_ip}:4004 4004 \
  redirect_port tcp ${nbt_ip}:4005 4005 \
  redirect_port tcp ${nbt_ip}:4006 4006 \
  redirect_port tcp ${nbt_ip}:4007 4007 \
  redirect_port tcp ${nbt_ip}:4008 4008 \
  redirect_port tcp ${nbt_ip}:4009 4009 \
  redirect_port udp ${nbt_ip}:4005 4005 \
  redirect_port udp ${nbt_ip}:4006 4006 \
  redirect_port udp ${nbt_ip}:4007 4007 \
  redirect_port udp ${nbt_ip}:4008 4008 \
  redirect_port udp ${nbt_ip}:4009 4009
${FwCmd} add 7600 nat 11 ip4 from ${int_net},${vpn_net} to any via ${wan_inet_if} out
${FwCmd} add 7700 nat 11 ip4 from any to me via ${wan_inet_if} in

# NAT on ext LAN
${FwCmd} nat 12 config if ${ext_if} deny_in reset log
${FwCmd} add 7800 nat 12 ip4 from ${int_net},${vpn_net} to ${ext_net} via ${ext_if} out
${FwCmd} add 7900 nat 12 ip4 from ${ext_net} to me via ${ext_if} in

${FwCmd} add 8000 allow tcp from any to ${cmp_ip} 4000-4004 via ${int_if} out
${FwCmd} add 8100 allow udp from any to ${cmp_ip} 4000-4004 via ${int_if} out
${FwCmd} add 8200 allow tcp from any to ${nbt_ip} 4005-4009 via ${int_if} out
${FwCmd} add 8300 allow udp from any to ${nbt_ip} 4005-4009 via ${int_if} out

${FwCmd} add 8400 allow all from ${int_net} to not me via ${int_if}
${FwCmd} add 8500 allow all from ${vpn_net} to not me via ${vpn_if}

${FwCmd} add 8600 allow tcp from ${int_net} to me ${int_tcp_srvcs} in via ${int_if} in
${FwCmd} add 8700 allow udp from ${int_net} to me ${int_udp_srvcs} in via ${int_if} in

${FwCmd} add 8800 allow udp from ${vpn_net} to me ${vpn_udp_srvcs} in via ${vpn_if} in

#${FwCmd} add 8900 allow gre from me to ${int_net} via ${int_if}
#${FwCmd} add 9000 allow gre from ${int_net} to me via ${int_if}

# Allow DHCP
${FwCmd} add 9100 allow udp from 0.0.0.0 68 to 255.255.255.255 67 via ${int_if} out
${FwCmd} add 9200 allow udp from any 67 to me 68 via ${int_if} in
${FwCmd} add 9300 allow udp from any 67 to 255.255.255.255 68 via ${int_if} in

${FwCmd} add 9400 allow all from me to any keep-state
${FwCmd} add 9500 allow udp from any to any keep-state
${FwCmd} add 9600 allow tcp from any to any established

${FwCmd} add 9700 allow icmp from ${int_net},${vpn_net} to any icmptypes ${icmp_allowed}
${FwCmd} add 9800 allow icmp from any to ${int_net},${vpn_net} icmptypes ${icmp_allowed}

${FwCmd} add 9900 deny log all from any to any

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-24 19:50:05

спасибо, поразбираюсь с конфигом mnz_home. О результатах сообщу в любом случае, ибо думаю я не один. Если заработает, скажу где ошибался.

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-27 17:52:51

решил ради эксперименту сделать так:
cat /etc/rc.conf :

Код: Выделить всё

...
natd_enable="YES"
natd_interface="интерфейс_в_инет"
natd_flags="-dynamic -f /etc/natd.conf"

firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="/etc/firewall.conf"
...
cat /etc/firewall.conf :

Код: Выделить всё

add 00100 allow all from any to any
add 00200 divert natd all from any to any
Файл /etc/natd.conf пустой, инет по сетке работает.
Казалось бы куда проще и небезопаснее, но всё таже веб морда говорит:
Failed to connect on port 26180

Где коряга, задача то простейшая ..чую туплю на мелочи совсем. :fool:

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-27 18:01:10

zidi писал(а):решил ради эксперименту сделать так:
cat /etc/rc.conf :

Код: Выделить всё

...
natd_enable="YES"
natd_interface="интерфейс_в_инет"
natd_flags="-dynamic -f /etc/natd.conf"

firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="/etc/firewall.conf"
...
cat /etc/firewall.conf :

Код: Выделить всё

add 00100 allow all from any to any
add 00200 divert natd all from any to any
Файл /etc/natd.conf пустой, инет по сетке работает.
Казалось бы куда проще и небезопаснее, но всё таже веб морда говорит:
Failed to connect on port 26180

Где коряга, задача то простейшая ..чую туплю на мелочи совсем. :fool:

у тя на шлюзе никто не слушает порты клиента п2п,попробуй пробросить их внутрь на локальную машину с клиентом п2п
:evil:

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-27 18:52:40

Bormental писал(а):
zidi писал(а):решил ради эксперименту сделать так:
cat /etc/rc.conf :

Код: Выделить всё

...
natd_enable="YES"
natd_interface="интерфейс_в_инет"
natd_flags="-dynamic -f /etc/natd.conf"

firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="/etc/firewall.conf"
...
cat /etc/firewall.conf :

Код: Выделить всё

add 00100 allow all from any to any
add 00200 divert natd all from any to any
Файл /etc/natd.conf пустой, инет по сетке работает.
Казалось бы куда проще и небезопаснее, но всё таже веб морда говорит:
Failed to connect on port 26180

Где коряга, задача то простейшая ..чую туплю на мелочи совсем. :fool:

у тя на шлюзе никто не слушает порты клиента п2п,попробуй пробросить их внутрь на локальную машину с клиентом п2п
Пробовал в /etc/natd.conf добавлять строчки:

Код: Выделить всё

redirect_port tcp ip_пк_в_сети:26180-26183 26180-26183
redirect_port udp ip_пк_в_сети:26180-26183 26180-26183

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-27 19:26:50

Limewire 6346/6347 TCP/UDP
Morpheus 6346/6347 TCP/UDP
BearShare default 6346 TCP/UDP
Edonkey 4662/TCP
EMule 4662/TCP 4672/UDP
Bittorrent 6881-6889 TCP/UDP
WinMx 6699/TCP 6257/UDP

вобще у каждого клиента п2п и сервера свои порты, узнай у держателя сервера их, думаю так будет правильнее
:evil:

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-27 21:11:05

Bormental писал(а):Limewire 6346/6347 TCP/UDP
Morpheus 6346/6347 TCP/UDP
BearShare default 6346 TCP/UDP
Edonkey 4662/TCP
EMule 4662/TCP 4672/UDP
Bittorrent 6881-6889 TCP/UDP
WinMx 6699/TCP 6257/UDP

вобще у каждого клиента п2п и сервера свои порты, узнай у держателя сервера их, думаю так будет правильнее
порты известны из фака на их офф сайте

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-28 16:14:51

zidi писал(а):
Bormental писал(а):Limewire 6346/6347 TCP/UDP
Morpheus 6346/6347 TCP/UDP
BearShare default 6346 TCP/UDP
Edonkey 4662/TCP
EMule 4662/TCP 4672/UDP
Bittorrent 6881-6889 TCP/UDP
WinMx 6699/TCP 6257/UDP

вобще у каждого клиента п2п и сервера свои порты, узнай у держателя сервера их, думаю так будет правильнее
порты известны из фака на их офф сайте
я так думаю это порты сервака, а тебе нужно пробросить порты клиента на которых он слушает, я п2п не заворачивал так, но почтовый сервак на отдельной машине пробрасывал через фаервол с помощью нат, все пахало. есть проги скана портов, посмотри какие порты поднимаются на стороне клиента
:evil:

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-29 18:17:46

нет... ну у меня просто нет вариантов... но я настырный.
сделал так, в rc.conf написано:

Код: Выделить всё

natd_enable="YES"
natd_interface="re0"
natd_flags="-dynamic -f /etc/natd.conf"

firewall_enable="YES"
#firewall_script="/etc/rc.firewall"
#firewall_type="/etc/firewall.conf"
firewall_type="open"
содержимое /etc/natd.conf

Код: Выделить всё

dynamic         yes
use_sockets     yes
same_ports      yes
redirect_port tcp адрес_пк_в_сети:1025-32000 1025-32000
redirect_port udp адрес_пк_в_сети:1025-32000 1025-32000
redirect_port tcp адрес_пк_в_сети:411 411
и не работает. Помогите с этими несчастными строчками...чтоб было мне счастье.

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-29 19:46:40

natd.conf

Код: Выделить всё

port XXXX
log yes
deny_incoming yes
verbose no
log_denied yes
same_ports yes
use_sockets yes
unregistered_only yes
rc.conf

Код: Выделить всё

natd_enable="YES"
natd_flags="-a A.B.C.D -f /etc/natd.conf"
плюс в natd.conf пробрасывал порт почтового сервака все пахало, правила фаервола еще выложика

потому что это

Код: Выделить всё

add 00100 allow all from any to any
add 00200 divert natd all from any to any
туфта полная, тут диверт никада не сработает
:evil:

Аватара пользователя
zidi
рядовой
Сообщения: 31
Зарегистрирован: 2009-06-07 11:03:11

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение zidi » 2009-08-30 19:52:17

да конфиг ipfw у меня не сурьёзный, хотелось бы чтоб на пальцах на нескольких строках.
вот например чтоб понять в какую часть конфига вставлять диверт, после каких правил его вставлять. Так то конфиг такой:

Код: Выделить всё

add 00100 allow all from any to any via lo0
add 00101 allow all from any to 127.0.0.0/8
add 00102 allow all from 127.0.0.0/8 to any

add 00011 count all from any to any via re0
add 00013 count all from any to any 80 via re0
add 00014 count all from any 80 to any via re0
add 00017 count all from any to any 21 via re0
add 00018 count all from any 21 to any via re0

add divert natd all from any to any via re0

#lan traffic
add 00103 allow all from any to any via re1

#www
add 00301 allow all from any to any 80
add 00302 allow all from any 80 to any

add 00200 allow all from any to any 3389
add 00201 allow all from any 3389 to any

#ssh
add 00303 allow all from any to any 22
add 00304 allow all from any 22 to any

#mail, smtp, pop3, imap
add 00305 allow all from any to any 25
add 00306 allow all from any 25 to any
add 00307 allow all from any to any 110
add 00308 allow all from any 110 to any
add 00315 allow all from any to any 995
add 00316 allow all from any 995 to any
add 00317 allow all from any to any 143
add 00318 allow all from any 143 to any
add 00319 allow all from any to any 993
add 00320 allow all from any 993 to any
#smtp gmail with TLS
add 00321 allow all from any to any 465
add 00322 allow all from any 465 to any
add 00323 allow all from any to any 587
add 00324 allow all from any 587 to any

#dns
add 00309 allow all from any to any 53
add 00310 allow all from any 53 to any

#ftp
add 00601 allow all from any to any 21
add 00602 allow all from any 21 to any
add 00603 allow all from any to any 20
add 00604 allow all from any 20 to any

#mysql
add 00313 allow all from any to any 3306
add 00314 allow all from any 3306 to any

#telnet
add 00401 allow tcp from any to any 23 via re1
add 00402 allow tcp from any 23 to any via re1

add 00403 allow tcp from any to any 67 via re1
add 00404 allow tcp from any 67 to any via re1

#ping allow
add 00405 allow icmp from any to any

#icq allow
add 00500 allow all from any to any 5190
add 00501 allow all from any 5190 to any
add 00502 allow all from any to any 443
add 00503 allow all from any 443 to any

#jabber allow
add 00504 allow all from any to any 5222
add 00505 allow all from any 5222 to any

#p2p
add 00516 allow all from any to any 26180-26183
add 00517 allow all from any 26180-26183 to any
add 00518 allow all from any to any 411
add 00519 allow all from any 411 to any

#radio
add 00514 allow all from any to any 8181
add 00515 allow all from any 8181 to any

#radmin
add 00600 allow all from any to any 4899
add 00601 allow all from any 4899 to any

#itunes - obshaya musica
add 00700 allow all from any to any 3689
add 00701 allow all from any 3689 to any
#Podcast capture
add 00702 allow all from any to any 8170
add 00703 allow all from any 8170 to any
#web sluzhba\potoki itunes radio
add 00704 allow all from any to any 8000-8999
add 00705 allow all from any 8000-8999 to any
#potoki itunes radio
add 00706 allow all from any to any 42000-42999
add 00707 allow all from any 42000-42999 to any

#CVS client/server operations
add 00708 allow all from any to any 2401
add 00709 allow all from any 2401 to any
#CVSup
add 00710 allow all from any to any 5999
add 00711 allow all from any 5999 to any 
re0 - интерфейс подключённый к адсл
re1 - интерфейс подключённый к коммутатору
внейший ip - динамический
адрес re1 - 10.36.1.10
соединение с интенетом по pppoe, вот собственно и все данные.

Аватара пользователя
Bormental
сержант
Сообщения: 267
Зарегистрирован: 2008-09-26 21:26:35
Откуда: подмордорье
Контактная информация:

Re: не пускает в p2p через шлюз freebsd

Непрочитанное сообщение Bormental » 2009-08-30 20:21:45

вначале диверт на нат потом разрешение проходить пакету

Код: Выделить всё

#!/bin/sh
admin="ip"
networks="192.168.0.0/16"
#адрес в инете
r_ip="ip"
#локальный интерфейс
local_if="rl0"
#интернетовский
inet_if="rl1"

ipfw -f flush

ipfw add 100 allow all from any to any via lo0

ipfw add 110 deny log all from any to ${r_ip} setup
ipfw add 120 deny icmp from any to me via ${inet_if} setup
#пропускаем через нат
ipfw add 450 divert 8888 all from any to any via ${inet_if}
#все разрешить, динамич правила не работают через нат, в natd.conf deny_incomin yes (от щимилова извне)
ipfw add 500 allow all from any to any via ${inet_if}
ipfw add 600 check-state
#мне можно все
ipfw add 700 allow all from me to any keep-state
#ssh
ipfw add 800 allow all from ${admin} to me 22 keep-state
#http
ipfw add 1000 allow all from ${networks} to me 80 via ${local_if} keep-state
ipfw add 1110 allow icmp from ${admin} to me keep-state icmptypes 0,8
ipfw add 1200 deny all from any to any
вот почекрыжил до минимума свой фаер, убрал все навороты с огранич скорости и дивертами на транспарент и т.п. грубо говоря минималка, natd.conf выше, смотри разбирайся, правльно настроенный фаервол тут 50% успеха

да кстати ядро то пересобрал с поддержкой фаера дивертов думминетов???)))
:evil: