Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
Новости
Последние поступления
Книжный магазин
  Hardware:
Видеоустройства
Системные платы
Процессоры
Мобильные устройства
Аудиосистема
Охлаждение системы
Накопители информации
КПК и ноутбуки
Телефоны и связь
Периферия
Система
Сети
Разные устройства
 
  Programming:
Web-разработка
Языки программирования
Технологии и теория
Разработка игр
Программная инженерия
 
  Software:
Операционные системы
Windows 7
Базы данных
Обзоры программ
Графика и дизайн
   
  Life:
Компьютерная жизнь
Разные материалы
   
Партнеры
Публикация
Правовая информация
Реклама на сайте
Обратная связь
Экспорт в RSS Экспорт в RSS2.0
    Читать в Яндекс.Ленте



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

Раздел: Software / Linux @ 12.05.2008 | Ключевые слова: ubuntu linux vpn l2tp версия для печати

Автор: SolarWind
Источник: solargate.ru

Исторически сложилось, что многие российские провайдеры предоставляют подключение к интернет через VPN-соединение. Соответственно, пользователям Linux для этого приходится настраивать подключение по PPTP. Относительно недавно у некоторых провайдеров появилась возможность подключения по протоколу L2TP. Не вдаваясь в технические подробности, скажу, что для пользователей Linux теперь появилась возможность кардинально улучшить свое интернет-соединение. Забегая вперед, замечу, что результат превзошел все мои ожидания.

Такая возможность появилась с поддержкой OpenL2TP в последних ядрах Linux. В этой заметке пойдет речь о настройке L2TP-соединения в Ubuntu Linux на примере провайдера Corbina Telecom. Для других провайдеров, думаю, настройка будет не сильно отличаться. Выражаю огромную благодарность sdvn, написавшему очень толковую инструкцию по настройке.

Настройка L2TP-соединения

1. Вначале необходимо установить пакет xl2tp. В репозиториях Ubuntu 8.04 он уже есть.

$ sudo apt-get install xl2tpd

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

$ sudo gedit /etc/xl2tpd/xl2tpd.conf

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

[global]

access control = yes

[lac corbina]

lns = l2tp.corbina.net

redial = yes

redial timeout = 1

require chap = yes

require authentication = no

name = <corbina-user-name-without-brackets>

ppp debug = yes

pppoptfile = /etc/ppp/options.xl2tpd

require pap = no

autodial = yes

 

где <corbina-user-name-without-brackets> - ваше имя пользователя в Corbina.

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

$ sudo gedit /etc/ppp/options.xl2tpd

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

unit 0

name <corbina-user-name-without-brackets>

remotename l2tp

ipparam corbina

connect /bin/true

mru 1460

mtu 1460

nodeflate

nobsdcomp

persist

maxfail 0

nopcomp

noaccomp

defaultroute

replacedefaultroute

 

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

<corbina-user-name-without-brackets> * <corbina-password-without-brackets>

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 <host l2tp.corbina.ru> gw <default-gw>

      route add -host <dns-server-1> gw <default-gw>

      route add -host <dns-server-2> gw <default-gw>

 

Здесь <host l2tp.corbina.ru> (L2TP-сервер провайдера), <dns-server-1> (первый DNS-сервер), <dns-server-2> (второй DNS-сервер), <default-gw> (шлюз по умолчанию) определяются для каждого случая свои. Для их определения можно воспользоваться командами:

$ host l2tp.corbina.ru

$ 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-серверах. Нужно указать их правильные адреса в маршрутах.

Результаты

В моем случае результаты оказались следующими.

При работе через PPTP:

 

 

При работе через L2TP:

 

 

Результат потрясающий и говорит сам за себя.

Это интересно:








версия для печатиРаспечатать статью


Вернуться в раздел: Software / Linux


Реклама:
Читать наc на:

Add to Google
Читать в Яндекс.Ленте






Rambler's Top100
© Copyright 1998-2012 Александр Томов. All rights reserved.