Как подключиться к L2TP через IPSec VPN?
У меня проблемы с подключением к VPN моей компании на Ubuntu 15.04. Он использует L2TP через IPsec, и у меня есть имя пользователя, пароль и общий секрет. Как мне подключиться?
5 ответов
Первый комментарий, вероятно, является ответом для большинства из нас, за исключением, может быть, некоторых настоящих экспертов:
"Кажется, нет более простого способа установить VPN-соединение L2tp, поскольку OpenSwan устарел и удален в Ubuntu 14.10. Нужно это сам, не нашел рабочего решения после нескольких месяцев спорадических исследований. - derFunk 21 мая в 18:11"
Похоже, что никакого решения не планируется, см. https://wiki.strongswan.org/issues/254. Еще одна необходимая функциональность удалена из Ubuntu.
Обновление: PPA существует сейчас для network-manager-l2tp
:
Ты можешь использовать
sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp
sudo apt-get update
sudo apt-get install network-manager-l2tp
Чтобы установить сетевой менеджер l2tp, который поддерживает L2TP для Ubuntu 16.04
Пошаговое руководство по сборке из источника: http://blog.z-proj.com/enabling-l2tp-over-ipsec-on-ubuntu-16-04/
Старый ответ
Другое решение - использовать network-manager-l2tp. Вы можете получить его по https://github.com/nm-l2tp/network-manager-l2tp.
Пошаговое руководство по установке: http://blog.z-proj.com/enabling-l2tp-over-ipsec-on-ubuntu-16-04/
Работает на Ubuntu 16.04
Патч-пакет NM-L2TP со скриптом
#!/bin/bash
CUR_PATH=$(dirname $(readlink -f $0))
TMP_PATH=/tmp/nm-l2tp
mkdir ${TMP_PATH}
cd ${TMP_PATH}
wget https://launchpad.net/~seriy-pr/+archive/ubuntu/network-manager-l2tp/+build/6512073/+files/network-manager-l2tp_0.9.8.5-0utopic1_amd64.deb
ar vx network-manager-l2tp_0.9.8.5-0utopic1_amd64.deb
mkdir new
tar -xpvf data.tar.xz -C ./new
mv ./new/usr/lib/pppd/2.4.5 ./new/usr/lib/pppd/2.4.6
sed -i 's/2.4.5/2.4.6/g' ./new/usr/lib/NetworkManager/nm-l2tp-service
sed -i 's/2.4.5/2.4.6/g' ./new/usr/lib/pppd/2.4.6/nm-l2tp-pppd-plugin.so
mkdir new/DEBIAN
tar -xpvf control.tar.gz -C ./new/DEBIAN
sed -i 's/, ppp (<< 2.4.6)//g' ./new/DEBIAN/control
sed -i 's/0utopic1/0vivid1/g' ./new/DEBIAN/control
rm ./new/DEBIAN/md5sums
dpkg-deb -b ./new/ ${CUR_PATH}/network-manager-l2tp_0.9.8.5-0vivid1_amd64.deb
rm -rf ${TMP_PATH}
Затем загрузите и установите соответствующий пакет Openswan с http://www.ubuntuupdates.org/pm/openswan и выполните следующие команды
sudo apt-get update
sudo dpkg -i network-manager-l2tp_0.9.8.5-0vivid1_amd64.deb
sudo service xl2tpd stop
sudo update-rc.d xl2tpd disable
Затем просто зайдите в диспетчер сети, выберите VPN-подключения и создайте l2tp. Вам нужно только настроить имя пользователя, пароль и IPSec PSK в дополнительных настройках IPSec.
Часть взята из этого ответа
Обратите внимание, что для принятого ответа правильная команда установки для Ubuntu 18:
sudo apt install network-manager-l2tp network-manager-l2tp-gnome
Поскольку Ubuntu теперь поставляется с Gnome.
Другой обходной путь, протестированный 15.10, должен работать и 15.04. Требуется ручное редактирование conffiles и ручное установление соединения.
- оставить оригинальную опору из репозитория Ubuntu
- удалить пакет xl2tpd (вы можете попробовать с xl2tpd, но на моем компьютере xl2tpd зависал при segfault при каждом запуске)
- установить openl2tpd из: ftp://ftp.openl2tp.org/releases/openl2tp-1.8/debian-squeeze/openl2tp_1.8-1_amd64.deb
- Отредактируйте /etc/ipsec.conf:
config setup
strictcrlpolicy=yes
conn %default
ikelifetime=30m
keylife=15m
rekeymargin=3m
keyingtries=1
mobike=no
dpdaction=restart
dpddelay=30
dpdtimeout=120
conn MYSERVER
left=192.168.101.157
leftprotoport=17/1701
right=77.78.79.80 # public IP of VPN gw
rightprotoport=17/1701
authby=secret
type=transport
keyexchange=ikev1
auto=route
- Отредактируйте /etc/ipsec.secrets:
: PSK "StrongPSKgivenByProvider"
- отредактируйте (или создайте) /etc/openl2tpd.conf:
ppp profile modify profile_name=default \
auth_eap=no auth_mschapv1=no auth_mschapv2=no
tunnel create tunnel_name=MYSERVER \
dest_ipaddr=77.78.79.80 \
hello_timeout=10 \
retry_timeout=10 \
max_retries=60 \
persist=yes
session create session_name=MeOnMYSERVER \
tunnel_name=MYSERVER \
interface_name=ppp1 \
user_name=MyLogin \
user_password=MyPassword
перезапустите и протестируйте ipsec:
ipsec restart ipsec status
вывод должен быть таким:
Routed Connections: MYSERVER{1}: ROUTED, TRANSPORT MYSERVER{1}: 192.168.101.157/32[udp/l2f] === 77.78.79.80/32[udp/l2f] Security Associations (0 up, 0 connecting): none
соединять
sudo service openl2tpd restart sudo route add -net {net_behing_VPN_gateway/mask} gw {local_IP_of_VPN_gw}
Надеюсь, это кому-нибудь поможет.
Существует обходной путь для получения l2tp-ipsec 15.04, но это не очень элегантно.
Я удалил strongswan и установил старый надежный пакет.deb openswan.
http://packages.ubuntu.com/trusty/openswan
Затем я нашел.deb файлы старого l2tp-ipsec-vpn и l2tp-ipsec-vpn-daemon от верного Вернера Джегера.
http://packages.ubuntu.com/trusty/l2tp-ipsec-vpn
http://packages.ubuntu.com/trusty/l2tp-ipsec-vpn-daemon
Я установил их и после перезапуска смог подключиться. Однако для правильной работы потребовалось немало времени и потребовалось установить устаревшие пакеты.
Я думаю, что это все, что я сделал, но если вы попробуете это и получите другую ошибку, возможно, будет установлен другой пакет, который я не помню.
ОБНОВЛЕНИЕ: я должен был сделать это снова, поэтому я решил поделиться шагами. Установите старый клиент: https://launchpad.net/l2tp-ipsec-vpn
Опять же, это обходной путь, если вам это нужно в крайнем случае и в настоящее время работает. При этом, это действительно должно быть отдельно от ОС.
sudo apt-get install gksu libgksu2-0 libctemplate2 libengine-pkcs11-openssl libp11-2 xl2tpd
Затем загрузите старые двоичные файлы и установите с помощью dpkg:
wget http://mirrors.kernel.org/ubuntu/pool/universe/o/openswan/openswan_2.6.38-1_amd64.deb
sudo dpkg -i openswan_2.6.38-1_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/l/l2tp-ipsec-vpn/l2tp-ipsec-vpn_1.0.9-1_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/l/l2tp-ipsec-vpn-daemon/l2tp-ipsec-vpn-daemon_0.9.9-1_amd64.deb
sudo dpkg -i l2tp-ipsec-vpn_1.0.9-1_amd64.deb
sudo dpkg -i l2tp-ipsec-vpn-daemon_0.9.9-1_amd64.deb
Откройте клиент. Добавьте соединение и настройте при необходимости. Как только вы попытаетесь подключиться, это может занять некоторое время, но наберитесь терпения.