Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: L2TP в двух словах  (Прочитано 3671 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Int_20h

  • Автор темы
  • Участник
  • *
  • Сообщений: 137
    • Просмотр профиля
L2TP в двух словах
« : 13 Августа 2014, 22:27:11 »
Ребята, кто может в двух словах объяснить порядок всех этих авторизаций при настройке XL2TPD?

Я настраиваю сервер, чтобы он организовывал VPN через L2TP, использую xl2tpd и openswan, как написано в куче мануалов в интернете. Но все они сводятся к нескольким страницам текста без подробных объяснений, общий смысл которых "Делай, как написано и все будет ОК".

Но я пытаюсь установить VPN-соединение из Windows 8.1 и у меня все совсем не OK. Я запутался в этих конфигах. Вот лог l2tpd:

(Нажмите, чтобы показать/скрыть)

Демон говорит: Denied connection to unauthorized peer 217.118.78.110

Но где настраивается эта авторизация??? Винда просит имя пользователя и пароль для подключения, а в настройках /etc/xl2tpd/l2tp-secrets поля "Имя пользователя" нет вообще. Кроме того, есть еще файл /etc/ppp/chap-secrets, а также /etc/ipsec.secrets и /var/lib/openswan/ipsec.secrets.inc (их использует pluto, как я понимаю).

Объясните мне, когда и какой файл с паролями используется. Спасибо.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28337
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #1 : 13 Августа 2014, 22:42:03 »
ispec.secrets использует openswan для шифрации канала.
l2tp.secrets используется самим L2TP для того же.
chap.secrets используется PPPD для авторизации подключаемых пользователей.

А по поводу вопроса вообще - та же проблема. Все инструкции, которые я нашел - куча воды и ничего по делу. PPTP VPN настроил за один вечер, L2TP второй год не могу настроить.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Int_20h

  • Автор темы
  • Участник
  • *
  • Сообщений: 137
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #2 : 13 Августа 2014, 23:01:00 »
Постепенно разбираюсь. С l2tpd проблема решилась прописыванием следующей строки в конфиге /etc/xl2tpd/xl2tpd.conf:

lac = 1.1.1.1-254.254.254.254

Этой строки не было в мане, которым я пользовался, а она похоже необходима.

Данная строка разрешает подключаться к тоннелю всем IP-адресам. После этого я отключил напрочь авторизацию в xl2tpd, в некоторых руководствах написано, что авторизация на этом уровне не важна, ей будет заниматься pppd.

После этих действий тоннель поднялся, но пока еще не до конца работает. Завтра буду разбираться с pppd и openswan. Если разберусь - помогу и тебе настроить. Спасибо.

Пользователь решил продолжить мысль 13 Августа 2014, 23:03:17:
А по поводу вопроса вообще - та же проблема. Все инструкции, которые я нашел - куча воды и ничего по делу. PPTP VPN настроил за один вечер, L2TP второй год не могу настроить.

Вот с PPTP-то вообще не проблема, я тоже его ставлю моментально, но, вроде как, он менее защищенный, так что хочется настроить более продвинутую версию.
« Последнее редактирование: 13 Августа 2014, 23:03:17 от Int_20h »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28337
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #3 : 13 Августа 2014, 23:24:19 »
Тогда уже
lac = 0.0.0.0-255.255.255.255
А то как то несправедливо кучу адресов забыли.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Int_20h

  • Автор темы
  • Участник
  • *
  • Сообщений: 137
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #4 : 14 Августа 2014, 18:24:03 »
Тогда уже
lac = 0.0.0.0-255.255.255.255
А то как то несправедливо кучу адресов забыли.

Согласен.

Жесть какая-то с этим статьями в интернете... У меня ощущение, что мало кто вообще понимает, как это все настраивается, поэтому пишут полную отсебятину, останавливаются на полпути, получая какую-то хрень (недоделанную, но работающую) и успокаиваются. Короче у меня получилось, но при чем тут ipsec я пока не понимаю.

Итак выводы пока следующие:
1. xl2tpd - первый демон с которым начинает взаимодействие подключающийся клиент. Задача этого демона - принять подключение на UDP порт 1701 и передать полученные данные дальше внутрь системы. В целом, больше ничего он делать не должен. Он может авторизовать входящие подключения по паролю/по имени хоста/IP адресу, но обычно это настраивают на следующих этапах, поэтому /etc/xl2tpd/l2tp-secrets должен оставаться пустым (паролей туда прописывать не нужно).
2. В /etc/xl2tpd/xl2tpd.conf есть блок с названием [lns], этот блок описывает конфигурацию сервера xl2tpd. Это как раз тот блок, который нам нужно настраивать. Подробности по настройке хорошо описаны в man xl2tpd.conf. Блок [lac] конфигурационного файла используется, если настраиваемый демон сам будет подключаться к другому серверу. Если вы хотите только принимать входящие подключения этот блок вообще не нужен.
3. Строка lac = 0.0.0.0-255.255.255.255 обязательна, если вы хотите принимать подключения с любых ip-адресов. Возможно в предыдущих версиях она была не нужна, поэтому об этом особо не пишут в манах, но сейчас ее нужно прописывать.
4. Строка "pppoptfile = /etc/ppp/options.l2tpd" в блоке [lns] говорит о том, с какими параметрами будет запущен следующий демон при входящем подключении - pppd. Именно ему передает все данные xl2tpd, если входящее подключение соответствует параметрам, указанным в конфиге.
5. На каждое входящее подключение, соответствующее требованиям, стартует своя копия pppd с параметрами из п. 4. Кстати, подробнее обо всех них читаем в man pppd. Все тоже очень подробно.
6. Учитываем, что старые маны в интернете иногда используют конструкции параметров типа:
-pap
+chap

Эти записи уже давно deprecated. Необходимо использовать refuse-pap, require-chap и т.д.

7. Именно на этапе настройки параметров pppd прописывается авторизация клиента. За нее отвечают инструкции:
auth
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2

Здесь мы запрещаем устаревшие протоколы и разрешаем mschap второй версии. Логин и пароль, которые мы указываем при подключении к VPN должны быть прописаны в /etc/pppd/chap-secrets. Именно по ним, и именно на этом этапе осуществляется авторизация клиента.

8. Уже на втором этапе можно настроить шифрование по майкрософтовской технологии MPPE. За него отвечает параметр require-mppe, а лучше даже require-mppe-128, тогда шифрование будет 128-битным.

9. Если правильно настроить эти 2 демона - вы получите полностью рабочий VPN через L2TP. У меня получилось. При чем тут IPSec и как при этом используется OpenSWAN я пока не пойму. Ощущение, что в большинстве интернетовских манов этот демон ставится как талисман и авторы сами не понимают, что делают. Так при работающем L2TP вы можете вообще вырубить IPSec (service ipsec stop) и все будет работать без проблем.

10. Есть понимание, что должен быть еще 3 этап, где налаживается взаимодействие между pppd и OpenSWAN. Как заставить pppd работать только через IPSec я пока не нашел, копаю дальше. Если все оставить как есть - L2TP будет работать, но траффик шифроваться либо вообще не будет, либо будет шифроваться простеньким майкрософтовским алгоритмом. Ну и нафиг такое счастье нужно?

11. Есть подозрение, что к применению IPSec относится параметр ipsec saref = yes в xl2tpd.conf, но связи пока не вижу.

Как настрою все - выложу конфиги с комментариями.
« Последнее редактирование: 14 Августа 2014, 18:30:33 от Int_20h »

Оффлайн bukass

  • Активист
  • *
  • Сообщений: 976
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #5 : 14 Августа 2014, 18:28:23 »
AnrDaemon,
Цитировать
PPTP VPN настроил за один вечер, L2TP второй год не могу настроить.

Связано 6 точек по VPN посредством PPTP, скоро год как работает, есть пить не просит. L2TP ума дать не смог.
Всем пора в Изумрудный город, кому за умом, кому за сердцем.

Оффлайн jershell

  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: L2TP в двух словах
« Ответ #6 : 14 Августа 2014, 19:27:18 »
Ребята, кто может в двух словах объяснить порядок всех этих авторизаций при настройке XL2TPD?
Объясните мне, когда и какой файл с паролями используется. Спасибо.
Из личного опыта могу вам сказать, не используйте openswan c его глючным netkey`ем. Если нужен чистый xl2tp сервер, то да можно поставить xl2tpd. Настройока там действительно очень простая, но протокол l2tp не имеет никакого шифрования, поэтому чаще всего его используют с ipsec. Отличная связка racoon(ipsec)+xl2tpd(l2tp), к такой связке без проблем подключаются почти все устройства и системы.

Если совсем хочется чего-нибудь простого, используйте SoftEther VPN — продвинутый мультипротокольный VPN-сервер вот описание http://habrahabr.ru/post/208782/ , а вот сам разраб пишет как его настраивать. http://blog.lincoln.hk/blog/2013/03/19/softether-on-vps/  Клиент для настройки запускается под вайном, вся настройка в основном мышкой.

 

Страница сгенерирована за 0.051 секунд. Запросов: 25.