- Как настроить L2TP VPN сервер без IPSec шифрования в Linux (Ubuntu)?
- Войдите, чтобы написать ответ
- Почему несколько L2TP IPsec клиентов с одного IP за NAT отваливаются на Mikrotik?
- Установка и настройка L2TP VPN-сервера на Ubuntu Server
- Настройка IPSEC
- L2TP
- PPP
- Настройка клиента
- Доступ в Интернет и локальную сеть
- Диагностика проблем
Как настроить L2TP VPN сервер без IPSec шифрования в Linux (Ubuntu)?
Подскажите как поднять (настроить) L2TP VPN сервер без IPSEC шифрования в Linux (Ubuntu).
С L2TP VPN с шифрованием IPSec нашел множество инструкций, и деже готовых скриптов, и даже получилось настроить. Но не могу найти ни одной инструкции L2TP VPN без IPSec.
Условия: Комп за роутером, порт 1701 проброшен и ТСР и UDP. ОС Ubuntu 18.04.5 LTS (чистая, со всеми последними обновлениями). Выходить в интернет через этот VPN не надо.
Я установил сервер L2TP
apt-get install xl2tpd
и как только не настраивал файл
vi /etc/xl2tpd/xl2tpd.conf
не запускается сервер, и подключиться к нему не могу.
port = 1701 пробросил в роутере
Может у кого есть скрипт настройки L2TP VPN без IPSec (шифрование просто не нужно в данном случае).
Может клиенты просто не могут соединиться без шифрования? Где то прочитал что может Windows не дает просто нешифрованное соединение.
Но так же пишут что у многих роутеров и в том же SoftEther VPN есть возможность отключить шифрование IPSec, значит такое соединение без шифрования всё таки бывает что используется и применяется.
Как это настроить в xl2tpd?
Может у кого то стоит настроенный L2TP VPN без IPSec можете скинуть файлы конфигурации
1. /etc/xl2tpd/xl2tpd.conf
2. /etc/xl2tpd/xl2tpd-secrets
3. /etc/ppp/options.xl2tpd
Может еще где то надо что то? Или порты какие то еще пробросить (сервер стоит за роутером, внешний IP белый)
Спасибо!
Добавлено:
менял-менял настройки xl2tpd сервер вроде запустился
Может посоветуете какой либо другой простой способ объединения нескольких компьютеров разных провайдеров в сеть. Имеется один белый IP (в одном месте) сервер Убунта за роутером.
На роутере только PPTP и уже не работает (блокируется тем кто МГТС, МТС. )
Войдите, чтобы написать ответ
Почему несколько L2TP IPsec клиентов с одного IP за NAT отваливаются на Mikrotik?
Установка и настройка L2TP VPN-сервера на Ubuntu Server
Обновлено: 18.05.2020 Опубликовано: 18.01.2020
- VPN-сервер, использующий туннельный протокол L2TP.
- Защита соединения посредством общего ключа + аутентификация пользователя.
- Доступ к локальной сети.
Мы выполним следующие настройки:
Настройка IPSEC
Для управления IPSec используется пакет strongswan — установим его командой:
apt-get install strongswan
Открываем конфигурационный файл для настройки ipsec:
Для config setup добавим:
config setup
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
protostack=netkey
* где virtual_private для нас является наиболее важным параметром и определяет приватные сети. В данном примере просто перечислены сети, зарезервированные под локальные — мы можем указать и другие.
conn l2tpvpn
type=transport
authby=secret
pfs=no
rekey=no
keyingtries=2
left=%any
leftprotoport=udp/l2tp
leftid=@l2tpvpnserver
right=%any
rightprotoport=udp/%any
auto=add
- type — тип соединения. Возможны варианты tunnel ( хост-хост, хост-подсеть или подсеть-подсеть); transport (хост-хост); passthrough (без обработки IPsec).
- authby — способы аутентификации двух узлов. Возможны варианты secret (по паролю) или rsasig (цифровые подписи RSA).
- pfs — расшифровывается как Perfect Forward Secrecy. Позволяет активировать совершенную секретность в канале ключей соединения.
- rekey — перепроверить соединение, когда оно истекает.
- keyingtries — число попыток, чтобы «договориться» о соединении или его замене.
- left — IP-адрес левого участника (сервера). %any означает, что адрес может быть любой.
- leftprotoport — определяет протокол и порт, на котором будет работать левая сторона (сервер). В данном примере указан UDP и порт 1701.
- leftid — идентификация левого участника соединения.
- right — IP-адрес правого участника (клиента). %any означает, что адрес может быть любой.
- rightprotoport — определяет протокол и порт, на котором будет работать правая сторона (клиент). В данном примере указан UDP и любой порт.
- auto — операция, которая должна запуститься автоматически при старте IPsec.
Создаем секретный ключ — для этого открываем на редактирование файл:
%any %any : PSK «my_key_password»
* в данном примере мы устанавливаем общий пароль my_key_password для соединений с любого IP.
Разрешаем автозапуск strongswan и перезапускаем службу:
systemctl enable strongswan
systemctl restart strongswan
L2TP
Устанавливаем сервер L2TP:
Открываем файл настройки сервера:
[global]
port = 1701
access control = no
ipsec saref = yes
force userspace = yes
auth file = /etc/ppp/chap-secrets
[lns default]
ip range = 176.16.10.10-176.16.10.200
local ip = 176.16.10.1
name = l2tpserver
pppoptfile = /etc/ppp/options.xl2tpd
flow bit = yes
exclusive = no
hidden bit = no
length bit = yes
require authentication = yes
require chap = yes
refuse pap = yes
- port — порт UDP, на котором работает VPN. По умолчанию, 1701.
- access control — принимать или нет запросы только от клиентов с определенными IP, перечисленными в настройках клиентов.
- ipsec saref — указывает использовать или нет ipsec Security Association, позволяющий отслеживать несколько клиентов с одинаковыми IP-адресами.
- force userspace — повышает производительность за счет декапсуляции пакетов L2TP.
- auth file — путь к файлу аутентификации.
- ip range — диапазон адресов, которые назначаются подключенным клиентам.
- local ip — IP-адрес сервера в сети VPN.
- name — имя сервера для процесса согласования.
- pppoptfile — путь к файлу с настройкой pppd.
- flow bit — позволяет добавлять в пакеты порядковые номера.
- exclusive — если поставить в yes, сервер разрешит только одно соединение с клиентом.
- hidden bit — скрывать или нет AVP.
- length bit — использовать ли бит длины, указывающий полезную нагрузку.
- require authentication — требовать ли аутентификацию.
- require chap — требовать ли аутентификацию PPP по протоколу CHAP.
- refuse pap — требовать ли аутентификацию PPP по протоколу PAP.
Разрешаем автозапуск vpn-сервера и перезапускаем его:
PPP
Открываем на редактирование конфигурационный файл:
noccp
auth
crtscts
mtu 1410
mru 1410
nodefaultroute
lock
noproxyarp
silent
modem
asyncmap 0
hide-password
require-mschap-v2
ms-dns 77.88.8.8
ms-dns 8.8.8.8
Создаем пользователя. Для этого открываем файл:
«user1» l2tpserver «password1» «172.16.10.10»
«user2» l2tpserver «password2» *
Настройка клиента
В параметрах сети и Интернет в разделе VPN создаем новое соединение:
- Имя подключения — произвольное имя.
- Имя или адрес сервера — адрес сервера VPN, к которому мы будем подключаться.
- Тип VPN — для нашего случая, выбираем L2TP/IPsec с предварительным ключом.
- Общий ключ — ключ, который мы задали в файле /etc/ipsec.secrets.
- Тип данных для входа — выбираем пользователь и пароль.
- Имя пользователя и пароль — логин и пароль, которые мы задали в файле /etc/ppp/chap-secrets.
Доступ в Интернет и локальную сеть
После подключения к сети VPN мы не сможем ни выйти в Интернет, ни подключиться к узлам локальной сети. Чтобы это исправить, открываем на редактирование файл:
* мы разрешили форвард сетевых запросов и настроили сервер в качестве шлюза.
После применяем настройку:
sysctl -p /etc/sysctl.d/99-sysctl.conf
Добавляем правило в iptables:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
* данное правило включает маскарадинг на интерфейсе eth0. Вам необходимо подставить в команду значение своего сетевого адаптера.
В случае с единым сетевым интерфейсом больше ничего делать не потребуется — Ubuntu начнет работать как Интернет-шлюз.
В случае с несколькими сетевыми адаптерами, настраиваем сетевой экран:
iptables -A FORWARD -i eth1 -o eth0 -m state —state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
* предполагается, что eth1 используется для внутренней сети, а eth0 — внешней.
Диагностика проблем
Описанная выше настройка не предполагает наличие лога. Для этого открываем конфигурационный файл для ppp:
.
logfile /var/log/xl2tpd/xl2tpd.log
debug
Создадим каталог для лога:
Перезапускаем сервис xl2tpd:
Пробуем подключиться к серверу — в случае наличия проблем, наблюдаем за логом:
tail -f /var/log/xl2tpd/xl2tpd.log
Настройка L2TP VPN-сервера на Ubuntu для возможности подкючения стандартными средствами Windows