URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 76762
[ Назад ]

Исходное сообщение
"VPN на poptop + nat на ipfw"

Отправлено MaoDzeDun , 14-Окт-07 01:23 
Здравствуйте всем!
Возникла проблема, прошу помощи.
Есть сервер на FreeBSD 6.2
Поднят интерфейс xl0 с айпишником 89.105.x.x
На сервере я поднял poptop. ВПН подключения происходят нормально.
После установки ВПН подключения поднимается интерфейс tun0
00:08:54 [root#bubochka:p0][~] ifconfig tun0
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1398
        inet 192.168.100.2 --> 192.168.100.2 netmask 0xffffffff
        Opened by PID 1025

Цель вообще такова, чтобы я мог подключаться ВПН-ом к серверу и использовать его как шлюз для хождения в инет.
Сейчас, как я понимаю, нужно настроить ipfw, чтоб он НАТил в мир айпишники, которые поднимаются при помощи ВПНа.
Ядро собрано с такими параметрами.
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=500
options IPFIREWALL_FORWARD
options IPFIREWALL_DEFAULT_TO_ACCEPT
options TCP_DROP_SYNFIN

В /etc/rc.conf есть такое
firewall_enable="YES"
firewall_type="/etc/rc.firewall"
firewall_logging="YES"
natd_enable="YES"
natd_program="/sbin/natd"
natd_flags="-f /etc/natd.conf"
gateway_enable="YES"

Подскажите, пожалуйста, какие правила для ipfw нужно прописать, чтоб он НАТил.
Большое спасибо заранее.


Содержание

Сообщения в этом обсуждении
"VPN на poptop + nat на ipfw"
Отправлено CoolKid , 14-Окт-07 19:36 
/sbin/ipfw add 100 divert natd from any to any via ${natd_iface} <= интерфейс, подключенный к интернету

запускать natd необходимо после установления соединения с интернетом (например если соединение не езернет)

/sbin/natd -n ${natd_iface} <= интерфейс, подключенный к интернету

встречный вопрос: как настроил PopTop? IP клиентам выдаются динамически? Если да, то можно твои конфиги?


"VPN на poptop + nat на ipfw"
Отправлено MaoDzeDun , 14-Окт-07 20:13 
2CoolKid
Спасибо за помощь!!!
Да, конфиги выложу, но завтра.
Вчера что-то игрался с правилами для ната и после очередного перезапуска ipfw отвалился ssh :-)
Завтра буду непосредственно возле сервера и консолью сделаю ipfw -f flush
Конфиги выложу завтра!
Еще раз спасибо.

"VPN на poptop + nat на ipfw"
Отправлено MaoDzeDun , 15-Окт-07 20:36 
2CoolKid
В /etc/ppp/options.pptpd
---
proxyarp
+MSChap-V2 mppe-128 mppe-stateless
---

В /etc/ppp/ppp.conf
---
pptp:
enable proxy
set dns 213.130.24.4
set ifaddr 192.168.100.1
set timeout 0
enable MSChapV2
---

В /etc/ppp/ppp.secret
---
логин пароль IP-адрес,который выдавать клиенту с этим логином
(данные записываются через пробел или табуляцию)
---


"VPN на poptop + nat на ipfw"
Отправлено MaoDzeDun , 15-Окт-07 21:01 
>/sbin/ipfw add 100 divert natd from any to any via ${natd_iface} <=
>интерфейс, подключенный к интернету

пишу
/sbin/ipfw add 100 divert natd all from any to any via xl0
отваливается SSH и пакеты вааааще никуда не идут. пингов тоже нету.
что я делаю не так?


"VPN на poptop + nat на ipfw"
Отправлено CoolKid , 16-Окт-07 22:17 
>>/sbin/ipfw add 100 divert natd from any to any via ${natd_iface} <=
>>интерфейс, подключенный к интернету
>
>пишу
>/sbin/ipfw add 100 divert natd all from any to any via xl0
>
>отваливается SSH и пакеты вааааще никуда не идут. пингов тоже нету.
>что я делаю не так?

Сколько у тебя интерфейсов?


"VPN на poptop + nat на ipfw"
Отправлено MaoDzeDun , 16-Окт-07 22:41 
Все порешалось.
Вот что написал в правилах ipfw
/sbin/ipfw add divert natd ip from 192.168.100.0/24 to any out via xl0
/sbin/ipfw add divert natd ip from any to МОЙ_ВНЕШНИЙ_ИП_АДРЕС in via xl0

В /etc/natd.conf
unregistered_only yes
alias_address МОЙ_ВНЕШНИЙ_ИП_АДРЕС
И все окей. ВПН поднимается, поднимается интерфейс tun0 с IP-адресом 192.168.100.х и этот айпишник натится через внешний интерфейс.
Все спасибо!

>[оверквотинг удален]
>>>/sbin/ipfw add 100 divert natd from any to any via ${natd_iface} <=
>>>интерфейс, подключенный к интернету
>>
>>пишу
>>/sbin/ipfw add 100 divert natd all from any to any via xl0
>>
>>отваливается SSH и пакеты вааааще никуда не идут. пингов тоже нету.
>>что я делаю не так?
>
>Сколько у тебя интерфейсов?