Код: Выделить всё
add nat 1 ip from any to any via em0
Код: Выделить всё
nat 1 config log if em0 reset same_ports redirect_port tcp 10.0.0.25:25 25 redirect_port tcp 10.0.0.110:110 110
Как?
Код: Выделить всё
add nat 1 ip from any to any via em0
Код: Выделить всё
nat 1 config log if em0 reset same_ports redirect_port tcp 10.0.0.25:25 25 redirect_port tcp 10.0.0.110:110 110
vadim64 писал(а):ТС, дайте более полный список правил
Код: Выделить всё
ipfw="ipfw -q"
int_if="em0"
int_lan="10.0.0.0/8"
ext_if="em1"
ext_ip="1.2.3.4"
$ipfw flush
$ipfw nat 1 config log if $ext_if reset same_ports deny_in unreg_only \
redirect_port tcp ... список пробрасываемых портов (13 шт)
# loopback
$ipfw add 10 pass ip from any to any via lo0
$ipfw add 20 deny ip from any to 127.0.0.0/8
$ipfw add 30 deny ip from 127.0.0.0/8 to any
# режем локальные адреса на внешнем интерфейсе
$ipfw add 40 deny ip from any to 192.168.0.0/16 in recv $ext_if
$ipfw add 45 deny ip from 192.168.0.0/16 to any in recv $ext_if
$ipfw add 50 deny ip from any to 172.16.0.0/12 in recv $ext_if
$ipfw add 55 deny ip from 172.16.0.0/12 to any in recv $ext_if
$ipfw add 60 deny ip from any to 10.0.0.0/8 in recv $ext_if
$ipfw add 65 deny ip from 10.0.0.0/8 to any in recv $ext_if
$ipfw add 70 deny ip from any to 169.254.0.0/16 in recv $ext_if
$ipfw add 75 deny ip from 169.254.0.0/16 to any in recv $ext_if
# разрешаем все через интерфейс локальной сети
$ipfw add 100 pass ip from any to any via $int_if
# разрешаем ICMP и веб для всех
$ipfw add 1000 nat 1 icmp from $int_lan to any via $ext_if icmptypes 0,3,8,11,12,13,14
$ipfw add 1100 nat 1 tcp from $int_lan to any 80,443 via $ext_if
# разрешаем всё VIP-ам и серверам
$ipfw add 1200 nat 1 ip from table\(1\) to any via $ext_if
# разрешаем бухгалтерии клиет-банки и прочий бухгалтерский софт
$ipfw add 1300 nat 1 tcp from table\(2\) to any 465,... via $ext_if
# ...
# остальное запрещаем
$ipfw add 1999 deny ip from $int_lan to any via $ext_if
# разрешаем ответы для правил выше
$ipfw add 2000 nat 1 ip from any to any via $ext_if
#default 65535 deny ip from any to any
очень ценное сообщениеmak_v_ писал(а):vadim64, ну уже же разбирали не один десяток раз:
Вот из свежего
http://forum.lissyara.su/viewtopic.php? ... 82#p346067
Код: Выделить всё
$ipfw add 1110 nat 1 tcp from $int_lan to me 25 via $ext_if
вот в этом топике Вы предлагали взглянуть на тему по ссылке для поиска решенийmak_v_ писал(а):vadim64, ну уже же разбирали не один десяток раз:
Вот из свежего
http://forum.lissyara.su/viewtopic.php? ... 82#p346067
Это правило срабатывать не будет, т.к. не выполняется условие via $ext_if.vadim64 писал(а): Sabrewulf, попробуйте добавитьКод: Выделить всё
$ipfw add 1110 nat 1 tcp from $int_lan to me 25 via $ext_if
Код: Выделить всё
ipfw add 90 nat 1 tcp from $int_lan to me 443
Код: Выделить всё
#tcpdump -i em0 'tcp port 443' | grep 10.0.1.100
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on em0, link-type EN10MB (Ethernet), capture size 65535 bytes
12:14:15.472536 IP 10.0.1.100.57173 > 10.0.0.143.https: Flags [S], seq 3733476007, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:15.472562 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:15.472726 IP 10.0.1.100.57174 > 10.0.0.143.https: Flags [S], seq 1031767560, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:15.472737 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:18.467745 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:18.467751 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:18.476979 IP 10.0.1.100.57173 > 10.0.0.143.https: Flags [S], seq 3733476007, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:18.476996 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:18.477001 IP 10.0.1.100.57174 > 10.0.0.143.https: Flags [S], seq 1031767560, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:18.477008 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:21.467791 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:21.467797 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:24.477096 IP 10.0.1.100.57173 > 10.0.0.143.https: Flags [S], seq 3733476007, win 8192, options [mss 1460,nop,nop,sackOK], length 0
12:14:24.477118 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:24.477121 IP 10.0.1.100.57174 > 10.0.0.143.https: Flags [S], seq 1031767560, win 8192, options [mss 1460,nop,nop,sackOK], length 0
12:14:24.477125 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:27.467741 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:27.467746 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:33.467761 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:33.467767 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:36.472849 IP 10.0.1.100.57180 > 10.0.0.143.https: Flags [S], seq 1120379206, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:36.472875 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:36.472900 IP 10.0.1.100.57181 > 10.0.0.143.https: Flags [S], seq 627968612, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:36.472907 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:39.467760 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:39.467770 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:39.474957 IP 10.0.1.100.57180 > 10.0.0.143.https: Flags [S], seq 1120379206, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:39.474972 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:39.474976 IP 10.0.1.100.57181 > 10.0.0.143.https: Flags [S], seq 627968612, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:39.474981 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:42.467750 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:42.467756 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:42.962598 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [S], seq 4065520194, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
12:14:42.962621 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [S.], seq 1609760230, ack 4065520195, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:42.963652 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [.], ack 1, win 16425, length 0
12:14:42.964112 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [P.], seq 1:187, ack 1, win 16425, length 186
12:14:42.964465 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [P.], seq 1:146, ack 187, win 1026, length 145
12:14:42.966083 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [P.], seq 187:1360, ack 146, win 16388, length 1173
12:14:42.991443 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [P.], seq 146:950, ack 1360, win 1026, length 804
12:14:43.190067 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [.], ack 950, win 16187, length 0
12:14:45.467765 IP 10.0.0.143.https > 10.0.1.100.57174: Flags [S.], seq 127519211, ack 1031767561, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:45.467770 IP 10.0.0.143.https > 10.0.1.100.57173: Flags [S.], seq 2021188711, ack 3733476008, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:45.470074 IP 10.0.1.100.57180 > 10.0.0.143.https: Flags [S], seq 1120379206, win 8192, options [mss 1460,nop,nop,sackOK], length 0
12:14:45.470087 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:45.470090 IP 10.0.1.100.57181 > 10.0.0.143.https: Flags [S], seq 627968612, win 8192, options [mss 1460,nop,nop,sackOK], length 0
12:14:45.470094 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:47.997850 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [P.], seq 950:987, ack 1360, win 1026, length 37
12:14:47.997881 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [F.], seq 987, ack 1360, win 1026, length 0
12:14:47.998377 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [.], ack 988, win 16178, length 0
12:14:47.998571 IP 10.0.1.100.57185 > 10.0.0.143.https: Flags [F.], seq 1360, ack 988, win 16178, length 0
12:14:47.998601 IP 10.0.0.143.https > 10.0.1.100.57185: Flags [.], ack 1361, win 1026, length 0
12:14:48.467774 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:48.467783 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:54.467771 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:14:54.467781 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:15:06.467776 IP 10.0.0.143.https > 10.0.1.100.57180: Flags [S.], seq 3304254948, ack 1120379207, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
12:15:06.467781 IP 10.0.0.143.https > 10.0.1.100.57181: Flags [S.], seq 3027749728, ack 627968613, win 65535, options [mss 1460,nop,wscale 6,sackOK,eol], length 0
Код: Выделить всё
$ipfw add 1110 nat 1 tcp from $int_lan to me 25 via $int_if
Код: Выделить всё
nat 1 config log if em0 redirect_port tcp 192.168.3.2:22 2222
add 1000 nat 1 ip from any to any via em0
add 1001 nat 1 ip from any to any via em1
Ждем эпических коментариев!hizel писал(а):Включить nat на внутреннем интерфейсе и все заработает. Типа(em0 внешний, em1 внутренний):
Засолить по вкусу.Код: Выделить всё
nat 1 config log if em0 redirect_port tcp 192.168.3.2:22 2222 add 1000 nat 1 ip from any to any via em0 add 1001 nat 1 ip from any to any via em1