Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование *NIX систем > Не проходит правило MASQUERADE на SUSE 9.1 с SuSEf


Автор: butcher 24.1.2006, 11:59
Я уже поднимал подобную тему, снял ее позже, за неимение ответов. Разобраться полностью и самостоятельно не удалось, в надежде что все таки помогут поднимаю снова. Задача - настроить VPN под управлением pptpd с шифрованым каналом (это работает) и дать возможность клиентам бегать в интернет через данный шлюз(клиенты сидят на WinXP). Вот именно с этим и возникает проблема. Руководствуясь документацией по тесту направления пакетов - http://poptop.sourceforge.net/dox/diagnose-forwarding.phtml мне удалось пройти с Test0 по Test3. Дальше дело не пошло. Подобное правило iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE не заводит пакеты на VPN и к томуже потом очень быстро слетает из правил iptables. Я подозреваю, что его снимает сам SuSEfirewall2 так как у него есть свой конфигурационный файл. Естественно я в выше изложеном правиле ставлю нужний IP, так как я не полний валенок. Если кто-то уже делал что-нибудь подобное, plz не оставляйте без внимания.... Что самое обидное, так это то, что на RH9 работало и настраивал я... Зарание благодарен!!!

Автор: bilbobagginz 24.1.2006, 13:07
ну и ник у тебя... добрый smile smile smile
Цитата(butcher)

Подобное правило iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -j MASQUERADE

во-1-ых: когда маскарад начинаешь, очень важно указать выходной интерфейс, под адрес которого ты маскируешься. если не укажешь... РТФМ на какой адрес айпи-тейбл тебе все пакеты переведет
я честно и не знаю, предполагаю на тот, который у тебя идет на дифолтный шлюз, а это не всегда правильный, у меня напр.:
iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE

а дефолтный шлюз у меня не ppp0.

во-2-ых: я не хочу вдаваться в подробности этого сайта, я на него не ходил.
но возможно что тебе нужно не только маскарад делать но и статические правила SNAT и/или DNAT.
давай распиши какие у тя подсети, и кто шлюз кого, и тогда покумекаем, а то ... слишком много неизвестностей.

в-3-х: в СуЗе, надо иднти ихним путем, - т.е. добавлять правила через Яст ихний.. а то много можно граблей накушаться.

в-4-х: если маршрутизация настроена криво - тоже будут проблемы.

ниже - мысли вслух.(немного сумбурные, но правильные )

шлюз VPN: с 2-мя сетевухами: одна на внутр. рабочую сеть, другая на интернет.
когда поднимается VPN, то туннель тоже имеет свой интерфейс, с адресом.
на него будем бросать пакеты. как и какие?

путь 1:если всем клиентам нужен доступ через VPN, обычно клиентов во внутренней сети держут в одной подсети с VPN сетью. перенапр. пакетов делается с помощью ip_forward и маршрутизации.. в таком случае в логах можно будет видеть кто куда лазал.

путь 2:можно сделать и по другому: на него и выводят пакеты тех кому надо пробиться в туннель VPN через MASQUERADE. но в таком случае, на другом конце туннеля видно будет только 1 адрес шлюза, что не всегда достаточно хорошо с точки зрения обозрения smile

давай... излогай доступно. че те нада ?

Автор: butcher 24.1.2006, 21:12
Извините bilbobagginz, что так долго не отвечал! Я изложу топологию сети, которая будет в этоге использоваться... Клиенты WinXP(внешний IP) -> (Internet) -> VPN Servet(внешний IP) и через этот сервер клиенты должы бегать по Интернету... Но на данном этапе у меня сервер настраивается дома, а топология немного отличается от предыдущей. У меня все компы сидят за рутером, т.е. и клиент, и сервер.

WinXP client(192.168.1.15), а сервер VPN Servet(192.168.1.21)
Вот ifconfig c скрвера при созданом соединении с VPN (pptpd)

Код

# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:40:F4:B4:4A:70
          inet addr:192.168.1.21  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::240:f4ff:feb4:4a70/64 Scope:Link
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1718 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1754 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:164792 (160.9 Kb)  TX bytes:360017 (351.5 Kb)
          Interrupt:12 Base address:0x5000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:73 errors:0 dropped:0 overruns:0 frame:0
          TX packets:73 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:5801 (5.6 Kb)  TX bytes:5801 (5.6 Kb)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:192.168.2.1  P-t-P:192.168.2.100  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1396  Metric:1
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:1358 (1.3 Kb)  TX bytes:118 (118.0 b)


Пару слов про yast и firewall у SUSE. Yast для firewall все настройки берет из файла
/etc/sysconfig/SuSEfirewall2 и не ко всем переменным этого файла есть доступ через Yast. И больше приходится делать изменения вручную прямо в файле...
А по поводу статических правил Вы правы, что-то мне надо с ними делать...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)