Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: Astor в Jan 03, 2010, 22:11



Титла: Проблем с VPN сървър PPTP
Публикувано от: Astor в Jan 03, 2010, 22:11
Здравейте, имам следния проблем: на slackware 13 използващ се за рутер искам да кача VPN сървър (PPTP) и да мога с компютър от където и да е да мога да се свързвам към вътрешната мрежа зад рутера. Има прикачена схема за по-ясно.
Стартирам PPTP, PC се свързва към рутера получава IP адрес от вътрешната мрежа (напр. 10.0.0.5). Рутерът има вдигнат интерфейс ppp0 с адрес (10.0.0.5) от VPN връзката, но връзка между PC и вътрешната мрежа няма. Трябва да се направи още нещослед изграждане на връзката за да има свързаност и ще ми трябва малко помощ от вас.
Благодаря ви предварително


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: wfw в Jan 03, 2010, 23:04
някакъв рутинг направил ли си? на вътрешната мрежа този комп ли е default gateway и след осъществяване на ppp връзката PPTP сървъра ти раздава ли default gateway на машината, която се връзва с VPN-a?

p.s. виждам от схемата ти, че използваш един и същ клас мрежа за VPN-а и за вътрешната ти мрежа. Това значи, че по някакъв начин трябва да кажеш на вътрешните машини, че имат друга машина в тяхната мрежа, това става с ARP PROXY (CACHE) или нещо подобно, разгледай си примерния файл на PPTP.

Аз лично бих създал друга мрежа 10.0.1.0/24, от която да раздавам IP-та на VPN-a и рутера да рутира трафика м/у 10.0.0.0/24 и 10.0.1.0/24

p.p.s. Също не е лошо да включиш MS-CHAP2, че паролите за VPN-a ти ще летят в чист вид...


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: Astor в Jan 04, 2010, 00:10
Благодаря ти за отговора wfw. Не съм правил никакво рутиране, освен това което е по подразбиране като се вдигне даден интерфейс т.е. на рутера таблицате е нещо от сорта на:

net 10.0.0.5 маска: 255.255.255.255 i-face: ppp0
net 10.0.0.0 маска: 255.255.255.0 i-face: eth1
net X.Y.Z.0 маска: 255.255.255.0 i-face: eth0
default gw: X.Y.Z.1 (рутерът на ISP)

На компютрите от вътрешната мрежа default gw е адреса на рутера (10.0.0.1)
Цитат
след осъществяване на ppp връзката PPTP сървъра ти раздава ли default gateway на машината, която се връзва с VPN-a?
Компютъра който се свръзва към VPN-а му е зададено да си получава GW от VPN сървъра, но PPTP-то НЕ раздава default gw. Аз и не знам къде може да се каже в насториките на PPTP да раздава def. gw на закачените към него компютри, знам, че с ms-dns раздава dns адреси.
А за ARP PROXY (CACHE) редът от примерния файл (/etc/ppp/options.pptpd):
proxyarp
не казва ли точно това?
Цитат
Аз лично бих създал друга мрежа 10.0.1.0/24, от която да раздавам IP-та на VPN-a и рутера да рутира трафика м/у 10.0.0.0/24 и 10.0.1.0/24
по принцип така ли трянва да се направи, т.е. така ли ще стане по-културно?
Според мен ако го направя така, трябва да се добавя ред в рутиращата таблица всеки път след като се създаде VPN сесия (като се вдига pppХ), което не знам как може да става автоматично, а ръчно ще е прекалено неудобно...а може и аз да не съм наясно с тези неща и да говоря измислици, за което се извинявам.


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: laskov в Jan 04, 2010, 00:12
proxyarp e опция в конфиг файла на pppd или се задава от командния ред, който го стартира. Отрицанието е noproxyarp. Командният ред е с приоритет.
Това нещо го правя с openvpn вместо с PPTP. В някои случаи ползвам NAT за да реша подобни проблеми с рутирането. openvpn сървъра може да прави push route add, с което манипулира рутинг таблицата на отдалечения комп.


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: wfw в Jan 04, 2010, 00:33
предлагам ти да тестваш с промяна на мрежата на VPN-a и да спреш proxyapr.
мисля, че ще сработи.

ако се връзваш към VPN сървъра с уиндоус машина, мисля че тя променя гейта по подразбиране на IP-то на VPN сървъра. В /etc/ppp имаш една директория ip-up.d, в нея можеш да добавиш скрипт, който управлява рутирането, но мисля, че няма да се наложи. На работа съм с подобна конфигурация и работи без проблем.

openvpn също е решение, но на всеки клиент, трябва да инсталираш (или да си носиш на флашка) openvpn клиент-а.


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: Ipolit в Jan 04, 2010, 14:53
Туй винаги е било голем ... да се рутира pptp-то. По начина, по който си го направил трябва да работи с уиндоус клиенти. За да работи с линукс клиенти трябва да им добавяш маршрут за мрежата зад ВПН сървъра. В твоя случай
 
Код:
ip ro add 10.0.0.0/24 via 10.0.0.5

И IP-тата, които раздава сървърът ти, трябва да са от вида 10.0.0.X - иначе не върви.


Титла: Re: Проблем с VPN сървър PPTP
Публикувано от: Astor в Jan 05, 2010, 23:47
Хм...много странно, но при повторни опити нещата си тръгнаха при следната рутинг таблица:
Цитат
# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        *               255.255.255.0   U     0      0        0 eth1
10.0.0.5         *               255.255.255.255   U    0      0        0  ppp0
X.Y.Z.0       *               255.255.255.0   U     0      0        0 eth0
loopback        *               255.0.0.0       U     0      0        0 lo
default         home-X-Y-Z-1.... 0.0.0.0         UG    0      0        0 eth0
никакви правила не съм добавял с iptables, нито съм добавял допълнителни рутове,нито пък съм променял routing таблиците при VPN клиента. Първо пробвах и с различнa мрежa на VPN връзката без proxyarp (10.1.1.1-10.1.1.5) и си работеше без проблем, после пробвах отново с предишното положение (една и съща мрежа на VPN и на вътрешната мрежа) и тръгна :) Явно нещо аз не съм направил като хората преди? ???
Ipolit, благодаря ти за помощта, но ip ro add 10.0.0.0/24 via 10.0.0.5 ми връща:
Цитат
RTNETLINK answers: File exists
Благодаря на всички за помощта!