Показать полную графическую версию : Шлюз на FreeBSD
Доброго времени суток друзья!
Есть ту такое дело у меня хитрое:
есть freebsd 5.2.1
Ядро собрано с поддержкой ipfw.
Есть две сетевые карты -- rl0 -- через эту мне идёт инет, vr0 -- она подключена к хабу.
Работает мускуль на серваке и всё. Gateway_enable прописан всё должно работать. Скажу что работал на FreeBSD довольно долго и знаю систему относительно не плохо. Но вот с Ipfw проблемы. iptables знаю довольно неплохо.
Теперь что хочется:
Запретить все коннекты. Чтоб порт мускуля был filtered когда сканишь nmap всё остальное закрыто(там у меня в линуксе).
К тому же если ещё вписать 65535 deny ip from any to any
бдут ли система работаь как шлюз? Тоесть что нужно прописать чтоб пакеты шли с vr0 в инет?
Заранее буду благодарен за любую помощь. Линки принимаются но довольно содержательные и лаконичные (тоесть перевод мана по ипфв плз не предлагать :) )
кто нибудь подскажите! Очень прошу!!!:(
Доброго всем здоровичка!
Есть такая задача -- поднять шлюз на FreeBSD 5.2.1 чтоб через неё можно было в инет ходить 5 другим компам. Нв серере стоят две сетевушки -- rl0 через неё идёт инет на сервер, vr0 -- она идёт к хабу. Всё железо настроил, все машины видят шлюз. Но дальше него пинги не идут. Ядро скомпилировано с поддержкой ipfw. Правила нехитрые:
Разрешить ВСЁ; (это только пока так). В /etc/rc.conf прописано gateway_enable="yes"
Как сделать чтоб можно было с других компов в инет выходить? Заранее спасибо.
Guest :moderator:
Все это тут многократно обсуждалось (http://forum.oszone.net/search.php?search=ipfw%2Bnat&where=messages&forums=31&message_size=250&only_once=on&sort_by_date=on& submit=%C8%F1%EA%E0%F2%FC). Пример начального конфига *(все разрешено) мною уже приводился (http://forum.oszone.net/topic.cgi?forum=31&topic=2740&start=0#18). *Если не нравится поиск на сайте, можно использовать google (http://www.google.ru/search?hl=ru&ie=UTF-8&q=ipfw+nat+site%3Aforum.oszone.net&lr=)
я запуталась в гостях и их ip-иках :o
так что склею 2 схожие темы от двух гостей. Если что - не обесудьте ;)
А енто фисё я! :) :gigi: :oszone: :biglaugh:
Значит спасибо большое за линк очень позновательно, вот что я сделал:
localhost# ifconfig
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet 192.168.1.35 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::240:f4ff:fe7a:26ff%rl0 prefixlen 64 scopeid 0x1
ether 00:40:f4:7a:26:ff
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 169.254.1.1 netmask 0xffff0000 broadcast 169.254.255.255
inet6 fe80::20c:76ff:fe7d:d48a%vr0 prefixlen 64 scopeid 0x2
ether 00:0c:76:7d:d4:8a
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
localhost#
localhost# cat /etc/rc.conf
linux_enable="YES"
moused_enable="YES"
usbd_enable="YES"
hostname="localhost.localdomain"
sendmail_enable="NONE"
ipv6_enable="NO"
defaultrouter="192.168.1.1"
ifconfig_rl0="inet 192.168.1.35 netmask 255.255.255.0"
ifconfig_vr0="alias 169.254.1.1 netmask 255.255.0.0"
gateway_enable="YES"
firewall_enable="YES"
natd_enable="YES"
natd_interface="vr0"
localhost#
localhost# cat /etc/rc.firewall
#!/bin/sh
fw=/sbin/ipfw
$fw flush
$fw add divert natd all from any to any via vr0
$fw add allow all from any to any
localhost#
localhost# ps aux | grep natd
root 231 0.0 0.2 1288 848 ?? Is 11:06PM 0:00.00 /sbin/natd -n vr0
localhost#
Все необходимые опции в ядре включены.
Теперь вроде всё так? Пинги с машин подключенных к хабу на мой сервер ВОБЩЕ не идут ( а раньше шли :) ). Что я упустил? Все машины -- юниксы, две из которых те же самые фряхи (вот такая локалка у меня дома :))) ) так что можете спрашивать любую конфигурацию клиентских машин. Буду признателен за любую помощь
:oszone:
Есть сдвиги -- пинги пошли :) Но не дальше моего шлюза. Дальше говорит hostname lookup failure =)))) Как бы это поправить? :)
Есть две сетевые карты *-- rl0 -- через эту мне идёт инет, vr0 -- она подключена к хабу.
natd_interface="vr0"
насколько я понимаю, должно быть:
natd_interface="rl0"
и, соответственно:
${fw} add divert natd all from any to any via rl0
Кроме того стоит добавить
${fw} add pass all from any to any via lo0
Момент! Я что то не так понЯл! rl0 -- это карточка которая смотрит в инет(!) у меня! Её и надо добавить? Большое спасибо за ответ.
Добавлено:
А всё понял! Спасибо! Всё изменил как вы сказали но по прежнему пинги дальше моего шлюза говорят "Hostname lookup failure"... :( Как можно поступить в этом случае?
Добавлено:
Новость то какая у меня!!!!
Пинги идут!!! Идут всюду!!!! УРА!!! Спасибо О_Г_Р_О_М_Н_О_Е mar!!!!
Но.... На имена хостов не отзывается =) У меня на шлюзе было тоже самое пока не прописал шлюз для шлюза =) А как можно указать на FreeBSD что после моего шлюза нужно ещё бежать на шлюз моего прова? =) Заранее спасибо!
А как можно указать на FreeBSD что после моего шлюза нужно ещё бежать на шлюз моего прова?
если твой шлюз - xxx.xxx.xxx.xxx (ip провайдера), то так и пишем
/etc/rc.conf
defaultrouter="xxx.xxx.xxx.xxx" #IP Адрес шлюза провайдера
а для машин внутренней сети gateway будет
169.254.1.1 (твой внутренний ip)
или я что-то не поняла?
Гхм, я тоже что то не понял =)
У меня сервер -- там роутер прова 192.168.1.1 (мой default gateway)
У него внутрений ip -- 169.254.1.1
Если ему его роутер (роутер прова не прописать -- то пинги по именам хостов также не идут. Только по ипам пинги идут =)
Так вот тоже самое сейчас творится на машинах подключенных к моему хабу -- пинги идут только по ипам. Как бы это вылечить? Заранее спасибо!
DNS надо прописать для клиентов в /etc/resolv.conf
Guest
понятно, я стормозила - решила, что у тебя другой шлюз
Если по ip все идет, а по именам нет - понятно, как уже сказал archy, DNS надо прописать для клиентов. Это может быть dns твоего сервера, если он поднят, илди dns провайдера (на сервере должен быть 53 порт открыт)
Так вот это уже перерастает в реально интересную дискуссию =)
То есть в /etc/resolv.conf нужно прописать
ип шлюза который стоит у меня дома
ип шлюза куда идёт коннект с моего шлюза (то есть шлюз шлюза)
Так? И тогда ещё вопросы:
У меня сервер подключён к инету по средствам ADSL модема -- но модем хороший опознаётся просто как шлюз, но подключаетсяк usb порту и подключается к сетевой карте. Фря сам модем видит как uhub0, а чтоб всё заработало необходимо прописать route add default 192.168.1.1 и поднять rl0 с ипом 192.168.1.35 (пинги идут по ипам и именам)
Или же просто указать системе узать dhcp для rl0 =)
Вот так вот. Мне сказали что можно модем подключить к хубу вместо моей сетевухи и к хабу просто подключать компы прописывая им route default 192.168.1.1? и тогда де шлюз не потребуется =) Так вот тогда вопрос -- на кой мне usb шнур на модеме?
Заранее всем большое спасибо за помощь :) :oszone:
Guest
То есть в /etc/resolv.conf нужно прописать
ип шлюза который стоит у меня дома
ип шлюза куда идёт коннект с моего шлюза (то есть шлюз шлюза)
в конфиги твоего сервера надо прописать его шлюз и его nameserver.
в конфиги клиентских машин - ip внутренней карточки твоего сервера и nameserver. В качестве nameserver клиентских машин может выступать твой сервер (если умеет =)), или nameserver провайдера (к нему, естественно нужно иметь доступ).
Guest
Берем и читаем документацию от модема, там есть ответы на твои вопросы про шнурики....
это нужно делать в первую очередь, а потом к людям за советами ползти... я не злой, погода такая :)
в конфиги твоего сервера надо прописать его шлюз и его nameserver.
Простите, а его это чей? =) И что писать в nameserver клиентских машин?
ruslandh
02-09-2004, 08:06
Простите, а его это чей?
провайдера.
На вашем шлюзе - параметры правайдера
На клиентских машинах - пораметры вашего шлюза.(Если нет на шлюзе своего DNS, то DNS провайдера).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.