Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок
Модераторы: vadim64, terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-02 21:11:06
Добрый день уважаемые.
Прошу у вас совета по настройке IPFW+NAT, перечитал кучу статей, но к единому прийти не могу.
Есть некая сеть и роутер на FreeBSD 8 с ядерным IPFW и натом и dhcp. Задача роутера пока просто раздавать интернет в сеть, попутно блокируя лишнее по возможности.
Накатал конфиг, прошу вас оценить и подсказать правильно ли расположен divert и может чего не учёл?
по умолчанию фаерволл открытый
sis0 - внешний интерфейс
Код: Выделить всё
#!/bin/sh
cmd="/sbin/ipfw"
wanip="1.1.1.2"
local="172.16.10.0/24"
unprev="123"
/sbin/ipfw -f flush
##############
## Loopback IF
##############
$cmd add 20 allow ip from any to any via lo0
$cmd add 20 deny ip from 127.0.0.1/8 to any
$cmd add 20 deny ip from any to 127.0.0.1/8
$cmd add 21 deny ip from any to me 23
##############
### SSH Access
##############
$cmd add 150 deny tcp from any to me 22
$cmd add 150 allow tcp from me 22 to any
##########
#правила запрещающие сайты и закрывающие порты, я их не стал тут описывать
########
#############
## Nat Divert
#############
$cmd add 6000 divert natd ip from any to any via sis0
rc.conf
Код: Выделить всё
gateway_enable="YES"
hostname="server.server"
defaultrouter="1.1.1.1"
ifconfig_sis0="inet 1.1.1.2 netmask 255.255.255.252"
ifconfig_rl0_="inet 172.16.10.1 netmask 255.255.255.0"
inetd_enable="YES"
keymap="ru.koi8-r"
router="/sbin/routed"
router_enable="YES"
router_flags="-q"
sshd_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall"
natd_enable="YES"
natd_interface="sis0"
dhcpd_enable="YES"
dhcpd_conf="/etc/dhcpd.conf"
dhcpd_ifaces="rl0"
Последний раз редактировалось
f_andrey 2012-08-02 21:17:31, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения.
impetigo
-
Хостинг 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/
-
FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Непрочитанное сообщение
FreeBSP » 2012-08-03 0:36:59
чем ядерный нат не устраивает? зачем по пять правил на один номер?
http://www.lissyara.su/articles/freebsd ... /ipfw_nat/
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
FreeBSP
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-03 4:43:44
а чем плохо несколько правил на одном номере?
divert natd это не ядерный нат, а отдельный модуль?
impetigo
-
Другой гость
- проходил мимо
Непрочитанное сообщение
Другой гость » 2012-08-03 10:48:50
impetigo писал(а):
divert natd это не ядерный нат, а отдельный модуль?
natd это отдельный модуль, а не ядерный нат.
Чтобы работал ядерный нат надо почитать воот
эту статью
Другой гость
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-03 14:08:28
возникла проблема, видимо в синтаксисе
Код: Выделить всё
[root@server ~]# /etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
add: not found
nat: not found
add: not found
add: not found
Firewall rules loaded.
/etc/rc.firewall
Код: Выделить всё
add 100 allow ip from any to any via lo0
add 110 deny ip from any to 127.0.0.0/8
add 120 deny ip from 127.0.0.0/8 to any
add 150 allow tcp from any to me 30009 via sis0
add 170 allow tcp from me 22 to any via sis0
add 200 allow ip from any to any via rl1
add 210 deny ip from 224.0.0.0/4 to any via sis0
add 220 deny ip from any to 224.0.0.0/4 via sis0
add 230 deny icmp from any to 255.255.255.255 in via sis0
add 240 deny icmp from any to 255.255.255.255 out via sis0
nat 1 config log if sis0 reset same_ports
add 6000 nat 1 ip from any to any via sis0
add 65534 deny log all from any to any
impetigo
-
шёл_мимо
- проходил мимо
Непрочитанное сообщение
шёл_мимо » 2012-08-03 15:09:25
add 100 allow ip from any to any via lo0
ipfw add 100 allow ip from any to any via lo0
шёл_мимо
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-03 19:30:34
шёл_мимо писал(а):ipfw add 100 allow ip from any to any via lo0
тоже самое, add: not found
impetigo
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-03 20:24:32
решил, приведя к такому виду
cat /etc/ipfw
Код: Выделить всё
#!/bin/sh
cmd="/sbin/ipfw"
/sbin/ipfw -f flush
$cmd add 100 allow ip from any to any via lo0
$cmd add 110 deny ip from any to 127.0.0.0/8
$cmd add 120 deny ip from 127.0.0.0/8 to any
impetigo
-
FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Непрочитанное сообщение
FreeBSP » 2012-08-03 21:02:37
читаем первый пример в статье и оригинальный /etc/rc.firewall:
Код: Выделить всё
534 *)
535 if [ -r "${firewall_type}" ]; then
536 ${fwcmd} ${firewall_flags} ${firewall_type}
537 fi
538 ;;
конфиг вида add ... читается из ${firewall_type}
а в firewall_script находится обычный sh скрипт, вызываемый из /etc/rc.d/ipfw
Код: Выделить всё
45 if [ -r "${firewall_script}" ]; then
46 /bin/sh "${firewall_script}" "${_firewall_type}"
и вообще в статье неплохие примеры, в частности первый пример - минимальный набор ната, должен вам подходить
и оригинальный /etc/rc.firewall стоит полностью прочитать
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
FreeBSP
-
impetigo
- рядовой
- Сообщения: 11
- Зарегистрирован: 2011-08-21 4:44:08
Непрочитанное сообщение
impetigo » 2012-08-04 9:35:29
FreeBSP писал(а):и вообще в статье неплохие примеры, в частности первый пример - минимальный набор ната, должен вам подходить
и оригинальный /etc/rc.firewall стоит полностью прочитать
я и сделал по первому примеру, только вот так и не понял с синкасисом почему была проблема. сейчас все работает.
impetigo
-
FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Непрочитанное сообщение
FreeBSP » 2012-08-04 11:36:53
FreeBSP писал(а):
конфиг вида add ... читается из ${firewall_type}
а в firewall_script находится обычный sh скрипт, вызываемый из /etc/rc.d/ipfw
impetigo писал(а):
rc.conf
/etc/rc.firewall
В статье:
/etc/rc.conf
/etc/firewall
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
FreeBSP