Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
linux_faq:ubuntu_18.04_setup_strongswan [2019/02/11 09:13] – external edit 127.0.0.1linux_faq:ubuntu_18.04_setup_strongswan [2019/03/11 11:07] – [Не подключается] admin
Line 1: Line 1:
 +====== Задача ======
 +Настроить **IPSec VPN** сервер для подключения **Windows**-клиентов.
  
 +====== Решение ======
 +Решение по мотивам https://www.digitalocean.com/community/tutorials/how-to-set-up-an-ikev2-vpn-server-with-strongswan-on-ubuntu-18-04-2 \\
 +===== Ставим софт =====
 +<code>
 +sudo apt-get update && sudo apt-get upgrade
 +
 +sudo apt-get install strongswan certbot libcharon-extra-plugins
 +</code>
 +
 +===== Настраиваем firewall =====
 +<code>
 +sudo ufw allow OpenSSH
 +sudo ufw allow http
 +sudo ufw allow https
 +sudo ufw allow 500,4500/udp
 +
 +sudo ufw enable
 +</code>
 +===== Получаем сертификат =====
 +  sudo certbot certonly --rsa-key-size 4096 --standalone --agree-tos --no-eff-email --email mikhail@xc360.ru -d testprivate.xc360.ru
 +копируем его в конфигурацию **ipsec**
 +  sudo cp /etc/letsencrypt/live/testprivate.xc360.ru/fullchain.pem /etc/ipsec.d/certs/
 +  sudo cp /etc/letsencrypt/live/testprivate.xc360.ru/privkey.pem /etc/ipsec.d/private/
 +  sudo cp /etc/letsencrypt/live/testprivate.xc360.ru/chain.pem /etc/ipsec.d/cacerts/
 +
 +===== Конфигурация сервера IPSec =====
 +  sudo mv /etc/ipsec.conf{,.original}
 +  
 +==== /etc/ipsec.conf ====
 +https://wiki.strongswan.org/projects/strongswan/wiki/Win7EapMultipleConfig
 +<code>
 +#global configuration IPsec
 +#chron logger
 +config setup
 +#    charondebug="ike 1, knl 1, cfg 0"
 +#    uniqueids=no
 +     plutostart=no
 +
 +conn %default
 +    keyexchange=ikev2
 +    ike=aes128-sha1-modp1024,aes128-sha1-modp1536,aes128-sha1-modp2048,aes128-sha256-ecp256,aes128-sha256-modp1024,aes128-sha256-modp1536,aes128-sha256-modp2048,aes256-aes128-sha256-sha1-modp2048-modp4096-modp1024,aes256-sha1-modp1024,a$
 +    esp=aes128-aes256-sha1-sha256-modp2048-modp4096-modp1024,aes128-sha1,aes128-sha1-modp1024,aes128-sha1-modp1536,aes128-sha1-modp2048,aes128-sha256,aes128-sha256-ecp256,aes128-sha256-modp1024,aes128-sha256-modp1536,aes128-sha256-modp2$
 +    dpdaction=clear
 +    dpddelay=300s
 +    rekey=no
 +
 +conn win7
 +    left=%any
 +    leftsubnet=0.0.0.0/0
 +    leftauth=pubkey
 +    leftcert=fullchain.pem
 +    leftid=@testprivate.xc360.ru
 +    right=%any
 +    rightsourceip=10.10.10.0/24
 +    rightauth=eap-mschapv2
 +    #rightsendcert=never   # see note
 +    eap_identity=%identity
 +    auto=add
 +</code>
 +
 +==== Прописываем пользователей - /etc/ipsec.secrets ====
 +
 +  : RSA "privkey.pem"
 +  user : EAP "test"
 +
 +====== Выдаем клиентам DNS и WINS серверы ======
 +**/etc/strongswan.d/client-dns.conf**
 +<code>
 +charon {
 +  dns1 = 4.2.2.4
 +  dns2 = 8.8.8.8
 +}
 +</code>
 +**/etc/strongswan.d/client-wins.conf**
 +<code>
 +charon {
 +  nbns1 = 10.10.1.1
 +  nbns2 = 10.10.0.1
 +}
 +</code>
 +====== Контролируем работу ======
 +  sudo tail -f /var/log/syslog
 +
 +====== Проблемы ======
 +===== подключение только со второй попытки =====
 +https://wiki.strongswan.org/issues/1183 \\
 +Если при первой попытке подключения Windows-клиент сообщает, что неверный пароль, но успешно подключается с тем же паролем со второй попытки, а в логах сервера есть такое:
 +<code>
 +user charon: 11[ENC] parsed IKE_AUTH request 2 [ EAP/RES/MSCHAPV2 ]
 +user charon: 11[IKE] EAP-MS-CHAPv2 username: '%any'
 +user charon: 11[IKE] no EAP key found for hosts '%any' - '%any'
 +user charon: 11[IKE] EAP-MS-CHAPv2 verification failed, retry (1)
 +</code>
 +значит нужно установить **libcharon-extra-plugins**, а в конфигурации **/etc/ipsec.conf** должно быть прописано:
 +  eap_identity=%identity
 +
 +===== Не подключается =====
 +В логах сервера такое:
 +  user charon: 07[IKE] received proposals inacceptable
 +Это значит, что сервер и клиент не могут договориться о применяемых алгоритмах шифрования. Нужно смотреть на строки:
 +  ike=...
 +  esp=...
 +в них прописаны разрешенные алгоритмы шифрования
  • linux_faq/ubuntu_18.04_setup_strongswan.txt
  • Last modified: 2022/07/13 12:08
  • by admin