/services/svpn-mephi-ru/debianl2tp

В данной пошаговой инструкции описан способ реализации защищенного VPN соединения по протоколу L2TP через IPSec. Перед началом настойки удостоверьтесь, что у вас есть рабочее соединение с интернетом по какому-либо другому протоколу для установки требуемых пакетов. Возможность автономной установки пакетов в данной инструкции не рассматривается.

Часть I. Настройка IPSec

Протокол IPSec имеет два режима - транспортный и туннельный. Туннельный режим хорошо работает за NAT, но сложнее, чем транспортный. Сервер для туннельного режима доступен по адресу «svpn-ipsectunnel.mephi.ru» (85.143.112.49), и для транспортного, соответственно, «svpn-ipsectransport.mephi.ru» (85.143.112.48).

  1. Проверьте наличие поддержки IPSec в вашем ядре: Это можно сделать командой: , например, Если некоторые опции не поддерживаются, вам необходимо переконфигурировать ядро ОС.
  2. Установите пакеты: При установке racoon выберите ручную настройку.
  3. Откройте в Интернет-браузере ресурс «svpn.mephi.ru», выберите произвольный логин/пароль и сохраните сертификат. Выберите формат tar. Пусть, пользователь имеет логин omg.
  4. Далее, необходимо извлечь сертификаты стандарта X.509 из архива и переместить их в директорию /etc/racoon/certs:
  5. Откройте файл /etc/racoon/racoon.conf в текстовом редакторе и заполните его следующим содержимым:
  6. Откройте файл /etc/*ipsec-tools.conf в текстовом редакторе и заполните его следующим содержимым (случай туннельного режима): или (случай транспортного режима): Далее в тексте по умолчанию приведены примеры конфигурационных файлов и команд для туннельного режима. Для транспортного режима необходимо заменить адрес 85.143.112.49 на 85.143.112.48.
  7. Создайте сетевой интерфейс с натированием:
  8. Запустите демон:

Часть II. Настройка L2TP на базе XL2TPd

L2TP соединение в Debian можно реализовать с использованием пакета xl2tpd, либо openl2tp. Рассмотрим эти случаи по очереди.

  1. Откройте терминал с правами суперпользователя (root). Если в вашей системе это запрещено из соображений безопасности, вам следует выполнять все действия с использованием утилиты sudo.
  2. Проверьте наличие поддержки PPP в вашем ядре: Это можно сделать командой: Если некоторые опции не поддерживаются, вам необходимо переконфигурировать ядро ОС.
  3. Проверьте наличие «ppp» устройства. При отсутствии его необходимо создать:
  4. Установите пакеты:
  5. Отправьте письмо с просьбой выдать логин/пароль для L2TP подключения на voip@mephi.ru. Пусть, вы получили логин foo и пароль bar (Не путайте с omg / smb !)
  6. Откройте в текстовом редакторе файл /etc/xl2tpd/xl2tpd.conf и допишите в конец:
  7. Создайте файл: со следующим содержимым:
  8. Откройте в текстовом редакторе файл «/etc/ppp/options», найдите строку «auth» и закомментируйте её.
  9. Допишите в конец файла «/etc/ppp/chap-secrets»:
  10. Проверьте, загружен ли у вас модуль ядра ppp-generic комaндой lsmod. Если нет, загрузите его
  11. Далее, необходимо отключить Network Manager. Для этого, проверьте стандартный runlevel в вашей системе. Например, Т.е. в примере стандартным является runlevel 2. Затем, проверьте runlevel вашей системы в рабочем сотоянии: Т.е. в примере система работает в runlevel 3. Обычно, эти значения совпадают, но, как видно из примера, не всегда.
  12. Внимание! Следующее действие может привести к неработоспособности сети, в случае, если вы перезагрузка машину до окончательной настройки L2TP (или другого подключения)! Следует отключить задгузку Network Manager как в стандартном, так и в рабочем runlevel. Для этого надо переименовать ссылку на Network Manager в директории /etc/rdS, где S - номер runlevel. Для приведённого выше примера:
  13. Перестройте запуск программ в соответствии с внесёнными изменениями:
  14. Остановите Network Manager: Если вам потребуется восстановить подключение к сети по старому протоколу, то можно снова запустить Network Manager командой:
  15. Создайте файл со следующим содержимым:
  16. Сделайте скрипт исполняемым и выполнте его
  17. Запустите демон: После этого таблица маршрутизации должна выглядеть примерно так:
  18. Проверьте доступность удалённого PtP хоста: Если сервер доступен, то настройка соединения прошла успешно.

Часть III. Настройка L2TP на базе OpenL2TP

  1. Откройте терминал с правами суперпользователя (root). Если в вашей системе это запрещено из соображений безопасности, вам следует выполнять все действия с использованием утилиты sudo.
  2. Проверьте наличие поддержки PPP over L2TP в вашем ядре: Это можно сделать командой: , например, Если некоторые опции не поддерживаются, вам необходимо переконфигурировать ядро ОС.
  3. Проверьте наличие «ppp» устройства. При отсутствии его необходимо создать:
  4. Проверьте последнюю опубликованную версию программы на странице «http://openl2tp.org/downloads». На момент написания инструкции - это «openl2tp-1.8». Далее в тексте будет упоминаться именно эта версия.
  5. Проверьте версию вашего дистрибутива: Если в данном файле версия debian указана в численном виде, то можно использовать следующее соответствие чисел и имени:
    • 5 - это "lenny"
    • 6 - это "squeeze"
    • 7 - это "wheezy"
    Например, 6.0.2 - это "squeeze"
  6. Внутри ftp://ftp.openl2tp.org/releases/openl2tp-1.8/ находятся директории с пакетами, соответсвующими конкретным дистрибутивам. Например, директория ftp://ftp.openl2tp.org/releases/openl2tp-1.8/debian-squeeze/ содержит пакеты: Скачайте пакет, соответствующий вашему дистрибутиву и релизу вашего ядра. Релиз ядра можно узнать командай uname -r. Например: Также предлагается отдельно собранная версия openl2tp-1.8 под debian wheezy [amd64], пакеты доступны по ссылкам [1] и [2].
  7. Установите полученный пакет:
  8. Отправьте письмо с просьбой выдать логин/пароль для L2TP подключения на voip@mephi.ru. Пусть, вы получили логин foo и пароль bar (Не путайте с omg / smb !)
  9. Далее, необходимо отключить Network Manager. Для этого, проверьте стандартный runlevel в вашей системе. Например, Т.е. в примере стандартным является runlevel 2. Затем, проверьте runlevel вашей системы в рабочем сотоянии: Т.е. в примере система работает в runlevel 3. Обычно, эти значения совпадают, но, как видно из примера, не всегда.
  10. Внимание! Следующее действие может привести к неработоспособности сети, в случае, если вы перзагрузита машину до окончательной настройки L2TP (или другого подключения)! Следует отключить задгузку Network Manager как в стандартном, так и в рабочем runlevel. Для этого надо переименовать ссылку на Network Manager в директории /etc/rdS, где S - номер runlevel. Для приведённого выше примера:
  11. Перестройте запуск программ в соответствии с внесёнными изменениями:
  12. Остановите Network Manager: Если вам потребуется восстановить подключение к сети по старому протоколу, то можно снова запустить Network Manager командой: Однако, для дальнейшей настройки L2TP его следует снова выключить.
  13. Создайте файл «/etc/ppp/ip-up.d/mephivpn.sh»:
  14. Сделайте скрипт исполняемым:
  15. Запустите демон
  16. Запустите утилиту настройки OpenL2TP: Проверьте состояние соединения: Если в строке state: указано ESTABLISHED, то конфигурирование пакета прошло успешно. Сохраните файл с настройками: После этого таблица маршрутизации должна выглядеть примерно так:
  17. Проверьте доступность ptp сервера: Если сервер доступен, то настройка соединения прошла успешно.