сегодня: 16-10-2018
сообщений на этом форуме: 1
авторские разделы
все форумы
Linux

Автор: Jes · книжка Jes  
Отправлено: 2011-01-03 18:15:06  · найти в дереве · 

Настройка VPN в linux (ubuntu, AltLinux)

Можно создать скрипт, запускающий соединение, а можно использовать вместе с небольшими системными настройками NetworkManager c nm-applet (и с ним же — под KDE тоже, потому что пока собственный Менеджер Соединений от KDE не работает с VPN, но как заработает, настраивать его нужно будет точно так же). В любом случае запуск/отключение VPN-соединения с помощью находящегося в трее приложения (nm-applet здесь) удобнее: всегда видно наличие или отсутствие этого соединения.

Итак, у нас имеется минимум сведений от провайдера, который поддерживает только M$ системы, а значит, предоставляет пользователю только параметры для TCP/IP и exe-программку для VPN-соединения:
Для TCP/IP-соединения:
1) IP адрес
2) маска сети и, возможно, шлюз (но не обязательно)
3) Адрес DNS-сервера

Для VPN-соединения:
4) логин
5) пароль

Наcтраиваем TCP/IP.
Далее всё, что нам ещё нужно узнать о провайдере, это его шлюз для VPN-соединения, который он также может скрывать. Например, его можно выцепить, исходя из адреса сервера статистики соединений (который предоставляется в обязательном порядке) — если он stats.web.lan, то VPN-шлюз, скорее всего, находится по адресу vpn.web.lan. Если такой адрес пингуется, то всё ОК.

Прописываем эти данные в nm-applet, значок которого находится в трее. Если стоит KDE, то добиваемся того, чтобы в трее этот значок был, как — см. ниже.

1) щёлкаем по значку nm-applet в трее правой кнопкой мышки и выбираем «Изменить соединения», во вкладке «VPN» нажимаем «Добавить»:

2) создаём VPN-соединение с протоколом PPTP:

3) прописываем данные vpn-шлюза (Gateway), логина, пароля во вкладке «VPN» (имеет смысл поставить «show» на пароль, потом он всё равно будет скрыт), остальные галки пока снимаем, если они есть:

4) в «Дополнительно» (Advanced) убираем все галки, оставив одну только на CHAP (если у провайдера другой тип авторизации, то можно попробовать все, но, скорее всего, у него CHAP):

5) во вкладке «Параметры IPv4» прописываем Сервера DNS, если надо (их IP может показываться в
/var/log/messages у AltLinux, у которого в логи при VPN-соединении отображается много разной информации) и домены поиска (это, например — домен провайдера, Яндекса), но вполне возможно, что достаточно будет только выбрать Профиле опцию «Автоматически» (без «только адрес»)и ничего не прописывать:


Файл /etc/ppp/options редактируем, он должен выглядеть так:
$ cat /etc/ppp/options
lock
noipdefault
noauth
replacedefaultroute
nopredictor1

Проверяем VPN-соединение и смотрим в логи /var/log/messages — в ubuntu успешное соединение будет выглядеть как-то так:
Jan 3 18:08:42 murm pppd[5393]: Plugin /usr/lib/pppd/2.4.5//nm-pptp-pppd-plugin.so loaded.
Jan 3 18:08:42 murm pppd[5393]: pppd 2.4.5 started by root, uid 0
Jan 3 18:08:42 murm pppd[5393]: Using interface ppp0
Jan 3 18:08:42 murm pppd[5393]: Connect: ppp0 <--> /dev/pts/3
Jan 3 18:08:46 murm pppd[5393]: CHAP authentication succeeded
Jan 3 18:08:46 murm pppd[5393]: CHAP authentication succeeded
Jan 3 18:08:46 murm pppd[5393]: local IP address 10.4.14.53
Jan 3 18:08:46 murm pppd[5393]: remote IP address 10.0.0.1
Jan 3 18:08:46 murm pppd[5393]: primary DNS address 191.100.128.252
Jan 3 18:08:46 murm pppd[5393]: secondary DNS address 191.100.128.252

Если соединения нет, то смотрим в лог — что не так, думаем и исправляем.
Теперь, чтобы наконец заработал интернет (пока что сеть для нас недоступна, хотя VPN-соединение и есть, но нет маршрутизации), достаточно создать файл
/etc/ppp/ip-up.d/route-traffic со следующим содержанием:
#!/bin/bash
NET="10.0.0.0/8" # вся сетка — см. local IP address в /var/log/messages
IFACE="ppp0" # pptp интерфейс
route add -net ${NET} dev ${IFACE}
route add default gw 10.0.0.1 ppp0
route add default dev ppp0

— здесь 10.0.0.1 как раз тот адрес, который нам показывается как remote IP address
в /var/log/messages
Перезапускаем соединение — если всё верно, то мы в интернете!

Теперь осталось научиться запускать nm-applet в KDE (сначала, он должен там стоять — на всякий случай, чтобы сразу подсоединиться к интернету и гарантировано иметь его ещё на LiveCD при установке, я ставлю основной системой xubuntu, а в ней уже доставляю всё мне необходимое, включая kubuntu-desktop). Для этого идём в
Главное Меню —> Настройка —> Параметры Системы (System Settings) и находим там
Системное Администрирование —> Автозапуск: прописываем nm-applet и во вкладке «Приложение» его свойств нажимаем кнопку «Дополнительные параметры» и ставим галку «Разместить в системном лотке».
Строка запуска nm-applet должна выглядеть так:
ksystraycmd nm-applet

В том же разделе «Системное Администрирование» Параметров Системы идём в Управление Службами, снимаем галку с NetworkManager User Setting Service, останавливаем эту службу и перезапускаем сеанс — всё, иконка nm-applet должна появиться в трее: выбираем в «Соединения VPN» созданное нами соединение и подключаемся! При успешном соединении на иконке отобразится «золотой замочек» (при теме значков Tango).

Редактировано: 2011-01-23 16:40:50
Прочтений на форуме: 108249 
 

Сообщения в этом потоке:

· Настройка VPN в linux (ubuntu, AltLinux) (108249) - Jes - (5251 b) - 2011-01-03 18:15:06

Все форумы: 
На этом сайте нет места для вашей рекламы.


Зарегистрироваться
Почта:
Пароль:
Забыли пароль?