# Практика №6. IPSec over L2TP ## Выполнила Валеева Рената ## Группа ББСО-02-20 # Описание практический работы: **Целью практической работы является:** - Научиться работать с протоколом IPsec over L2TP - Научиться настраивать работу VPN протокола IPsec over L2TP на операционной системе Linux (в качестве сервера) # Описание практический работы: **Целью практической работы является:** - Научиться работать с протоколом IPsec over L2TP - Научиться настраивать работу VPN протокола IPsec over L2TP на операционной системе Linux (в качестве сервера) # Настройка **Настройка сервера** Установим модуль strongswan для IPsec: ``` apt install strongswan ``` В файл настроек /etc/ipsec.conf добавим две области, первая отвечает за общие настройки(фрагментация IKE и обнаружение мертвых узлов - DPD), вторая - за l2tp соединения(задает IPsec транспортным режимом, указывает проведение аутентификации по общему ключу и задает шифры): ``` conn rw-base fragmentation=yes dpdaction=clear dpdtimeout=90s dpddelay=30s conn l2tp-vpn also=rw-base ike=aes128-sha256-modp3072 esp=aes128-sha256-modp3072 leftsubnet=%dynamic[/1701] rightsubnet=%dynamic leftauth=psk rightauth=psk type=transport auto=add ``` Генерируем общий пароль: ![](https://hackmd.io/_uploads/SyCwpFIDn.jpg) В файле /etc/ipsec.secrets указываем сгенерированный общий пароль: ![](https://hackmd.io/_uploads/BJs36FLv3.jpg) Далее настраиваем L2TP. Для начала устанавливаем необходимый модуль: ``` apt install xl2tpd ``` В файле /etc/xl2tpd/xl2tpd.conf произведем настройки: ``` [global] port = 1701 auth file = /etc/ppp/chap-secrets access control = no ipsec saref = yes force userspace = yes [lns default] exclusive = no ip range = 10.2.2.100-10.2.2.199 hidden bit = no local ip = 10.2.2.1 length bit = yes require authentication = yes name = l2tp-vpn pppoptfile = /etc/ppp/options.xl2tpd flow bit = yes ``` Далее настроим PPP в файле /etc/ppp/options.xl2tpd (предаварительно скопировав стандартный файл настроек): ``` asyncmap 0 auth crtscts lock hide-password modem mtu 1460 lcp-echo-interval 30 lcp-echo-failure 4 noipx refuse-pap refuse-chap refuse-mschap require-mschap-v2 multilink mppe-stateful ``` В /etc/ppp/chap-secrets зададим учетную запись клиента: ![](https://hackmd.io/_uploads/HkGay5Uvn.jpg) На ферволе прописываем правила, которые позволят ходить трафику: ![](https://hackmd.io/_uploads/Skvrx5LDn.jpg) **Настройка клиента** Также устанавливаем необходимые модули: ``` apt-get install strongswan xl2tpd net-tools ``` Настраиваем ipsec.conf: ``` cat > /etc/ipsec.conf conn l2tp-vpn auto=add keyexchange=ikev1 authby=secret type=transport left=%defaultroute leftprotoport=17/1701 rightprotoport=17/1701 right= здесь указываем wan фаервола ike=aes128-sha1-modp2048 esp=aes128-sha1 ``` Добавляем ранее сгенерированный PSK: ``` cat > /etc/ipsec.secrets : PSK "сгенерированный PSK на сервере" ``` Далее настраиваем l2tp: ``` cat > /etc/xl2tpd/xl2tpd.conf [lac l2tp-vpn] lns = здесь указываем wan фаервола ppp debug = yes pppoptfile = /etc/ppp/options.l2tpd.client length bit = yes ``` Редактируем файл настроек PPP: ``` cat > /etc/ppp/options.l2tpd.client ipcp-accept-local ipcp-accept-remote refuse-eap require-chap noccp noauth mtu 1280 mru 1280 noipdefault defaultroute usepeerdns connect-delay 5000 name "имя, указанное на сервере" password "пароль, указанный на сервере" ``` Далее запускаем IPsec: ``` ipsec up l2tp-vpn ``` И L2TP: ``` echo "c l2tp-vpn" > /var/run/xl2tpd/l2tp-control ```