Friday, February 9, 2007

Настройка VPN

На многих форумах уже отмечали любовь всех линуксоидов к VPN.
Попробуем разобраться:

Инструментарий который нам понадобиться: в принципе не так уж и много всего лишь 2 пакета: pptp и ppp. Второй пакет у вас должен быть уже установлен в системе. pptp придёться ставить самим:)
Итак пакеты мы поставили. Что дальше? Идём в каталог /etc/ppp/ и если там ещё не создан, то создаём каталог peers. В нём в свою очередь создаём текстовый файл (Именно этот файл и будет именем вашего соединения), ну назовём к примеру его Internet. Пример своего привожу ниже:
root@corbina:/etc/ppp/peers# cat Internet

name тут ваш логин
remotename PPTP
debug
lock
noauth
nobsdcomp
nodeflate
defaultroute
#updetach
nodetach
noproxyarp
pty "/usr/sbin/pptp адресс до VPN сервера --nolaunchpppd"

Теперь в каталоге /etc/peers/ изменим файлы: ip-up, ip-down и chap-secrets.
В первых 2-х нам будет необходимо прописать все маршруты.
В up для соединения, в down для разрыва. строки должны быть вида:

/sbin/route add -host 195.14.50.1 gw 10.220.0.17 eth0
/sbin/route add -host 195.14.50.3 gw 10.220.0.17 eth0

Ваши маршруты вам должен дать провайдер.
В chap-secets указываеться логи и пароль для соединения. Запись должна иметь аткой вид:
"логин" * "пароль" * (Внимание кавычки стоят не случайно).

Вот в принципе и всё. теперь запускаем pppd call Internet - и соедиение должно подняться. Но я столкнулся здесь с проблемой. Но она вроде бы связана только с моим провайдером. Выдвалась ошибка о том, что невозможно переписать маршрут default.
Перелазил кучу форумов, досканально изучил все мануалы лежажие на форуме моего провайдера. В пустую. Только потом мне ответили что совсем недавно мой провайдер начал экономить на адрессах. Решением проблемы стало банальное удаление default из таблицы маршрутизации и прописание дополнительного маршрута до VPN сервера. В итоге строка получила такой вид:
route add Здесь_пишем_ адресс_до_VPN gw Шлюз dev eth0.
После чего VPN всё таки поднялся:)
Что удивительно, что в Windows у меня частенько VPN просто отключался (Район то подключили но не руками), в Linux'е же всё просто великолепно:) Если что-то упустил или кому то есть что добавить, то милости просим:)

5 comments:

virens said...

Большое спасибо за статью, очень интересно и нужно - не возражаете, если буду давать на вас ссылки? :-)

Продолжайте в том же духе. Буду рад видеть вас у себя.

valeho said...

Конечно не возражаю:-) Буду только рад:-)

ulmen said...

спасибо, многим может быть полезно.
Было дело и я таким маялся, только было посложнее - pptp шифрованием mppe, долго маялся, настроить получилось только в убунту.
Тут недавно грузился на поглядеть в Sabayon Linux, там в комплекте была простая утилита kvpnc, которая справилась с настройкой pptp(с шифрованием) на ура.

valeho said...

Было дело и я таким маялся, только было посложнее - pptp шифрованием mppe, долго маялся,
Возможно придёт время и мне придёться маяться. Наш провайдер творит что то непонятное. И каких ещё сюрпризов от него ожидать неизвестно никому. За утилиту спасибо:-) Она мне чуть чуть не подходит тем что каждый раз мне приходиться прописывать ручками новый маршрут до VPN сервера.

ulmen said...

Судя по ченжлогу, маршрут по умолчанию она уже научилась выставлять.