L2TP over IPSec VPN-сервер
Для этого также потребуется установленный Docker в системе и удобный для Вас текстовый редактор.
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
Мы будем использовать уже готовый репозиторий: https://github.com/fcojean/l2tp-ipsec-vpn-server
Для начала нам необходимо настроить env-файл который будет использовать контейнер: (название файла можно указать любое, я выбрал l2tp-ipsec.env)
sudo nano /etc/l2tp-ipsec.env
Далее необходимо вставить в него следующую информацию:
VPN_IPSEC_PSK=test_shared_secret_key
# Table of user object with login and password attribute in Json format
VPN_USER_CREDENTIAL_LIST=[{"login":"userTest1","password":"test1"},{"login":"userTest2","password":"test2"}]
VPN_NETWORK_INTERFACE=eth0
VPN_DNS1=1.1.1.1
VPN_DNS2=1.0.0.1
При вводе VPN_IPSEC_PSK, логина и пароля пользователя, пожалуйста воздержитесь от символов кавычек (одинарной и двойной), слешей (обычного, обратного и прямого), знака равенства, пробелов вокруг = и пробелов в принципе, во избежание ошибок.
Необходимо придумать VPN_IPSEC_PSK, это секретный ключ для подключения к серверу (НЕ ПАРОЛЬ).
Соответственно, в данном примере есть 2 пользователя для VPN, чтобы добавить еще, нужно добавить в конец, до закрывающей квадратной скобки ] через запятую вставить еще одного или нескольких людей по шаблону:
{"login":"userTest3","password":"test3"}
В итоге строка VPN_USER_CREDENTIAL_LIST будет выглядеть так:
VPN_USER_CREDENTIAL_LIST=[{"login":"userTest1","password":"test1"},{"login":"userTest2","password":"test2"},{"login":"userTest3","password":"test3"}]
Учтите, что каждая пара логин-пароль, только для одного человека. Если пользователь уже онлайн, второй пользователь с теми же данными подключиться НЕ СМОЖЕТ.
После чего уже можем запустить наш контейнер с использованием созданного env файла:
docker run \
--name l2tp-ipsec-vpn-server \
--env-file /etc/l2tp-ipsec.env \
--restart=always \
-p 500:500/udp \
-p 4500:4500/udp \
-v /lib/modules:/lib/modules:ro \
-d --privileged \
fcojean/l2tp-ipsec-vpn-server