четверг, 21 июля 2011 г.

VPN для Kabinet

Для работы с провайдером Kabinet необходимо настроить VPN соединение
Следует отметить, что для работы VPN, потребуется установка пакета pptp-linux

Предварительно "убиваем" network-manager
apt-get remove network-manager



Ещё вариант "убийства" network-manager
update-rc.d -f network-manager remove
это удалит ссылки на network-manager из всех /etc/rcX.d/ каталогов

Настройка сети:
/etc/network/interfaces

iface eth0 inet static
  address <ip>
  netmask <mask>
  gateway <gateway>
/etc/resolv.conf

nameserver 87.224.197.1
nameserver 87.224.213.1

Первичную настройку VPN можно произвести
pptpsetup --create <telenet> --server 10.0.0.1 --username <your_login> --password <your_password> --encrypt

После чего редактируем /etc/ppp/peers/telenet

pty "pptp 10.19.0.1 --nolaunchpppd"
lock
noauth
nobsdcomp
nodeflate
++noccp
name <your_login>
remotename <telenet>
ipparam <telenet>
require-mppe-128
++defaultroute
++replacedefaultroute

++ - добавляем noccp чтобы отключить сжатие, defaultroute и replacedefaultroute чтобы изменить таблицу маршрутизации в соответствии с вновь созданным подключением (весь трафик кроме локального идет через впн)
++ перед строками добавлять не нужно

Я бы еще добавил параметры
maxfail 0 - всегда пытаться подключиться при отсутствии связи;
lcp-echo-interval 10 - интервал времени, по прошествии которого, происходит опрос удаленной стороны;
lcp-echo-failure 3 - количество не отвеченных запросов удаленной стороны, после чего система считает, что нас отключили;
persist - пытаться по новой открыть соединение, когда оно закрывается;
это даст постоянной мониторинг соединения, а при разрыве связи автоматический реконнект
еще в когфиг можно добавить
usepeerdns - чтобы получать DNS сервера автоматически от VPN сервера

Т.о. окончательный конфиг /etc/ppp/peers/telenet


pty "pptp 10.0.0.1 --nolaunchpppd"
lock
noauth
nobsdcomp
nodeflate
noccp
name <your_login>
remotename <telenet>
ipparam <telenet>
require-mppe-128
defaultroute
replacedefaultroute
maxfail 0
lcp-echo-interval 10
lcp-echo-failure 3
persist
usepeerdns


Пароля в данном файле нет, он сохранен в /etc/ppp/chap-secrets и подключается в основной конфиг строчкой remotename <telenet>
cat /etc/ppp/chap-secrets

<your_login> <telenet> "<your_password>" *

Для диагностики соединения можно запустить соединение pppd call <telenet> debug nodetach
В случае успешного соединения получите нечто вроде:

# pppd call <telenet> debug nodetach
using channel 27
Using interface ppp0
Connect: ppp0 <--> /dev/pts/2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xc8739559> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <auth chap MD5> <magic 0x92558859>]
sent [LCP ConfAck id=0x1 <auth chap MD5> <magic 0x92558859>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xc8739559> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xc8739559]
rcvd [CHAP Challenge id=0x1 <02783684f04fcb45d48b536a44f9edfd>, name = "fttb-bras1"]
sent [CHAP Response id=0x1 <eb23523f88a20f485f7dc4a8b09dbf58>, name = "<login>"]
rcvd [CHAP Success id=0x1 ""]
CHAP authentication succeeded
CHAP authentication succeeded
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
rcvd [IPCP ConfReq id=0x1 <addr 10.19.0.1>]
sent [IPCP ConfAck id=0x1 <addr 10.19.0.1>]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 217.114.233.240>]
sent [IPCP ConfReq id=0x3 <addr 217.114.233.240>]
rcvd [IPCP ConfAck id=0x3 <addr 217.114.233.240>]
not replacing existing default route via 192.168.1.1
Cannot determine ethernet address for proxy ARP
local  IP address 217.114.233.240
remote IP address 10.19.0.1
Script /etc/ppp/ip-up started (pid 14845)
Script /etc/ppp/ip-up finished (pid 14845), status = 0x0

А после того, как подключение проверено на работоспособность, добавить в /etc/network/interfaces

auto kabinet
iface kabinet inet ppp
provider kabinet
pre-up ip link set eth1 up

где kabinet - имя соединения, eth1 - физический интерфейс на кабинет
это даст автоматическое поднятие vpn при старте системы
чтобы в дальнейшем подключать впн достаточно от имени рута выполнить pon <telenet> либо настроить sudo, чтобы выключить poff <telenet>

PS параметры заключенные в < > должны быть изменены в соответствии с вашими настройками

Взято и переработано с http://forum.telenet.ru/index.php?showtopic=209497

Комментариев нет:

Отправить комментарий