Имя пользователя:
Пароль:
 

Название темы: Интернет шлюз на FreeBSD.
Показать сообщение отдельно

Аватара для kyzmi4

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


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

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


Помогите в решении вопроса с IPFW.

Есть очевидное правило:
PHP код: Выделить весь код

${fwcmdadd allow tcp from any to me dst-port 22 


Я полагаю его выполнение, что все (0.0.0.0/0) могут подлючится ко мне на порту 22.
А вот фиг батенька, проходят три пакета и все, putty на ноутбуке сообщает Connection timed out.
tcpdump -ni xl0 port 22:
PHP код: Выделить весь код

11:5719.713452 IP 192.168.1.10.8518 192.168.1.1.22Flags [S], seq 1770059954win 65535options [mss 1460,nop,wscale 3,nop,nop,TS val 0 ecr 0,nop,nop,sackOK], lenght 0 


И так 3 раза, счетчик правила щелкает.
Также с правилом:
PHP код: Выделить весь код

${fwcmdadd allow tcp from any to ${oip80 via fxp0 


ОЧень долго мучался с DHCPD, победил.
rc.conf:
PHP код: Выделить весь код

hostname="inet.fms"
keymap="ru.koi8-r.win"
font8x8="koi8-r-8x8"
font8x14="koi8-r-8x14"
font8x16="koi8-r-8x16"
keyrate="fast"
defaultrouter="21x.100.148.53"
firewall_enable="YES"
firewall_script="/etc/rc.firewall.my"
sshd_enable="YES"
named_enable="YES"
#named_flags="-u bind -g wheel"
apache22_enable="YES"
ifconfig_fxp0="inet 21x.100.148.54  netmask 255.255.255.252"
ifconfig_xl0="inet 192.168.1.1 netmask 255.255.255.0"
dhcpd_enable="YES"
dhcpd_ifaces="xl0"
squid_enable="YES" 

rc.firewall.my:
PHP код: Выделить весь код

#!/bin/sh -
fwcmd="/sbin/ipfw"
#Внешний
oif="fxp0"
oip="21x.100.148.54"

#Внутренний
iif="xl0"
iip="192.168.1.1"
MyLan="192.168.1.0/24"

${fwcmd} -f flush

#loop
${fwcmdadd allow all from any to any via lo0

#ICMP
${fwcmdadd allow icmp from any to any icmptype 0,3,4,8,11

#SSH
${fwcmdadd allow tcp from any to me 22

#DNS
${fwcmdadd allow udp from any to any 53
${fwcmdadd allow udp from any 53 to any

#DHCP
${fwcmdadd allow udp from any to any 67 via ${iif}
${
fwcmdadd allow udp from any 68 to any via ${iif}
${
fwcmdadd allow udp from any 67 to any via ${iif}
${
fwcmdadd allow udp from any to any 68 via ${iif}

#WWW
${fwcmdadd allow tcp from any to ${oip80 via ${oif}

#SQID
${fwcmdadd fwd 127.0.0.1,3128 tcp from ${MyLanto any 80 via ${oif

Про сквид я вообще пока не зарекаюсь.

Извините меня!
Должны быть правила для входящего и исходящего.
SSH дополнил:
${fwcmd} add allow tcp from me 22 to any И все заработало
WWW дополнил:
${fwcmd} add allow tcp from ${oip} to any via ${oif} И тоже все заработало.
Но все равно, мне кажется, что где-то проще можно сделать

Последний раз редактировалось kyzmi4, 04-04-2011 в 12:33. Причина: ip роутера спалил


Отправлено: 12:16, 04-04-2011 | #12

Название темы: Интернет шлюз на FreeBSD.