Руководство по настройке Vpn для Linux-клиентов

Mike22

Местный
Если у вас сетевой интерфейс нормально получает IP-адрес от Веги, можно приступать к настройке VPN.
Если же нет - сначала разберитесь с DHCP.

Вообще, вся необходимая информация для настройки и решения проблем с pptp-VPN`ом есть на сайте http://pptpclient.sourceforge.net
Всё описано подробно, доступно, на хорошем английском языке.

Основная трудность с VPN под Linux/xBSD возникает когда необходимо установить соединение между Win и Linux/xBSD машинами. Вернее, когда необходима поддержка MS-CHAP, MPPE и MPPC - протоколов аутентификации, шифрования и компрессии придуманых Microsoft`ом.
VPN-сервер Веги не использует эти Microsoft`овские расширения, поэтому сложности никакой тут не будет.
Любой дистрибутив включает в себя пакеты ppp и pptp-linux (начиная с версии 1.6.0 в Linux - pptp, а для BSD - pptpclient).
А, т.к. нам не нужно заботится о поддержке MS-CHAP, MPPE и MPPC, бинарные версии пакетов из вашего дистрибутива - подойдут.
Самый простой способ убедиться что они установлены - заглянуть в папку /etc/ppp
если в ней есть файлы options и options.pptp то, вероятно всё в порядке, иначе устанавливайте ppp и/или pptp.
(pptp для FC6 можно взять тут )

Теперь редактируем конфигурационные файлы:
/etc/ppp/options
Код:
lock
/etc/ppp/options.pptp
Код:
lock
noauth
nobsdcomp
nodeflate
persist
maxfail 0
/etc/ppp/peers/vega
Код:
pty "pptp vpn.vega-int.ru --nolaunchpppd"
name ваше_имя
-pap
+chap
noauth
defaultroute
file /etc/ppp/options.pptp
у некоторых абонентов первая строка должна быть pty "pptp vpn-1.vega-int.ru --nolaunchpppd"

/etc/ppp/chap-secrets
Код:
ваше_имя * ваш_пароль *

В принципе, на этом настройка закончена
включить VPN можно коммандой
pppd call vega
выключить
killall pppd

Но, нельзя забывать о маршрутизации.
У меня на машине (не понял почему) не отрабатывается опция defaultroute т.е. VPN-соединение есть, но данные через него не идут т.к. маршруты правильно не выставлены.
Если у вас такая-же ситуация, решаем это следующими скриптами:
vpn-start
Код:
#!/bin/sh
OLDGW=`ip route show | grep default | awk '{print $3}'`
route add -host vpn.vega-int.ru gw $OLDGW
pppd call vega
sleep 30s
route del default
route add default dev ppp0
echo $OLDGW >/tmp/OLDGW
у некоторых абонентов третья строка должна быть route add -host vpn-1.vega-int.ru gw $OLDGW

vpn-stop
Код:
#!/bin/sh
route del default
killall pppd
route add default gw `cat /tmp/OLDGW`
Выставим этим скриптам атрибут - "исполняемый":
chmod a+x vpn-start vpn-stop
Переместим их в "правильное место":
mv vpn-start /usr/local/bin
mv vpn-stop /usr/local/bin

Теперь запускать и останавливать VPN соединение может любой (!) пользователь системы.

Можно добавить в конец файла /etc/rc.d/rc.local строку
/usr/local/bin/vpn-start
тогда VPN-соединение будет устанавливаться при старте системы.

Не забывайте про log-файлы!
Очень удобно, настраивая подключение, в отдельной консоли выполнить комманду
tail -f /var/log/messages
тогда вы будете наблюдать, в реальном времени, что происходит при подключении.

Вот, в первом приближении, HowTo "Vega-VPN for Linux" <_<
Пробуйте.
 

CoderA

Местный
PS1: А как настроить vpn ???

попробовал использовать для настройки pptpconfig. соединение устанавливается нормально, однако в интернет прорваться не удается :D

возможно это какие-то заморочки клона, так что попробуйте может получится ... все необходимые пакеты прикрепляю Посмотреть вложение 9260
 

Mike22

Местный
возможно это какие-то заморочки клона
гм.. а причём тут Клон?
у них с сети немного другой тип pptp-соединения используется, нужно сделать так -
require-mppe-128
require-mschap-v2
refuse-eap
:D
... все необходимые пакеты прикрепляю
В этом файле .deb-пакеты. Т.е. это pptpconfig для основаных на Debian дистрибутивов.
 

CoderA

Местный
привет всем! пишу из кноппикса

гм.. а причём тут Клон?
(у них с сети немного другой тип pptp-соединения используется, скажем так)

какой такой другой тип? в первый раз я видимо опечатку допустил при заполнении форм pptpconfiga

В этом файле .deb-пакеты. Т.е. это pptpconfig для основаных на Debian дистрибутивов.

они подходят для кноппикса и первоначально были брошены в соответствующую тему

если кому-то нужны rpm пакеты берите здесь

http://quozl.us.netrek.org/pptp/pptpconfig/
 

Трансэнерго

ОАО Трансэнерго
Модератор
и всеже рецепт не универсален, так как возникают неявные проблемы, например,
"...если в ней есть файлы options и options.pptp то, вероятно всё в порядке, иначе устанавливайте ppp и/или pptp."

несмотря на наличие этих файлов, проблема возникает на этапе pppd call vega: "bash: pppd: command not found"
видимо всетаки требуется pptp для FC4? или как быть?
 

BuG2BuG

Демон FreeBSD
Возможно не прописаны пути. Пожалуйста, покажите, что у Вас в переменной окружения PATH. Например вот так:

Код:
bug2bug% echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/user/bin
bug2bug%

С Уважением,
 

Mike22

Местный
... несмотря на наличие этих файлов, проблема возникает на этапе pppd call vega: "bash: pppd: command not found"
видимо всетаки требуется pptp для FC4? или как быть?
Странно, но если pptp действительно не установлен, то вот ссылка на pptp-клиент для FC4 -
http://download.fedora.redhat.com/pub/fedo...-1.fc4.i386.rpm
 

Трансэнерго

ОАО Трансэнерго
Модератор
Возможно не прописаны пути. Пожалуйста, покажите, что у Вас в переменной окружения PATH. Например вот так:

Код:
bug2bug% echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/user/bin
bug2bug%

С Уважением,

Вот такой результат
[efim@localhost ~]$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/efim/bin
следуя совету, установил http://download.fedora.redhat.com/pub/fedo...-1.fc4.i386.rpm, пакет встал нормально, как мне сообщили в красивом окошке, но нужный результат не достигнут.
начинаю в этом теряться, честно говоря

Странно, но если pptp действительно не установлен, то вот ссылка на pptp-клиент для FC4 -
http://download.fedora.redhat.com/pub/fedo...-1.fc4.i386.rpm

не знаю в чем дело, читаю книжку :(
да, я тут нашел такую вот штуку,


а это реально работает? может попробовать?

С уважением
 

BuG2BuG

Демон FreeBSD
[efim@localhost ~]$ echo $PATH
/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/efim/bin

Не знаю, как в линуксах, в NetBSD, например, pppd находится здесь: /usr/sbin/pppd. Следовательно, из Вашего вывода видно, что у Вас в PATH не хватает следующих каталогов: /sbin:/usr/sbin:/usr/local/sbin. Посмотрите файлы .bashrc, .profile, .login, .shrc и подобные на наличие строчки экспорта PATH. После правки там должно оказаться примерно следующее:

Код:
PATH=/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/efim/bin:/sbin:/usr/sbin:/usr/local/sbin
export PATH

С Уважением,
 

Veresk

Пользователь
Все сделал по инструкции, но vpn не работает. Дистрибутив Mandriva 2007.
 

Ощущение

Новичок
Мда, действительно не работает.
Дистриб - Мандрива powerpack+ '07

Краем глаза услышал возможность пустить инет через локалку, без впн.
Админы, атэншн) Поясните плз?
 

Ощущение

Новичок
Ох)))
Прошу прощения, я просто не прочитал вторую часть инструкции про маршрутизацию...
:D
 

Ощущение

Новичок
Ищу человека, который придет и объяснит как настраивать, запутался уже( С меня что-нибудь)
 

OM777

Пользователь
Не получается настроить впн в федоре 7
Сделал все согласно инструкции, однако получаю следующее

Код:
Aug 29 14:20:55 localhost pppd[8252]: Using interface ppp0
Aug 29 14:20:55 localhost pppd[8252]: Connect: ppp0 <--> /dev/pts/2
Aug 29 14:20:55 localhost pptp[8652]: anon log[main:pptp.c:276]: The synchronous pptp option is NOT activated 
Aug 29 14:20:55 localhost pptp[8659]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 1 'Start-Control-Connection-Request' 
Aug 29 14:20:55 localhost pptp[8659]: anon log[ctrlp_disp:pptp_ctrl.c:738]: Received Start Control Connection Reply
Aug 29 14:20:55 localhost pptp[8659]: anon log[ctrlp_disp:pptp_ctrl.c:772]: Client connection established.
Aug 29 14:20:56 localhost pptp[8659]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 7 'Outgoing-Call-Request' 
Aug 29 14:20:56 localhost pptp[8659]: anon log[ctrlp_disp:pptp_ctrl.c:857]: Received Outgoing Call Reply.
Aug 29 14:20:56 localhost pptp[8659]: anon log[ctrlp_disp:pptp_ctrl.c:896]: Outgoing call established (call ID 0, peer's call ID 768). 
Aug 29 14:20:59 localhost pppd[8252]: LCP terminated by peer (peer refused to authenticate)
Aug 29 14:20:59 localhost pptp[8659]: anon log[pptp_read_some:pptp_ctrl.c:543]: read returned zero, peer has closed
Aug 29 14:20:59 localhost pptp[8659]: anon log[callmgr_main:pptp_callmgr.c:255]: Closing connection (shutdown)
Aug 29 14:20:59 localhost pptp[8659]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 12 'Call-Clear-Request' 
Aug 29 14:20:59 localhost pptp[8659]: anon log[pptp_read_some:pptp_ctrl.c:543]: read returned zero, peer has closed
Aug 29 14:20:59 localhost pptp[8659]: anon log[call_callback:pptp_callmgr.c:78]: Closing connection (call state)
Aug 29 14:20:59 localhost pppd[8252]: Modem hangup
Aug 29 14:20:59 localhost pppd[8252]: Connection terminated.
Aug 29 14:20:59 localhost pppd[8252]: Using interface ppp0
Aug 29 14:20:59 localhost pppd[8252]: Connect: ppp0 <--> /dev/pts/2
и далее по кругу то же самое
Переустановил пакет ppp - не помогло
как бы это вылечить? :lol:
А то ради интернета приходится виндовс грузить
 

OM777

Пользователь
в /etc/ppp/chap-secrets всё верно указал ?

Конечно.
Я бы сюда не стал писать еслиб несколько раз все не перепроверил :rolleyes:
Может быть кто-нибудь выложит в архиве правильное работающее содержимое каталога /etc/ppp/ ?
Естественно вместо имени и пароля нарисовать левые цифры
 
Сверху