Вопрос или проблема
Я настроил ikev2 с использованием Strongswan. Теперь мне нужно добавить поддержку l2tp. Какой лучший и простой способ добавить поддержку l2tp в Strongswan? Буду признателен за любую помощь.
Что касается конфигурации strongSwan, вам лишь необходимо разрешить инкапсуляцию L2TP трафика в туннель. Для этого следует указать порт L2TP в параметрах local_ts/remote_ts
в swanctl.conf
или leftsubnet/rightsubnet
в ipsec.conf
. Порт по умолчанию для L2TP – UDP/1701
. Например:
> cat swanctl.conf
connections {
# некоторые параметры
connection1 {
# некоторые параметры
children {
child1 {
# некоторые параметры
local_ts = 192.168.1.1[udp/1701]
remote_ts = 192.168.1.10[udp/1701]
# возможно, еще какие-то параметры
}
}
}
}
После установления IPsec туннеля вы должны запускать ваш L2TP сервер/клиент, как если бы IPsec туннель вовсе не существовал. Ваш L2TP трафик будет прозрачно зашифрован с одной стороны и расшифрован с другой. Я бы рекомендовал эту статью по настройке L2TP в xl2tpd.
Рабочая конфигурация swanctl для strongswan в режиме клиента при подключении к L2TP VPN хабу с PSK:
connections {
vpnhub {
local-1 {
id=192.168.1.27
auth=psk
}
remote-1 {
id=325.678.571.25
auth=psk
}
children {
default {
esp_proposals=aes128-sha1-modp1024
dpd_action=clear
start_action=trap
mode=transport
local_ts=dynamic[17/1701]
remote_ts=dynamic[17/1701]
}
}
version=2
proposals=aes128-sha1-modp2048
local_addrs=192.168.1.27
remote_addrs=325.678.571.25
rekey_time=1h
}
}
Ответ или решение
Для добавления поддержки L2TP в уже настроенный IPsec с использованием strongSwan, вам нужно учесть несколько ключевых аспектов конфигурации. В этом ответе будет подробно описан процесс настройки, чтобы вы могли эффективно интегрировать L2TP в свою существующую VPN.
Шаг 1: Установка необходимых компонентов
Для начала убедитесь, что все необходимые пакеты установлены на вашем сервере. Для поддержки L2TP вам понадобится установить пакет xl2tpd
, который является сервером L2TP. Вы можете установить его с помощью вашей системы управления пакетами. Например, для Ubuntu или Debian используйте:
sudo apt-get update
sudo apt-get install xl2tpd
Шаг 2: Настройка strongSwan для L2TP
После установки необходимых пакетов, отредактируйте конфигурационный файл strongSwan swanctl.conf
(или ipsec.conf
, в зависимости от вашей версии и предпочтений).
Пример конфигурации для swanctl.conf
может выглядеть следующим образом:
connections {
vpnhub {
local-1 {
id=192.168.1.27
auth=psk
}
remote-1 {
id=325.678.571.25
auth=psk
}
children {
default {
esp_proposals=aes128-sha1-modp2048
dpd_action=clear
start_action=trap
mode=transport
local_ts=dynamic[17/1701]
remote_ts=dynamic[17/1701]
}
}
version=2
proposals=aes128-sha1-modp2048
local_addrs=192.168.1.27
remote_addrs=325.678.571.25
rekey_time=1h
}
}
Шаг 3: Настройка xl2tpd
Теперь, когда strongSwan настроен для работы с L2TP, вам нужно будет настроить сервер xl2tpd. Откройте файл конфигурации /etc/xl2tpd/xl2tpd.conf
и отредактируйте его, добавив следующие параметры:
[lac myvpn]
lns = 192.168.1.10
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
[lac myvpn]
line = myvpn
name = myvpn
redial = yes
redial timeout = 5
require chap = yes
refuse pap = yes
require authentication = yes
Шаг 4: Настройка PPP для xl2tpd
После этого вам нужно будет настроить /etc/ppp/options.xl2tpd
. Пример такого конфигурационного файла:
require-mschap-v2
noccp
auth
crtscts
lock
hide-password
modem
name myvpn
172.16.0.1:172.16.0.2
debug
nodefaultroute
replacedefaultroute
persist
maxfail 0
Шаг 5: Перезапуск служб
После завершения настройки не забудьте перезапустить службы, чтобы изменения вступили в силу:
sudo systemctl restart strongswan
sudo systemctl restart xl2tpd
Шаг 6: Проверка соединения
Используйте следующие команды для проверки статуса соединений:
sudo ipsec status
sudo xl2tpd -c /etc/xl2tpd/xl2tpd.conf
Заключение
Эти шаги позволят вам настроить поддержку L2TP в strongSwan. Обратите внимание, что аутентификация должна быть правильно настроена, и убедитесь, что ваши правила брандмауэра (iptables) позволяют трафик на UDP порту 1701.
В случае возникновения проблем, проверьте логи strongSwan и xl2tpd для получения более подробной информации о ситуации.
Полезные ресурсы
- Официальная документация strongSwan.
- Сообщество поддержки пользователя для получения помощи.
Следуя этому руководству, вы сможете легко интегрировать L2TP в вашу настройку VPN на основе strongSwan.