Поиск по этому блогу

Настройка VPN по L2TP в Ubuntu

Настройка VPN по L2TP в Ubuntu | Линуксблог

1. Вначале необходимо установить пакет xl2tp.

$ sudo apt-get install xl2tpd

2. Редактируем файл /etc/xl2tpd/xl2tpd.conf:

$ sudo gedit /etc/xl2tpd/xl2tpd.conf

Необходимо прописать в него следующее:



[global]
access control = yes
[lac beeline]
lns = l2tp.beeline.ua
redial = yes
redial timeout = 1
require chap = yes
require authentication = no
name =
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
require pap = no
autodial = yes

где — ваше имя пользователя в Beeline.

3. Редактируем /etc/ppp/options.xl2tpd:

$ sudo gedit /etc/ppp/options.xl2tpd

Прописываем в него:

unit 0
name
remotename l2tp
ipparam beeline
connect /bin/true
mru 1460
mtu 1460
nodeflate
nobsdcomp
persist
maxfail 0
nopcomp
noaccomp
defaultroute
replacedefaultroute

4. В /etc/ppp/chap-secrets добавляем строку (если ее еще там нет):

*

5. Вносим изменения в /etc/init.d/xl2tpd:

$ sudo gedit /etc/init.d/xl2tpd


Необходимо поменять секцию start следующим образом:

start)
if !([ -f /var/run/xl2tpd/l2tp-control ]) ; then
mkdir -p /var/run/xl2tpd
touch /var/run/xl2tpd/l2tp-control
fi

echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
route add -host gw
route add -host gw
route add -host gw


(L2TP-сервер провайдера),

(первый DNS-сервер),

(второй DNS-сервер),

(шлюз по умолчанию) определяются для каждого случая свои.

Для их определения можно воспользоваться командами:

$ host l2tp.beeline.ua
$ cat /etc/resolv.conf
$ route -n


Или уточнить их в службе технической поддержки провайдера. Очень важно, чтобы маршруты

были прописаны правильно.

6. Прописываем в /etc/network/interfaces свои настройки сети для карточки:

auto lo eth0
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0
iface eth0 inet dhcp


7. Удаляем network-manager из системы, чтобы не мешал работать стандартной дебиановской


сетевой системе и позволил проинициализировать eth0 до того, как будет


подниматься ppp0 через xl2tpd:


$ sudo aptitude remove network-manager


8. Теперь можно перезагрузиться и посмотреть на результат. Если все нормально, то по команде ifconfig мы

получим три интерфейса — lo, eth0 и ppp0. Что и требовалось.

9. В случае, если необходимо расшарить интернет на другие машины, можно в /etc/init.d/xl2tpd

в секцию start после route -add добавить строчки:

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu


Возможные проблемы

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

соединение устанавливается, но через минуту-две обрывается либо без каких-либо сообщений,

либо с сообщением в /var/log/messages:

No response to 4 echo-requests


В таком случае можно попытаться сделать следующее:

* Убедиться, что network-manager удален из системы. Кроме того, убедиться, что нет еще
каких-либо факторов, мешающих стандартной дебиановской сетевой системе. Таковым может
являться firestarter или некорректные настройки dnsmasq или ipmasq.
* Убедиться, что указан верный маршрут к L2Tp-серверу провайдера. В случае чего уточнить
его в службе технической поддержки.


Если же интерфейс ppp0 успешно поднимается и не обрывается, но сайты не открываются, то проблема


скорее всего в DNS-серверах. Нужно указать их правильные адреса в маршрутах.

1 комментарий:

  1. Может проще поднять VPN L2TP или PPTP через программу http://code.google.com/p/vpnpptp/ ?

    ОтветитьУдалить