ipwf+natd Help Please
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- рядовой
- Сообщения: 23
- Зарегистрирован: 2010-08-29 22:21:26
ipwf+natd Help Please
Мужики выручайте, никогда не имел дело с натом да и с ipfw тоже. Есть сервер с freebsd 8.0 и два интерфейса vr0(смотрит на внешку) и rl0(смотрит в локалку). Нужно пустить трафик с помощью нат с rl0 to vr0
Вот мной написанный скрипт фаервола. Пинги через нат идут, т.е внешние сервера пингуются, а вот по http, ftp и по прочим портам во внешний мир попасть не могу. Подскажите чего не дописал! Ну а с самого сервера все нормально, как во внешний мир так и из вне по открытым портам!
FwCMD="/sbin/ipfw"
${FwCMD} -f flush
${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0
${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} add allow all from any to any via rl0
${FwCMD} add divert natd ip from 192.168.0.0/24 to any out via vr0
${FwCMD} add divert natd ip from any to 10.10.10.2 in via vr0
${FwCMD} add allow all from any to any out xmit vr0
# http
${FwCMD} add allow tcp from any to any 80 via vr0
# ssh
${FwCMD} add pass tcp from any to any 22 via vr0
# dns
${FwCMD} add allow udp from any 53 to any via vr0
${FwCMD} add allow udp from any to any 53 via vr0
# time
${FwCMD} add allow udp from any to any 123 via vr0
# ftp
${FwCMD} add allow tcp from any to any 21 via vr0
${FwCMD} add allow tcp from any to any 10000-65535
${FwCMD} add allow icmp from any to any
Вот мной написанный скрипт фаервола. Пинги через нат идут, т.е внешние сервера пингуются, а вот по http, ftp и по прочим портам во внешний мир попасть не могу. Подскажите чего не дописал! Ну а с самого сервера все нормально, как во внешний мир так и из вне по открытым портам!
FwCMD="/sbin/ipfw"
${FwCMD} -f flush
${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0
${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} add allow all from any to any via rl0
${FwCMD} add divert natd ip from 192.168.0.0/24 to any out via vr0
${FwCMD} add divert natd ip from any to 10.10.10.2 in via vr0
${FwCMD} add allow all from any to any out xmit vr0
# http
${FwCMD} add allow tcp from any to any 80 via vr0
# ssh
${FwCMD} add pass tcp from any to any 22 via vr0
# dns
${FwCMD} add allow udp from any 53 to any via vr0
${FwCMD} add allow udp from any to any 53 via vr0
# time
${FwCMD} add allow udp from any to any 123 via vr0
# ftp
${FwCMD} add allow tcp from any to any 21 via vr0
${FwCMD} add allow tcp from any to any 10000-65535
${FwCMD} add allow icmp from any to any
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
- MASiK
- лейтенант
- Сообщения: 625
- Зарегистрирован: 2008-09-19 20:09:41
- Откуда: Оттуда
- Контактная информация:
Re: ipwf+natd Help Please
ммм Ну для начала давайте нучимся пользоваться кнопочками чуть выше того окна где пишем
Без этого ваще не чего не понятно
но я нашёл строчку natd! уже давно есть Kernel NAT так называемый, он удобнее и легче, а тут видимо у вас пассивные порты не открыты
но я бы посоветовал вам сделать
иКвота
Код: Выделить всё
Код
но я нашёл строчку natd! уже давно есть Kernel NAT так называемый, он удобнее и легче, а тут видимо у вас пассивные порты не открыты
Код: Выделить всё
${FwCMD} add allow tcp from any 10000-65535 to any
Код: Выделить всё
${FwCMD} add allow ip from any to any established
established - Это если просто говоря, если кто-то из за ната уже соеденился с кем-то, то дать ему нормально с этим работать )
Самурай
-
- рядовой
- Сообщения: 23
- Зарегистрирован: 2010-08-29 22:21:26
Re: ipwf+natd Help Please
Честно говоря узнал узнал об этом намного позже, ну а раз начал ковырять natd, то начатое надо завершать ) Спасибо большое, все заработало!!!но я нашёл строчку natd! уже давно есть Kernel NAT так называемый, он удобнее и легче, а тут видимо у вас пассивные порты не открыты
Еще маленький вопрос можно VPN(pptp) прокидывать через natd?
- MASiK
- лейтенант
- Сообщения: 625
- Зарегистрирован: 2008-09-19 20:09:41
- Откуда: Оттуда
- Контактная информация:
Re: ipwf+natd Help Please
Всё можно ) если остАААрожно ) тока надо всего то добавить
Ну и естественно порты которые вы юзаете под VPN и всё будет Уря! )
P.S. Не за что )
Код: Выделить всё
ipfw allow gre from any to any
P.S. Не за что )
Самурай
-
- рядовой
- Сообщения: 23
- Зарегистрирован: 2010-08-29 22:21:26
Re: ipwf+natd Help Please
Спасибо, работает! Я опять с очередным вопросом
Я поднял на самом сервере pptp c помощь mpd5, появился интерфейс ng0 ну так для теста разрешил все через этот инетерфейс
С сервера в целом все хорошо, пингую яндекс, майл и т.д., а как быть с натом в этом случае., подскажите студенту ) сессия началась, экзамены сдавать надо, а так хочется в этом разобраться )
ipfw
rc.conf
netstat -anr

