UPD: Сейчас поддержкой и разработкой плагина я не занимаюсь, т.к. перестал сам им пользоваться. Но его разработкой продолжили заниматься тут. Где взять новые DEB пакеты я не знаю, возможно их не существует вообще.
TL;DR: теперь подключаться к L2TP VPN можно через NetworkManager.
Допилил сегодня плагин для Network Manager с поддержкой L2TP. Поддерживает VPN через L2TP и, теоретически, L2TP через IPSec.
Я проверял на "beeline домашний интернет" (
http://help.internet.beeline.ru/internet/install/windows7/l2tp) и в общем-то для этого его и взялся дорабатывать. В принципе, можно даже озаглавить статью типа "
Настройка beeline l2tp vpn через NetworkManager".
Установка
Можно установить из PPA:
https://launchpad.net/~seriy-pr/+archive/network-manager-l2tp
sudo apt-add-repository ppa:seriy-pr/network-manager-l2tp
sudo apt-get update
sudo apt-get install network-manager-l2tp-gnome
* Если первая команда не сработает, нужно сперва сделать
sudo apt-get install python-software-properties
После установки настоятельно рекомендую выполнить
sudo service xl2tpd stop
sudo update-rc.d xl2tpd disable
После этого можно будет создать новое VPN подключение "Layer 2 Tunnelling Protocol (L2TP)" (см. скриншот).
Напомню как:
- Кликаем по иконке NM в трее
- Выбираем "Изменить соединения"
- Открываем вкладку VPN
- Жмем "Добавить"
- В выпадающем списке выбираем "Layer 2 Tunnelling Protocol (L2TP)" жмем создать
- Дальше уже заполняем окно с настройками для нового соединения
Можно сразу попасть на 5-й пункт если запустить в консоли
nm-connection-editor --type=vpn --create
Если что-то не работает
Можете пожаловаться мне. Делать это следует так:
Сперва выполняем команды
lsb_release -a
и
uname -a
и отправляем мне что они напечатают.
В идеале прикладывайте еще ссылку на инструкцию вашего провайдера по настройке VPN для Windows.
Дальше в зависимости от того какая возникла проблема:
Не устанавливается пакет
Присылайте вывод команды
apt-cache policy network-manager-l2tp
Ну и какую ошибку пишет при установке.
Не получается Добавить новое VPN подключение
Имеется в виду что пакет установился, но при попытке
создать и настроить новое VPN подключение возникают проблемы (нет пункта "Layer 2 Tunnelling Protocol (L2TP)" или программа вылетает или не сохраняются настройки).
В консоли запускаете команду
nm-connection-editor --type=vpn --create
И пробуете добавить и настроить новое подключение. Присылайте что напечатает в консоль и опишите саму проблему конечно же.
При попытке подключения происходят ошибки
Открываете 2 консоли, в одной запускаете
sudo /usr/lib/NetworkManager/nm-l2tp-service --debug
в другой
tail -f -n 0 /var/log/syslog
и пробуете подключиться. После того как случится фейл, присылайте что напечатает за это время в обоих терминалах (в выводе первой команды может засветиться ваш пароль - замените его звездочками!).
На компьютере, куда я хочу установить плагин нет интернета.
Есть скрипт на Python, который умеет выкачивать deb пакеты с плагином и всеми зависимостями.
На компьютере с интернетом окрываете эту ссылку
https://gist.github.com/3029495, копируете код в файл, называете его, например,
l2tp-downloader.py
.
Далее, если компьютер с интернетом на Linux, то просто запускаете этот файл в консоли командой
python l2tp-downloader.py
и отвечаете на вопросы.
Если компьютер под Windows, нужно скачать и установить Python 2.7 с сайта
http://python.org/ и с его помощью запустить скрипт.
После того как скрипт отработает, он создаст .tar архив, в котором будут лежать все зависимости и файл README с инструкцией по установке.
Работает ли плагин на KDE?
Плагин состоит из 2-х частей: независимый от интерфейса "бэкенд" и интерфейс для Gnome. Интерфейса под KDE я не делал. Но независимые разработчики недавно выпустили универсальный интерфейс для KDE панели plasma [
1][
2]. Проект новый, так что присутствует пока не во всех дистрибутивах, но в 2014 году должен постепенно появиться (запланирован в
Ubuntu 14.04,
Fedora 20). Пакет в репозиториях называется
plasma-nm
. Если plasma-nm у вас установлен, всё равно нужно "доставить" бэкенд-часть, например так:
sudo apt-add-repository ppa:seriy-pr/network-manager-l2tp
sudo apt-get update
sudo apt-get install network-manager-l2tp
Т.е. нужно установить пакет
network-manager-l2tp
(не
network-manager-l2tp-gnome
!!!).
Альтернативные GUI программы для подключения к L2TP VPN в Linux
Если этот плагин почему то так у вас и не заработал, можете попробовать одну из следующих GUI-программ (к слову, все эти L2TP-GUI, в т.ч. и мой плагин, "внутри себя" используют одни и те же консольные программы: xl2tpd (для L2TP), pppd (для VPN) и openswan (для IPSec), но генерируют к ним немного разные конфиги и запускают их немного по разному).
vpnpptp
Официальный сайт vpnpptp. Программа написана на Pascal и Bash с использованием Qt. Из плюсов - много настроек, разрабатывается нашими соотечественниками, оптимизирована для подключения к beeline. Из минусов, пожалуй, довольно нестабильная работа, необходимость вводить root-пароль для подключения и не очень удобный интерфейс. (Ну и еще сам код программы жуткий).
L2tp-IPsec-VPN
Сайт, Wiki. Написана на C++ и Qt. Из плюсов - очень хорошая поддержка IPsec, неплохой интерфейс, можно подключаться без root пароля, активно разрабатывается, дружелюбный разработчик =). Из минусов - опять же, недостаточно стабильная работа, поддержку работы БЕЗ IPSec (нужно для работы с beeline) добавили совсем недавно (по моей просьбе), но заставить его работать с beeline так и не получилось.
Эпилог
Разработку веду на Github
https://github.com/seriyps/NetworkManager-l2tp.
Пожелания, багрепорты, комментарии, благодарности приветствуются.
Тикеты с просьбой добавить поддержку L2TP в NM появились на Launchpad и Gnome в сентябре 2008г. Изначально плагин разработал Alexey Torkhov, но затем прекратил его поддержку.