Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-23 14:08:27
Есть роутер. Есть 2 сетевых интерфейса: tun0 и ue0, внешний и внутренний соответственно.
Какой должен быть набор правил для ipfw, чтоб он пропускал в локалку\из локалки абсолютно все пакеты, а доступ к роутеру был только по определённым портам?
Вот такое почему-то не работает. Пинги с локалки идут, но сёрфинг и прочие сервисы из локалки не арбайтают:
Код: Выделить всё
#!/bin/sh
natd -n tun0
/sbin/ipfw -f flush
/sbin/ipfw add check-state
/sbin/ipfw add allow ip from any to any via lo0
/sbin/ipfw add deny ip from any to 127.0.0.0/8
/sbin/ipfw add deny ip from 127.0.0.0/8 to any
/sbin/ipfw add allow icmp from any to any
/sbin/ipfw add allow ip from any to any via ue0
/sbin/ipfw add nat 1 config log if tun0 reset same_ports allow_in
/sbin/ipfw add nat 1 ip from any to any via tun0
/sbin/ipfw add allow all from any to any established
/sbin/ipfw add allow all from 78.36.105.207 to any out xmit tun0
/sbin/ipfw add allow udp from any 53 to any via tun0
/sbin/ipfw add allow udp from any to any 53 via tun0
/sbin/ipfw add allow udp from any to any 123 via tun0
/sbin/ipfw add allow all from any to any 27015,35084 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 21 via tun0
/sbin/ipfw add allow icmp from any to any icmptypes 0,8,11
/sbin/ipfw add allow tcp from any to 78.36.105.207 25 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 22 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 110 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 143 via tun0
/sbin/ipfw add allow all from any to 78.36.105.207 1024-65535 via tun0
gwaewion
-
Хостинг HostFood.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/
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-23 15:57:48
Вроде natd. А в чём разница? У меня было стойкое представление, что существует только natd.
gwaewion
-
Dog
- лейтенант
- Сообщения: 723
- Зарегистрирован: 2006-09-21 10:34:36
- Откуда: Kharkiv, Ukraine
-
Контактная информация:
Непрочитанное сообщение
Dog » 2010-07-23 16:16:35
gwaewion писал(а):Вроде natd. А в чём разница? У меня было стойкое представление, что существует только natd.
Код: Выделить всё
/sbin/ipfw add nat 1 config log if tun0 reset same_ports allow_in
/sbin/ipfw add nat 1 ip from any to any via tun0
И где тут natd?
Изучите как следует статью.
Oh my God, they killed init! Bastards!
Dog
-
Dog
- лейтенант
- Сообщения: 723
- Зарегистрирован: 2006-09-21 10:34:36
- Откуда: Kharkiv, Ukraine
-
Контактная информация:
Непрочитанное сообщение
Dog » 2010-07-23 16:31:09
А, точно. Я в заголовок скрипта посмотреть не удосужился, сразу стал правила изучать.
Ну тогда конечно, тогда все серьезно
Oh my God, they killed init! Bastards!
Dog
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-24 10:59:49
Прочитал статью. Пересобрал ядро с нужными параметрами. Но по прежнему из локалки проходят только пинги.
Код: Выделить всё
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw add check-state
#/sbin/ipfw add allow ip from any to any via lo0
#/sbin/ipfw add deny ip from any to 127.0.0.0/8
#/sbin/ipfw add deny ip from 127.0.0.0/8 to any
#/sbin/ipfw add allow icmp from any to any
/sbin/ipfw add allow ip from any to any via ue0
/sbin/ipfw add allow all from any to any established
/sbin/ipfw add allow all from 78.36.105.207 to any out xmit tun0
/sbin/ipfw add allow udp from any 53 to any via tun0
/sbin/ipfw add allow udp from any to any 53 via tun0
/sbin/ipfw add allow udp from any to any 123 via tun0
/sbin/ipfw add allow all from any to any 27015,35084 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 21 via tun0
/sbin/ipfw add allow icmp from any to any icmptypes 0,8,11
/sbin/ipfw add allow tcp from any to 78.36.105.207 25 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 22 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 110 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 143 via tun0
/sbin/ipfw add allow all from any to 78.36.105.207 1024-65535 via tun0
/sbin/ipfw nat 1 config log if tun0 reset same_ports deny_in
/sbin/ipfw add nat 1 ip from any to any via tun0
gwaewion
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-26 13:15:51
ifconfig
Код: Выделить всё
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 00:1c:c0:c3:9c:36
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
ipfw0: flags=8801<UP,SIMPLEX,MULTICAST> metric 0 mtu 65536
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
ue0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=80000<LINKSTATE>
ether 00:80:c8:3c:01:79
inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1492
options=80000<LINKSTATE>
inet 78.36.105.207 --> 212.48.193.37 netmask 0xffffff00
Opened by PID 412
ipfw show
Код: Выделить всё
00100 0 0 check-state
00200 462 39476 allow ip from any to any via lo0
00300 0 0 deny ip from any to 127.0.0.0/8
00400 0 0 deny ip from 127.0.0.0/8 to any
00500 240 20396 allow icmp from any to any
00600 6310 1644253 allow ip from any to any via ue0
00700 57900 42005902 allow ip from any to any established
00800 6792 601633 allow ip from 78.36.105.207 to any out xmit tun0
00900 73 10751 allow udp from any 53 to any via tun0
01000 13 804 allow udp from any to any dst-port 53 via tun0
01100 0 0 allow udp from any to any dst-port 123 via tun0
01200 2 96 allow ip from any to any dst-port 27015,35084 via tun0
01300 0 0 allow tcp from any to 78.36.105.207 dst-port 21 via tun0
01400 0 0 allow icmp from any to any icmptypes 0,8,11
01500 0 0 allow tcp from any to 78.36.105.207 dst-port 25 via tun0
01600 0 0 allow tcp from any to 78.36.105.207 dst-port 22 via tun0
01700 0 0 allow tcp from any to 78.36.105.207 dst-port 110 via tun0
01800 0 0 allow tcp from any to 78.36.105.207 dst-port 143 via tun0
01900 1414 243455 allow ip from any to 78.36.105.207 dst-port 1024-65535 via tun0
02000 85 4575 nat 1 ip from any to any via tun0
65535 72 3472 deny ip from any to any
gwaewion
-
BirdGovorun
- лейтенант
- Сообщения: 878
- Зарегистрирован: 2009-10-20 20:27:13
- Откуда: Харьков.
Непрочитанное сообщение
BirdGovorun » 2010-07-26 14:06:57
Пинги идут, что в инете открыть не можете?
Если сайты, то надо 80(http) открыть.
BirdGovorun
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-26 14:25:23
Код: Выделить всё
Flushed all rules.
00100 check-state
00200 allow ip from any to any via lo0
00300 deny ip from any to 127.0.0.0/8
00400 deny ip from 127.0.0.0/8 to any
00500 allow icmp from any to any
00600 allow ip from any to any via ue0
00700 allow ip from any to any established
00800 allow ip from 78.36.105.207 to any out xmit tun0
00900 allow udp from any 53 to any via tun0
01000 allow udp from any to any dst-port 53 via tun0
01100 allow udp from any to any dst-port 123 via tun0
01200 allow ip from any to any dst-port 27015,35084 via tun0
01300 allow tcp from any to 78.36.105.207 dst-port 21,80 via tun0
01400 allow icmp from any to any icmptypes 0,8,11
01500 allow tcp from any to 78.36.105.207 dst-port 25 via tun0
01600 allow tcp from any to 78.36.105.207 dst-port 22 via tun0
01700 allow tcp from any to 78.36.105.207 dst-port 110 via tun0
01800 allow tcp from any to 78.36.105.207 dst-port 143 via tun0
01900 allow ip from any to 78.36.105.207 dst-port 1024-65535 via tun0
ipfw nat 1 config if tun0 log deny_in same_ports reset redirect_port tcp 78.36.105.207:80 80
02000 nat 1 ip from any to any via tun0
Сделал так. Эффекта - 0.
Пинги идут. Не работает ничего: сёрфинг, аська, стим, скайп, торренты и прочия, и прочия.
gwaewion
-
BirdGovorun
- лейтенант
- Сообщения: 878
- Зарегистрирован: 2009-10-20 20:27:13
- Откуда: Харьков.
Непрочитанное сообщение
BirdGovorun » 2010-07-26 14:40:29
Тогда нихрена не понял
#netstat -rn чего, показывает?
Может вас по пути блокируют?
BirdGovorun
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-26 16:11:18
Код: Выделить всё
1024k# netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 212.48.193.37 UGS 0 1268797 tun0
78.36.105.207 link#5 UHS 0 259 lo0
127.0.0.1 link#3 UH 0 108 lo0
192.168.0.0/24 link#4 U 2 3435586 ue0
192.168.0.1 link#4 UHS 0 0 lo0
212.48.193.37 link#5 UHS 0 2763 tun0
Internet6:
Destination Gateway Flags Netif Expire
::1 ::1 UH lo0
fe80::%lo0/64 link#3 U lo0
fe80::1%lo0 link#3 UHS lo0
ff01:3::/32 fe80::1%lo0 U lo0
ff02::%lo0/32 fe80::1%lo0 U lo0
gwaewion
-
BirdGovorun
- лейтенант
- Сообщения: 878
- Зарегистрирован: 2009-10-20 20:27:13
- Откуда: Харьков.
Непрочитанное сообщение
BirdGovorun » 2010-07-26 17:13:55
Закоментируйте всё правила и только nat оставте с правилом add pass all from any to any,
что будет?
BirdGovorun
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-27 9:20:06
Работает. Значит дело в правилах. Но что там может быть блокирующего? Ума не приложу.
gwaewion
-
BirdGovorun
- лейтенант
- Сообщения: 878
- Зарегистрирован: 2009-10-20 20:27:13
- Откуда: Харьков.
Непрочитанное сообщение
BirdGovorun » 2010-07-27 15:28:29
Получился открытый фаервол, можете добавлять запрещающие правила.
Или добавляйте правила по одному и смотрите, где глюк, возможно логическая ошибка.
BirdGovorun
-
gwaewion
- рядовой
- Сообщения: 11
- Зарегистрирован: 2010-03-13 22:29:54
Непрочитанное сообщение
gwaewion » 2010-07-28 9:54:21
Как только убераю add allow all from any to any, локалка становится слепой, гулхой и немой =(
gwaewion
-
ink08
- рядовой
- Сообщения: 21
- Зарегистрирован: 2010-07-02 23:31:20
Непрочитанное сообщение
ink08 » 2010-07-28 16:17:22
суть в том, что у вас обратный нат не срабатывает
Код: Выделить всё
add 10130 skipto 10190 ip from 192.168.1.36 to any out xmit em0
add 10140 skipto 10210 ip from any to 1.2.3.5 in recv em0
подобные правила нужны вам, либо пересматривать структуру правил на нечто подобное -
Код: Выделить всё
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw add allow ip from any to any via lo0
#/sbin/ipfw add allow ip from any to any via ue0
/sbin/ipfw nat 1 config log if tun0 reset same_ports deny_in
/sbin/ipfw add nat 1 ip from any to any via tun0
/sbin/ipfw add check-state
/sbin/ipfw add allow udp from any to any 53 via eu0 keep-state
/sbin/ipfw add allow tcp from any to any in via eu0 keep-state #откроет порты в мир из локалки
/sbin/ipfw add allow all from any to any 27015,35084 via eu0
/sbin/ipfw add allow tcp from any to 78.36.105.207 21 via tun0
/sbin/ipfw add allow icmp from any to any icmptypes 0,8,11
/sbin/ipfw add allow tcp from any to 78.36.105.207 25 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 22 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 110 via tun0
/sbin/ipfw add allow tcp from any to 78.36.105.207 143 via tun0
/sbin/ipfw add allow all from any to 78.36.105.207 1024-65535 via tun0 #тут не понятно для чего вам открывать эти порты?
ink08