Tomsk Sysadmins Forum

Unix => Администрирование => Topic started by: Vyacheslav on November 10, 2005, 14:58:55

Title: Натсройка NAT для пользователей VPN
Post by: Vyacheslav on November 10, 2005, 14:58:55
Исходные данные:
Сервер FreeBSD с двумя интерфейсами.
один смотрит в сеть провайдера rl0: IP A.B.C.D
один смотрит в локальную сеть rl1: IP 192.168.0.1
настроен ipfw с natd

divert natd ip from 192.168.0.0/24 to any via rl0
divert natd ip from any to A.B.C.D via rl0


все работает отлично.

Поставил mpd настроил pptp сервер.
пользователям VPN выдаются адреса из 192.168.254.0/24
Все работает нормально, но как сделать что бы они могли не только заходить
во внутреннюю сеть но и пользоваться интернетом.

т.е. добавлял правило
divert natd ip from 192.168.254.0/24 to any via rl0
не работает

запускал еще один процесс natd на другом порту (1555)
и правила:
divert 1555 ip from 192.168.254.0/24 to any via rl0
divert 1555 ip from any to A.B.C.D via rl0

то же не работает.

Не знаю как бороться с этим.
Title: Натсройка NAT для пользователей VPN
Post by: AlexeyN on November 10, 2005, 15:25:06
Quote
Исходные данные:
Сервер FreeBSD с двумя интерфейсами.
один смотрит в сеть провайдера rl0: IP A.B.C.D
один смотрит в локальную сеть rl1: IP 192.168.0.1
настроен ipfw с natd

divert natd ip from 192.168.0.0/24 to any via rl0
divert natd ip from any to A.B.C.D via rl0
все работает отлично.

Поставил mpd настроил pptp сервер.
пользователям VPN выдаются адреса из 192.168.254.0/24
Все работает нормально, но как сделать что бы они могли не только заходить
во внутреннюю сеть но и пользоваться интернетом.

т.е. добавлял правило
divert natd ip from 192.168.254.0/24 to any via rl0
не работает

запускал еще один процесс natd на другом порту (1555)
и правила:
divert 1555 ip from 192.168.254.0/24 to any via rl0
divert 1555 ip from any to A.B.C.D via rl0

то же не работает.

Не знаю как бороться с этим.
[snapback]5311[/snapback]
а у клиентов весь трафик идет в VPN канал или только тот что в сеть 192.168.0.0/24

ну естественно как вариант - поставить прокси

у меня Linux и клиенты openVPN - у них настроено что только пакеты для сети 192.168.0.0/24 заходят в VPN,  а все остальные идут напрямую к их провайдерам. И естли они хотят пользоваться инетом за счет фирмы то подключаются через прокси который стоит в сети 192.168.0.0/24
Title: Натсройка NAT для пользователей VPN
Post by: Vyacheslav on November 10, 2005, 15:29:49
у клиентов естественно шлюз по умолчанию меняется и тогда они вообще без интернета, если конечно вручную не прописать...
можно прокси, но прокси и без vpn можно пользоваться
Title: Натсройка NAT для пользователей VPN
Post by: Vyacheslav on November 10, 2005, 15:32:39
вот у томики же есть скоросной сеансовый доступ, только я не помню кажется там реальные ip выдаются...  :(
Title: Натсройка NAT для пользователей VPN
Post by: AlexeyN on November 10, 2005, 16:29:34
Quote
у клиентов естественно шлюз по умолчанию меняется и тогда они вообще без интернета, если конечно вручную не прописать...
можно прокси, но прокси и без vpn можно пользоваться
[snapback]5313[/snapback]
у меня на firewall открыты на подключение из интернета только порты ssh и openVPN
если же открывать 3128 на прокси, тогда нужно на проксе настраивать с какого IP можно к нему подключатся
а у меня некоторые клиенты с заходят с динамических IP (dialUP)
поэтому я прокси не открываю,
все VPN клиенты в подсети 10.0.0.0/8 - вот этой сети разрешено пользоватся прокси

итоге: прокси из внешки не видна, чтобы им пользоватся нужно сначала установить VPN соединение, которое принимается с любых IP
Title: Натсройка NAT для пользователей VPN
Post by: AlexeyN on November 10, 2005, 16:38:50
не работал в FreeBSD
а как настройки фиревала ?
нет запрета на маршрутизацию между интерфесами ?

у меня SLES 9, там через конфигуратор настраивается: указываешь какие интерфейсы считать внутренними, какие внешними...
я сначала tun интерфес (для VPN) нигде не прописал и маршрутизация не проходила.
потом добавил и все ок

Title: Натсройка NAT для пользователей VPN
Post by: Vyacheslav on November 10, 2005, 22:39:31
Quote
не работал в FreeBSD
а как настройки фиревала ?
нет запрета на маршрутизацию между интерфесами ?

у меня SLES 9, там через конфигуратор настраивается: указываешь какие интерфейсы считать внутренними, какие внешними...
я сначала tun интерфес (для VPN) нигде не прописал и маршрутизация не проходила.
потом добавил и все ок
[snapback]5316[/snapback]

в файерволе разрешил все для этой подсети да и фовардинг включен, а иначе как бы я во внутренную сеть ходил...

что интересно настраивал vtun (но это не pptp) на linux там как то проще и nat работал...
может в данном случае, я имею ввиду связку mpd (pptp) и natd, это вообще невозможно  :(
Title: Натсройка NAT для пользователей VPN
Post by: Nameless on November 11, 2005, 16:49:57
Quote
т.е. добавлял правило
divert natd ip from 192.168.254.0/24 to any via rl0
не работает

запускал еще один процесс natd на другом порту (1555)
и правила:
divert 1555 ip from 192.168.254.0/24 to any via rl0
divert 1555 ip from any to A.B.C.D via rl0

то же не работает.

Не знаю как бороться с этим.
[snapback]5311[/snapback]

Попробуй натить таким образом, а не всё подряд...

/sbin/ipfw add divert natd ip from 192.168.0.0/24 to any out via fxp0
/sbin/ipfw add divert natd ip from any to A.B.C.D in via fxp0
Title: Натсройка NAT для пользователей VPN
Post by: Nameless on November 11, 2005, 16:51:41
fxp0=rl0
Причём эти правила надо в начало твоего скрипта с правилами(после всех явных заграждений).
Title: Натсройка NAT для пользователей VPN
Post by: Vyacheslav on November 13, 2005, 13:39:28
Всем спасибо, дело было не в natd
а в самом mpd криво он работает когда пакеты проходят nat обработку,
т.е. если убрать шифрование то более менее все нормально, хотя половина сайтов
не открывается, частично проблема решилась
добавлением опции в конфиг mpd.conf
set iface enable tcpmssfix

но в конечном итоге поставил poptop на freebsd теперь нормально  :)