Код: Выделить всё
${FwCMD} add allow all from any to any via ng0
ipfw
Код: Выделить всё
FwCMD="/sbin/ipfw"
${FwCMD} -f flush
${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0
${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} add allow all from any to any via rl0
${FwCMD} add allow all from any to any via ng0
${FwCMD} add divert natd ip from 192.168.0.0/24 to any out via vr0
${FwCMD} add divert natd ip from any to 10.10.10.2 in via vr0
#${FwCMD} add divert natd tcp from any to 10.10.10.2 via vr0
${FwCMD} add allow all from any to any out xmit vr0
# http
${FwCMD} add allow tcp from any to any 80 via vr0
# ssh
${FwCMD} add pass tcp from any to any 22 via vr0
# dns
${FwCMD} add allow udp from any 53 to any via vr0
${FwCMD} add allow udp from any to any 53 via vr0
# time
${FwCMD} add allow udp from any to any 123 via vr0
# ftp
${FwCMD} add allow tcp from any to any 21 via vr0
#sysctl net.inet.ip.portrange.first<--->(10000)
#sysctl net.inet.ip.portrange.last<---->(65535)
${FwCMD} add allow tcp from any to any 10000-65535
${FwCMD} add allow tcp from any 10000-65535 to any
${FwCMD} add allow ip from any to any established
#icmp
${FwCMD} add allow icmp from any to any
# VPN
${FwCMD} add allow gre from any to any
Код: Выделить всё
gateway_enable="YES"
#defaultrouter="10.10.10.1"
defaultrouter="81.20.192.12"
hostname="domain.ru"
ifconfig_rl0="inet 192.168.0.100 netmask 255.255.255.0"
ifconfig_vr0="inet 10.10.10.2 netmask 255.255.255.0"
#inetd_enable="YES"
keymap="ru.koi8-r"
sshd_enable="YES"
fsck_y_enable="YES"
background_fsck="NO"
proftpd_enable="YES"
apache22_enable="YES"
mysql_enable="YES"
mysql_dbdir="/mysql"
mpd_enable="YES"
mpd_flags="-b"
static_routes="rt1"
route_rt1="-net 81.20.192.12 10.10.10.1"
firewall_enable="YES"
firewall_type="/etc/rc.firewall"
firewall_script="/etc/fw.sh"
#firewall_logging="YES"
natd_enable="YES"
natd_interface="vr0"
natd_flags="-m -u"
Код: Выделить всё
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 81.20.192.12 UGS 0 7133 ng0
10.10.10.0/24 link#1 U 0 0 vr0
10.10.10.2 link#1 UHS 0 0 lo0
81.20.192.12/32 10.10.10.1 UGS 1 9216 vr0
81.20.199.253 link#5 UHS 0 0 lo0
127.0.0.1 link#4 UH 0 0 lo0
192.168.0.0/24 link#2 U 1 1403 rl0
192.168.0.100 link#2 UHS 0 0 lo0
- MASiK
- лейтенант
- Сообщения: 625
- Зарегистрирован: 2008-09-19 20:09:41
- Откуда: Оттуда
- Контактная информация:
Re: ipwf+natd Help Please
Не совсем понял вопроса, что куда должно идти? Из за ВПНа в нат или куда?
Самурай
-
- рядовой
- Сообщения: 23
- Зарегистрирован: 2010-08-29 22:21:26
Re: ipwf+natd Help Please
В локальной сети есть pptp сервер провайдера, через который получаю доступ в интернет. На самом сервере поднял pptp с помощью mpd5. На сервере доступ в интернет появился, а компьютер подключенный через Nat имеет доступ только в локальную сеть при сейчашней конфигурации фаервола, что нужно поправить чтобы на подключенном через Nat компьютере тоже был доступ в интернет) Как то так вот! )
-
- подполковник
- Сообщения: 3923
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Re: ipwf+natd Help Please
2-ой nat работающий на интерфейсе ng0, а если доступ в локалку провайдера не нужен то можно оставить и один, поскольку ng0 поднимается после старта ipfw, вам потребуется перезагрузка правил файера, смотрите скрипты mp5...gold_555 писал(а):В локальной сети есть pptp сервер провайдера, через который получаю доступ в интернет. На самом сервере поднял pptp с помощью mpd5. На сервере доступ в интернет появился, а компьютер подключенный через Nat имеет доступ только в локальную сеть при сейчашней конфигурации фаервола, что нужно поправить чтобы на подключенном через Nat компьютере тоже был доступ в интернет) Как то так вот! )
-
- рядовой
- Сообщения: 23
- Зарегистрирован: 2010-08-29 22:21:26
Re: ipwf+natd Help Please
с natd ничего у меня не получилсь, решил попробовать kernel nat, пересобрал ядро,
наваял элементарный конфиг с правилами. С сервера доступ в интернет есть, с подключением по pptp и маршрутами все хорошо, через
nat тоже пингуется весь внешний мир, токо вот почемуто процентов 90% сайтов не открывается, но пингуются, а с сервера все впорядке. К примеру
на yandex.ru у меня заходин а на google.com и т.д нет, не могу попасть. В чем может быть проблема?
rl0 - 192.168.0.100 (c этого интерфейса раздаем инет через NAT)
vr0 - 10.10.10.2 (с этого интерфеса получаем доступ в локалку провайдера где у нас есть pptp сервер)
ng0 - 81.20.199.253 (через этот интерфейс лезем в инет при поднятом pptp)
наваял элементарный конфиг с правилами. С сервера доступ в интернет есть, с подключением по pptp и маршрутами все хорошо, через
nat тоже пингуется весь внешний мир, токо вот почемуто процентов 90% сайтов не открывается, но пингуются, а с сервера все впорядке. К примеру
на yandex.ru у меня заходин а на google.com и т.д нет, не могу попасть. В чем может быть проблема?
rl0 - 192.168.0.100 (c этого интерфейса раздаем инет через NAT)
vr0 - 10.10.10.2 (с этого интерфеса получаем доступ в локалку провайдера где у нас есть pptp сервер)
ng0 - 81.20.199.253 (через этот интерфейс лезем в инет при поднятом pptp)
Код: Выделить всё
FwCMD="/sbin/ipfw"
${FwCMD} -f flush
${FwCMD} add check-state
${FwCMD} add allow ip from any to any via lo0
${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any
${FwCMD} nat 123 config ip 81.20.199.253
${FwCMD} add nat 123 ip from 192.168.0.0/24 to any
${FwCMD} add nat 123 ip from any to 81.20.199.253
${FwCMD} add allow ip from any to any
-
- проходил мимо
Re: ipwf+natd Help Please
Попробуй в mpd.conf:
set link mtu 1460
set iface enable tcpmssfix
мне помогло. и вообще с MTU поиграйся
set link mtu 1460
set iface enable tcpmssfix
мне помогло. и вообще с MTU поиграйся
-
- рядовой
- Сообщения: 26
- Зарегистрирован: 2011-05-20 10:26:09
Re: ipwf+natd Help Please
народ дабы не плодить тем задам вопрос тут.
Вобшем пока конфигов рядом нету так что на словах
шлюзак поднимает соединение (pppoe) через adsl мопед (бриджом) соединение поднимается спомощью ppp внутренняя сеть видется отлично инет пингуется с сервака а вот раздать он не может (то точнее ума не хватает) и тонель не поднимается (
вопрос в следующем надо посылать всех на tun0(pppoe соединение) или как просто с обычным прямым подключением проблем небыло никогда а тут туплю .
Вобшем пока конфигов рядом нету так что на словах
шлюзак поднимает соединение (pppoe) через adsl мопед (бриджом) соединение поднимается спомощью ppp внутренняя сеть видется отлично инет пингуется с сервака а вот раздать он не может (то точнее ума не хватает) и тонель не поднимается (
вопрос в следующем надо посылать всех на tun0(pppoe соединение) или как просто с обычным прямым подключением проблем небыло никогда а тут туплю .