Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!

Все равно придется установить CA в устройство

Зачем? Иначе не избежать mitm?Нет, прошу прощения, я был неправ. CA устанавливать не нужно, т.к. никаких ключей-то нет. Но в случае PSK, злоумышленник, перехватив ваш трафик, может поймать процесс хендшейка и побрутить ваш PSK (см. Don’t stop using IPsec just yet), чего он сделать с использованием ключей не сможет. Ну и, конечно же, это совершенно не подходит для защиты публичных сервисов, т.к. здесь, как раз, можно сделать MITM (если PSK известный и один на всех).
rightauth=eap-mschapv2
leftauth=pubkey
— насколько IPSec критичен к качеству канала?Я бы не сказал, что критичен. В IKEv2 есть механизм MOBIKE, который реализует мультихоминг и роуминг, так что переподключения вообще практически незаметны.
— насколько большой оверхэд относительно других методов?Приблизительно такой же, как у OpenVPN, т.е. 8+20+20+16+2+12=78, ну и еще padding, получается где-то 80-90 байт.
альтернативой OpenVPN, который любят многие администраторыЯ люблю OpenVPN за то, что он ходит через прокси, включая HTTP-прокси, это его самое-самое большое преимущество, IMHO.
Их довольно много, но полноценных и активных на данный момент всего два: strongSwan и libreswan. Вторым я не пользовался, ничего сказать о нем не могу, зато первый — прекрасный и удивительный,Второй конечно менее функциональный, и хуже документирован, но в некоторых случая работает лучше. Например, стабильное и непадающее соединение к Dell SonicWALL у меня получилось поднять только на нём. Дальше, недавно словил багу в strongSwan, когда в процессе rekey-инга соединение падает. Как оказалось, открытый, и очень редкий баг. Race condition. Лечится отключением оного.
IPsec, по моему мнению, является замечательной альтернативой OpenVPN, который любят многие администраторы. Почему большинство VPN-провайдеров все еще используют L2TP+IPsec для меня остается загадкой, т.к. strongSwan предоставляет всю необходимую функциональность для такого рода серивисов
iOS поддерживает только IKEv1iOS 8 поддерживает IKEv2, но только через провизинг, через интерфейс нельзя настроить.
Android и iOS не поддерживают ECDSA и прочие радости жизни (только RSA), поэтому уже было настроив всё я был вынужден пересоздавать PKI ибо у меня даже CA был на ECDSAНо, ведь, и актуальная версия OpenVPN тоже не поддерживает ECDSA.
iOS поддерживает только SHA1 в качестве хеш-функции (и снова я пересоздавал PKI...)Точно не уверен, нужно уточнить. Тестировали, вроде, на iOS 8, работал сертификат с SHA256.
для iOS пришлось всё равно пересобрать сервер StrongSWAN с патчем xauth-noauth (как описано в статье)Вот это действительно неудобство, согласен
и снова iOS — несмотря на то, что я собрал CA сертификат, сертификат пользователя и ключ пользователя в .p12 — сертификат СА пришлось импортировать отдельно...Известный баг, к сожалению. Об этом написано в wiki strongSwan.
iOS 8 поддерживает IKEv2, но только через провизинг, через интерфейс нельзя настроить.
Точно не уверен, нужно уточнить. Тестировали, вроде, на iOS 8, работал сертификат с SHA256.
По поводу пункта 3 ничего сказать не могу, я использую IPsec исключительно через UDP-инкапсуляцию, и не сталкивался с проблемами, описанными вами в пункте 4. Быть может, проблема из-за фрагментации была?
Некоторые роутеры настроены по умолчанию для VPN пакетов заменять только source IP, таким образом от двух клиентов за NAT приходят «неотличимые» запросы и когда приходит ответ NAT отвечает только одному клиентуВ рассылке говорится о L2TP+IPsec, а он работает в транспортном режиме, а не туннельном, но раз вы говорите, что отказались от IPsec из-за этой проблемы, то она, вероятно, частая, хоть я с ней (пока) не сталкивался.
iptables -t nat -A POSTROUTING -j MASQUERADEСерверный сертификат должен обладать x509 v3 extension IKE-посредника(1.3.6.1.5.5.8.2.2).Это очень, очень старый EKU. Мы с разработчиком Easy-RSA и ребятами из #strongswan@freenode, после чтения RFC, сошлись во мнении, что нужно использовать 1.3.6.1.5.5.7.3.17. Работает, вроде бы, везде, кроме старых OS X. Я вот не помню, проверял ли я на Windows Phone, но на iOS, Windows, Linux и Android работает точно. easy-rsa-ipsec генерирует именно такие сертификаты.
CA сертификат от серверного должен присутствовать на клиенте. Self-signed, насколько я помню, не подходил.Мы тестировали на Windows Phone 8, все замечательно работало с Self-Signed CA, естественно, предварительно импортированным. Забавно то, что в Windows Phone удалить импортированные сертификаты нельзя, там их теперь буквально куча.
А еще хотелось бы попросить, показать или указать на материалы, как правильно дать доступ из тоннеля во внешнюю сеть, и еще разрешить клиентам обмениваться данными между собой.iptables -m policy --pol ipsec выбирает трафик уже после расшифровывания, поэтому рекомендую использовать что-то вроде:
# iptables -t nat -I POSTROUTING -m policy --pol ipsec --dir out -j MASQUERADEМожете еще дополнительно фильтровать по интерфейсам или диапазонам.Потому что использовать следующее, как вариант решения первой проблемы, вроде бы абсолютно неправильноЯ рассказывал об этом в статье «Как IPv6 помогает роутеры ломать»
Error Code: 13801
Error Description: 13801: IKE authentication credentials are unacceptable.
Possible Causes: This error usually comes in one of the following cases:
1.The machine certificate used for IKEv2 validation on RAS Server does not have 'Server Authentication' as the EKU (Enhanced Key Usage).
2.The machine certificate on RAS server has expired.
3.The root certificate to validate the RAS server certificate is not present on the client.
4.VPN Server Name as given on client doesn’t match with the subjectName of the server certificate.
05[CFG] selected peer config 'ikev2-pubkey' 05[CFG] using certificate "CN=client1" 05[CFG] using trusted ca certificate "CN=IPSec CA" 05[CFG] checking certificate status of "CN=client1" 05[CFG] certificate status is not available 05[CFG] reached self-signed root ca with a path length of 0 05[IKE] authentication of 'CN=client1' with RSA signature successful 05[IKE] peer supports MOBIKE 05[IKE] no private key found for 'CN=aws.bougakov.com' 05[ENC] generating IKE_AUTH response 1 [ N(AUTH_FAILED) ] 05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (76 bytes)
Во-вторых, у вас в /etc/ipsec.conf ошибка с отступами в районе строки №16, которая не даёт запустить сервис.Хм, только что проверил — все отлично. Может, скопировали что-то не так?
05[IKE] no private key found for 'CN=aws.bougakov.com'Приватный ключ сервера положите в /etc/ipsec.d/private/
В третьих, вы экспортируете ключ в формате p12, который не кушает Windows Phone (ему cer подавай).Тестировали на Windows Phone 8, p12 замечально импортируется.
/etc/ipsec.conf:16: syntax error, unexpected FIRST_SPACES [ ]Впрочем, удаление пустых строк и комментариев решило проблему.
: RSA aws.bougakov.com.keyroot@ip-172-31-28-135:/etc/ipsec.d/private# ipsec start --nofork Starting strongSwan 5.1.2 IPsec [starter]... 00[DMN] Starting IKE charon daemon (strongSwan 5.1.2, Linux 3.13.0-44-generic, x86_64) 00[CFG] loading ca certificates from '/etc/ipsec.d/cacerts' 00[CFG] loaded ca certificate "CN=IPSec CA" from '/etc/ipsec.d/cacerts/ca.crt' 00[CFG] loading aa certificates from '/etc/ipsec.d/aacerts' 00[CFG] loading ocsp signer certificates from '/etc/ipsec.d/ocspcerts' 00[CFG] loading attribute certificates from '/etc/ipsec.d/acerts' 00[CFG] loading crls from '/etc/ipsec.d/crls' 00[CFG] loading secrets from '/etc/ipsec.secrets' 00[CFG] expanding file expression '/var/lib/strongswan/ipsec.secrets.inc' failed 00[CFG] loaded RSA private key from '/etc/ipsec.d/private/aws.bougakov.com.key' 00[LIB] loaded plugins: charon test-vectors aes rc2 sha1 sha2 md4 md5 rdrand random nonce x509 revocation constraints pkcs1 pkcs7 pkcs8 pkcs12 pem openssl xcbc cmac hmac ctr ccm gcm attr kernel-netlink resolve socket-default stroke updown eap-identity eap-mschapv2 addrblock 00[LIB] unable to load 5 plugin features (5 due to unmet dependencies) 00[LIB] dropped capabilities, running as uid 0, gid 0 00[JOB] spawning 16 worker threads charon (2462) started after 20 ms 11[CFG] received stroke: add connection 'ikev2-pubkey' 11[CFG] left nor right host is our side, assuming left=local 11[CFG] adding virtual IP address pool 192.168.103.0/24 11[CFG] adding virtual IP address pool 2002:25f7:7489:3::/112 11[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 11[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 11[CFG] added configuration 'ikev2-pubkey' 13[CFG] received stroke: add connection 'ikev1-fakexauth' 13[CFG] left nor right host is our side, assuming left=local 13[CFG] reusing virtual IP address pool 192.168.103.0/24 13[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112 13[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 13[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 13[CFG] added configuration 'ikev1-fakexauth' 15[CFG] received stroke: add connection 'ikev2-eap-tls' 15[CFG] left nor right host is our side, assuming left=local 15[CFG] reusing virtual IP address pool 192.168.103.0/24 15[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112 15[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 15[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 15[CFG] added configuration 'ikev2-eap-tls' 06[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (616 bytes) 06[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 06[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09 06[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20 06[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19 06[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02 06[IKE] 5.228.173.181 is initiating an IKE_SA 06[IKE] local host is behind NAT, sending keep alives 06[IKE] remote host is behind NAT 06[IKE] sending cert request for "CN=IPSec CA" 06[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ] 06[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes) 05[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1116 bytes) 05[ENC] parsed IKE_AUTH request 1 [ IDi CERTREQ N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV ADDR6 DNS6 SRV6) SA TSi TSr ] 05[IKE] received cert request for "CN=IPSec CA" 05[IKE] received 38 cert requests for an unknown ca 05[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[192.168.10.6] 05[CFG] selected peer config 'ikev2-pubkey' 05[IKE] peer requested EAP, config inacceptable 05[CFG] switching to peer config 'ikev2-eap-tls' 05[IKE] loading EAP_TLS method failed 05[IKE] peer supports MOBIKE 05[ENC] generating IKE_AUTH response 1 [ IDr EAP/FAIL ] 05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (108 bytes) 02[NET] received packet: from 195.16.111.170[24006] to 172.31.28.135[500] (616 bytes) 02[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 02[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09 02[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20 02[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19 02[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02 02[IKE] 195.16.111.170 is initiating an IKE_SA 02[IKE] local host is behind NAT, sending keep alives 02[IKE] remote host is behind NAT 02[IKE] sending cert request for "CN=IPSec CA" 02[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ] 02[NET] sending packet: from 172.31.28.135[500] to 195.16.111.170[24006] (337 bytes) 01[NET] received packet: from 195.16.111.170[24006] to 172.31.28.135[500] (616 bytes) 01[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 01[IKE] received retransmit of request with ID 0, retransmitting response 01[NET] sending packet: from 172.31.28.135[500] to 195.16.111.170[24006] (337 bytes) 12[NET] received packet: from 195.16.111.170[24006] to 172.31.28.135[500] (616 bytes) 12[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 12[IKE] received retransmit of request with ID 0, retransmitting response 12[NET] sending packet: from 172.31.28.135[500] to 195.16.111.170[24006] (337 bytes)
root@ip-172-31-28-135:/home/ubuntu/easy-rsa-ipsec/easyrsa3# ipsec start --nofork
Starting strongSwan 5.1.2 IPsec [starter]...
00[DMN] Starting IKE charon daemon (strongSwan 5.1.2, Linux 3.13.0-44-generic, x86_64)
00[CFG] loading ca certificates from '/etc/ipsec.d/cacerts'
00[CFG] loaded ca certificate "CN=IPSec CA" from '/etc/ipsec.d/cacerts/ca.crt'
00[CFG] loading aa certificates from '/etc/ipsec.d/aacerts'
00[CFG] loading ocsp signer certificates from '/etc/ipsec.d/ocspcerts'
00[CFG] loading attribute certificates from '/etc/ipsec.d/acerts'
00[CFG] loading crls from '/etc/ipsec.d/crls'
00[CFG] loading secrets from '/etc/ipsec.secrets'
00[CFG] expanding file expression '/var/lib/strongswan/ipsec.secrets.inc' failed
00[CFG] loaded RSA private key from '/etc/ipsec.d/private/aws.bougakov.com.key'
00[LIB] loaded plugins: charon test-vectors aes rc2 sha1 sha2 md4 md5 rdrand random nonce x509 revocation constraints pkcs1 pkcs7 pkcs8 pkcs12 pem openssl xcbc cmac hmac ctr ccm gcm attr kernel-netlink resolve socket-default stroke updown eap-identity eap-mschapv2 addrblock
00[LIB] unable to load 5 plugin features (5 due to unmet dependencies)
00[LIB] dropped capabilities, running as uid 0, gid 0
00[JOB] spawning 16 worker threads
charon (2514) started after 20 ms
11[CFG] received stroke: add connection 'ikev2-pubkey'
11[CFG] left nor right host is our side, assuming left=local
11[CFG] adding virtual IP address pool 192.168.103.0/24
11[CFG] adding virtual IP address pool 2002:25f7:7489:3::/112
11[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
11[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
11[CFG] added configuration 'ikev2-pubkey'
13[CFG] received stroke: add connection 'ikev1-fakexauth'
13[CFG] left nor right host is our side, assuming left=local
13[CFG] reusing virtual IP address pool 192.168.103.0/24
13[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112
13[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
13[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
13[CFG] added configuration 'ikev1-fakexauth'
15[CFG] received stroke: add connection 'ikev2-eap-tls'
15[CFG] left nor right host is our side, assuming left=local
15[CFG] reusing virtual IP address pool 192.168.103.0/24
15[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112
15[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
15[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
15[CFG] added configuration 'ikev2-eap-tls'
06[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (880 bytes)
06[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ]
06[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09
06[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20
06[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19
06[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02
06[IKE] 5.228.173.181 is initiating an IKE_SA
06[IKE] local host is behind NAT, sending keep alives
06[IKE] remote host is behind NAT
06[IKE] sending cert request for "CN=IPSec CA"
06[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ]
06[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes)
05[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (2684 bytes)
05[ENC] parsed IKE_AUTH request 1 [ IDi CERT CERTREQ AUTH N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV) SA TSi TSr ]
05[IKE] received cert request for "CN=IPSec CA"
05[IKE] received 58 cert requests for an unknown ca
05[IKE] received end entity cert "CN=client1"
05[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[CN=client1]
05[CFG] selected peer config 'ikev2-pubkey'
05[CFG] using certificate "CN=client1"
05[CFG] using trusted ca certificate "CN=IPSec CA"
05[CFG] checking certificate status of "CN=client1"
05[CFG] certificate status is not available
05[CFG] reached self-signed root ca with a path length of 0
05[IKE] authentication of 'CN=client1' with RSA signature successful
05[IKE] peer supports MOBIKE
05[IKE] authentication of 'CN=aws.bougakov.com' (myself) with RSA signature successful
05[IKE] IKE_SA ikev2-pubkey[1] established between 172.31.28.135[CN=aws.bougakov.com]...5.228.173.181[CN=client1]
05[IKE] scheduling reauthentication in 10186s
05[IKE] maximum IKE_SA lifetime 10726s
05[IKE] sending end entity cert "CN=aws.bougakov.com"
05[IKE] peer requested virtual IP %any
05[CFG] assigning new lease to 'CN=client1'
05[IKE] assigning virtual IP 192.168.103.1 to peer 'CN=client1'
05[IKE] CHILD_SA ikev2-pubkey{1} established with SPIs c90a27be_i a48883c6_o and TS 0.0.0.0/0 === 192.168.103.1/32
05[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH CPRP(ADDR DNS DNS6) SA TSi TSr N(AUTH_LFT) N(MOBIKE_SUP) N(NO_ADD_ADDR) ]
05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1404 bytes)
03[IKE] sending keep alive to 5.228.173.181[4500]05[IKE] loading EAP_TLS method failed
но интернет при этом становится недоступнымВы настроили NAT? В статье описывается только настройка IPsec, подразумевая, что читатель умеет настраивать NAT.
iptables -t nat -I POSTROUTING -m policy --pol ipsec --dir out -j MASQUERADE
sysctl net.ipv4.ip_forward=1root@ip-172-31-28-135:/home/ubuntu/easy-rsa-ipsec/easyrsa3# ipsec start --nofork Starting strongSwan 5.1.2 IPsec [starter]... 00[DMN] Starting IKE charon daemon (strongSwan 5.1.2, Linux 3.13.0-44-generic, x86_64) 00[CFG] loading ca certificates from '/etc/ipsec.d/cacerts' 00[CFG] loaded ca certificate "CN=IPSec CA" from '/etc/ipsec.d/cacerts/ca.crt' 00[CFG] loading aa certificates from '/etc/ipsec.d/aacerts' 00[CFG] loading ocsp signer certificates from '/etc/ipsec.d/ocspcerts' 00[CFG] loading attribute certificates from '/etc/ipsec.d/acerts' 00[CFG] loading crls from '/etc/ipsec.d/crls' 00[CFG] loading secrets from '/etc/ipsec.secrets' 00[CFG] expanding file expression '/var/lib/strongswan/ipsec.secrets.inc' failed 00[CFG] loaded RSA private key from '/etc/ipsec.d/private/aws.bougakov.com.key' 00[LIB] loaded plugins: charon test-vectors aes rc2 sha1 sha2 md4 md5 rdrand random nonce x509 revocation constraints pkcs1 pkcs7 pkcs8 pkcs12 pem openssl xcbc cmac hmac ctr ccm gcm attr kernel-netlink resolve socket-default stroke updown eap-identity eap-mschapv2 eap-tls addrblock 00[LIB] unable to load 5 plugin features (5 due to unmet dependencies) 00[LIB] dropped capabilities, running as uid 0, gid 0 00[JOB] spawning 16 worker threads charon (2656) started after 20 ms 11[CFG] received stroke: add connection 'ikev2-pubkey' 11[CFG] left nor right host is our side, assuming left=local 11[CFG] adding virtual IP address pool 192.168.103.0/24 11[CFG] adding virtual IP address pool 2002:25f7:7489:3::/112 11[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 11[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 11[CFG] added configuration 'ikev2-pubkey' 13[CFG] received stroke: add connection 'ikev1-fakexauth' 13[CFG] left nor right host is our side, assuming left=local 13[CFG] reusing virtual IP address pool 192.168.103.0/24 13[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112 13[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 13[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 13[CFG] added configuration 'ikev1-fakexauth' 06[CFG] received stroke: add connection 'ikev2-eap-tls' 06[CFG] left nor right host is our side, assuming left=local 06[CFG] reusing virtual IP address pool 192.168.103.0/24 06[CFG] reusing virtual IP address pool 2002:25f7:7489:3::/112 06[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt' 06[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com' 06[CFG] added configuration 'ikev2-eap-tls' 16[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (616 bytes) 16[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 16[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09 16[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20 16[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19 16[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02 16[IKE] 5.228.173.181 is initiating an IKE_SA 16[IKE] local host is behind NAT, sending keep alives 16[IKE] remote host is behind NAT 16[IKE] sending cert request for "CN=IPSec CA" 16[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ] 16[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes) 05[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1116 bytes) 05[ENC] parsed IKE_AUTH request 1 [ IDi CERTREQ N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV ADDR6 DNS6 SRV6) SA TSi TSr ] 05[IKE] received cert request for "CN=IPSec CA" 05[IKE] received 38 cert requests for an unknown ca 05[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[192.168.10.6] 05[CFG] selected peer config 'ikev2-pubkey' 05[IKE] peer requested EAP, config inacceptable 05[CFG] switching to peer config 'ikev2-eap-tls' 05[IKE] initiating EAP_TLS method (id 0xE4) 05[IKE] peer supports MOBIKE 05[IKE] authentication of 'CN=aws.bougakov.com' (myself) with RSA signature successful 05[IKE] sending end entity cert "CN=aws.bougakov.com" 05[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH EAP/REQ/TLS ] 05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1260 bytes) 04[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (188 bytes) 04[ENC] parsed IKE_AUTH request 2 [ EAP/RES/TLS ] 04[TLS] negotiated TLS 1.0 using suite TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA 04[TLS] sending TLS server certificate 'CN=aws.bougakov.com' 04[TLS] sending TLS cert request for 'CN=IPSec CA' 04[ENC] generating IKE_AUTH response 2 [ EAP/REQ/TLS ] 04[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1100 bytes) 03[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 03[ENC] parsed IKE_AUTH request 3 [ EAP/RES/TLS ] 03[ENC] generating IKE_AUTH response 3 [ EAP/REQ/TLS ] 03[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (380 bytes) 02[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1340 bytes) 02[ENC] parsed IKE_AUTH request 4 [ EAP/RES/TLS ] 02[TLS] received TLS peer certificate 'CN=client1' 02[TLS] no trusted certificate found for '192.168.10.6' to verify TLS peer 02[TLS] sending fatal TLS alert 'certificate unknown' 02[ENC] generating IKE_AUTH response 4 [ EAP/REQ/TLS ] 02[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (92 bytes) 01[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 01[ENC] parsed IKE_AUTH request 5 [ EAP/RES/TLS ] 01[IKE] EAP method EAP_TLS failed for peer 192.168.10.6 01[ENC] generating IKE_AUTH response 5 [ EAP/FAIL ] 01[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (76 bytes) 12[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (616 bytes) 12[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 12[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09 12[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20 12[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19 12[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02 12[IKE] 5.228.173.181 is initiating an IKE_SA 12[IKE] local host is behind NAT, sending keep alives 12[IKE] remote host is behind NAT 12[IKE] sending cert request for "CN=IPSec CA" 12[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ] 12[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes) 14[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1116 bytes) 14[ENC] parsed IKE_AUTH request 1 [ IDi CERTREQ N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV ADDR6 DNS6 SRV6) SA TSi TSr ] 14[IKE] received cert request for "CN=IPSec CA" 14[IKE] received 38 cert requests for an unknown ca 14[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[192.168.10.6] 14[CFG] selected peer config 'ikev2-pubkey' 14[IKE] peer requested EAP, config inacceptable 14[CFG] switching to peer config 'ikev2-eap-tls' 14[IKE] initiating EAP_TLS method (id 0xD1) 14[IKE] peer supports MOBIKE 14[IKE] authentication of 'CN=aws.bougakov.com' (myself) with RSA signature successful 14[IKE] sending end entity cert "CN=aws.bougakov.com" 14[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH EAP/REQ/TLS ] 14[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1260 bytes) 15[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (188 bytes) 15[ENC] parsed IKE_AUTH request 2 [ EAP/RES/TLS ] 15[TLS] negotiated TLS 1.0 using suite TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA 15[TLS] sending TLS server certificate 'CN=aws.bougakov.com' 15[TLS] sending TLS cert request for 'CN=IPSec CA' 15[ENC] generating IKE_AUTH response 2 [ EAP/REQ/TLS ] 15[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1100 bytes) 13[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 13[ENC] parsed IKE_AUTH request 3 [ EAP/RES/TLS ] 13[ENC] generating IKE_AUTH response 3 [ EAP/REQ/TLS ] 13[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (380 bytes) 06[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1340 bytes) 06[ENC] parsed IKE_AUTH request 4 [ EAP/RES/TLS ] 06[TLS] received TLS peer certificate 'CN=client1' 06[TLS] no trusted certificate found for '192.168.10.6' to verify TLS peer 06[TLS] sending fatal TLS alert 'certificate unknown' 06[ENC] generating IKE_AUTH response 4 [ EAP/REQ/TLS ] 06[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (92 bytes) 11[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 11[ENC] parsed IKE_AUTH request 5 [ EAP/RES/TLS ] 11[IKE] EAP method EAP_TLS failed for peer 192.168.10.6 11[ENC] generating IKE_AUTH response 5 [ EAP/FAIL ] 11[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (76 bytes) 16[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (616 bytes) 16[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ] 16[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09 16[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20 16[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19 16[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02 16[IKE] 5.228.173.181 is initiating an IKE_SA 16[IKE] local host is behind NAT, sending keep alives 16[IKE] remote host is behind NAT 16[IKE] sending cert request for "CN=IPSec CA" 16[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ] 16[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes) 05[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1116 bytes) 05[ENC] parsed IKE_AUTH request 1 [ IDi CERTREQ N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV ADDR6 DNS6 SRV6) SA TSi TSr ] 05[IKE] received cert request for "CN=IPSec CA" 05[IKE] received 38 cert requests for an unknown ca 05[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[192.168.10.6] 05[CFG] selected peer config 'ikev2-pubkey' 05[IKE] peer requested EAP, config inacceptable 05[CFG] switching to peer config 'ikev2-eap-tls' 05[IKE] initiating EAP_TLS method (id 0xA4) 05[IKE] peer supports MOBIKE 05[IKE] authentication of 'CN=aws.bougakov.com' (myself) with RSA signature successful 05[IKE] sending end entity cert "CN=aws.bougakov.com" 05[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH EAP/REQ/TLS ] 05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1260 bytes) 04[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (188 bytes) 04[ENC] parsed IKE_AUTH request 2 [ EAP/RES/TLS ] 04[TLS] negotiated TLS 1.0 using suite TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA 04[TLS] sending TLS server certificate 'CN=aws.bougakov.com' 04[TLS] sending TLS cert request for 'CN=IPSec CA' 04[ENC] generating IKE_AUTH response 2 [ EAP/REQ/TLS ] 04[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1100 bytes) 03[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 03[ENC] parsed IKE_AUTH request 3 [ EAP/RES/TLS ] 03[ENC] generating IKE_AUTH response 3 [ EAP/REQ/TLS ] 03[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (380 bytes) 02[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (1340 bytes) 02[ENC] parsed IKE_AUTH request 4 [ EAP/RES/TLS ] 02[TLS] received TLS peer certificate 'CN=client1' 02[TLS] no trusted certificate found for '192.168.10.6' to verify TLS peer 02[TLS] sending fatal TLS alert 'certificate unknown' 02[ENC] generating IKE_AUTH response 4 [ EAP/REQ/TLS ] 02[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (92 bytes) 01[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (76 bytes) 01[ENC] parsed IKE_AUTH request 5 [ EAP/RES/TLS ] 01[IKE] EAP method EAP_TLS failed for peer 192.168.10.6 01[ENC] generating IKE_AUTH response 5 [ EAP/FAIL ] 01[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (76 bytes)
подразумевая, что читатель умеет настраивать NAT.Вы слишком льстите читателям…
conn ikev2-eap-tls
also="ikev2-pubkey"
rightauth=eap-tls
eap_identity=%identityubuntu@ip-172-31-28-135:~$ sudo ipsec start --nofork
Starting strongSwan 5.1.2 IPsec [starter]...
00[DMN] Starting IKE charon daemon (strongSwan 5.1.2, Linux 3.13.0-44-generic, x86_64)
00[CFG] loading ca certificates from '/etc/ipsec.d/cacerts'
00[CFG] loaded ca certificate "CN=IPSec CA" from '/etc/ipsec.d/cacerts/ca.crt'
00[CFG] loading aa certificates from '/etc/ipsec.d/aacerts'
00[CFG] loading ocsp signer certificates from '/etc/ipsec.d/ocspcerts'
00[CFG] loading attribute certificates from '/etc/ipsec.d/acerts'
00[CFG] loading crls from '/etc/ipsec.d/crls'
00[CFG] loading secrets from '/etc/ipsec.secrets'
00[CFG] expanding file expression '/var/lib/strongswan/ipsec.secrets.inc' failed
00[CFG] loaded RSA private key from '/etc/ipsec.d/private/aws.bougakov.com.key'
00[LIB] loaded plugins: charon test-vectors aes rc2 sha1 sha2 md4 md5 rdrand random nonce x509 revocation constraints pkcs1 pkcs7 pkcs8 pkcs12 pem openssl xcbc cmac hmac ctr ccm gcm attr kernel-netlink resolve socket-default stroke updown eap-identity eap-mschapv2 eap-tls addrblock
00[LIB] unable to load 5 plugin features (5 due to unmet dependencies)
00[LIB] dropped capabilities, running as uid 0, gid 0
00[JOB] spawning 16 worker threads
charon (1610) started after 20 ms
11[CFG] received stroke: add connection 'ikev2-pubkey'
11[CFG] left nor right host is our side, assuming left=local
11[CFG] adding virtual IP address pool 192.168.103.0/24
11[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
11[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
11[CFG] added configuration 'ikev2-pubkey'
13[CFG] received stroke: add connection 'ikev1-fakexauth'
13[CFG] left nor right host is our side, assuming left=local
13[CFG] reusing virtual IP address pool 192.168.103.0/24
13[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
13[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
13[CFG] added configuration 'ikev1-fakexauth'
06[CFG] received stroke: add connection 'ikev2-eap-tls'
06[CFG] left nor right host is our side, assuming left=local
06[CFG] reusing virtual IP address pool 192.168.103.0/24
06[CFG] loaded certificate "CN=aws.bougakov.com" from 'aws.bougakov.com.crt'
06[CFG] id '%any' not confirmed by certificate, defaulting to 'CN=aws.bougakov.com'
06[CFG] added configuration 'ikev2-eap-tls'
16[NET] received packet: from 5.228.173.181[500] to 172.31.28.135[500] (880 bytes)
16[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) V V V V ]
16[ENC] received unknown vendor ID: 1e:2b:51:69:05:99:1c:7d:7c:96:fc:bf:b5:87:e4:61:00:00:00:09
16[ENC] received unknown vendor ID: fb:1d:e3:cd:f3:41:b7:ea:16:b7:e5:be:08:55:f1:20
16[ENC] received unknown vendor ID: 26:24:4d:38:ed:db:61:b3:17:2a:36:e3:d0:cf:b8:19
16[ENC] received unknown vendor ID: 01:52:8b:bb:c0:06:96:12:18:49:ab:9a:1c:5b:2a:51:00:00:00:02
16[IKE] 5.228.173.181 is initiating an IKE_SA
16[IKE] local host is behind NAT, sending keep alives
16[IKE] remote host is behind NAT
16[IKE] sending cert request for "CN=IPSec CA"
16[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ]
16[NET] sending packet: from 172.31.28.135[500] to 5.228.173.181[500] (337 bytes)
05[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (2684 bytes)
05[ENC] parsed IKE_AUTH request 1 [ IDi CERT CERTREQ AUTH N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV) SA TSi TSr ]
05[IKE] received cert request for "CN=IPSec CA"
05[IKE] received 58 cert requests for an unknown ca
05[IKE] received end entity cert "CN=client1"
05[CFG] looking for peer configs matching 172.31.28.135[%any]...5.228.173.181[CN=client1]
05[CFG] selected peer config 'ikev2-pubkey'
05[CFG] using certificate "CN=client1"
05[CFG] using trusted ca certificate "CN=IPSec CA"
05[CFG] checking certificate status of "CN=client1"
05[CFG] certificate status is not available
05[CFG] reached self-signed root ca with a path length of 0
05[IKE] authentication of 'CN=client1' with RSA signature successful
05[IKE] peer supports MOBIKE
05[IKE] authentication of 'CN=aws.bougakov.com' (myself) with RSA signature successful
05[IKE] IKE_SA ikev2-pubkey[1] established between 172.31.28.135[CN=aws.bougakov.com]...5.228.173.181[CN=client1]
05[IKE] scheduling reauthentication in 10197s
05[IKE] maximum IKE_SA lifetime 10737s
05[IKE] sending end entity cert "CN=aws.bougakov.com"
05[IKE] peer requested virtual IP %any
05[CFG] assigning new lease to 'CN=client1'
05[IKE] assigning virtual IP 192.168.103.1 to peer 'CN=client1'
05[IKE] CHILD_SA ikev2-pubkey{1} established with SPIs cf74f20d_i b323abc2_o and TS 0.0.0.0/32 === 192.168.103.1/32
05[ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH CPRP(ADDR DNS DNS) SA TSi TSr N(AUTH_LFT) N(MOBIKE_SUP) N(NO_ADD_ADDR) ]
05[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1404 bytes)
04[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (2684 bytes)
04[ENC] parsed IKE_AUTH request 1 [ IDi CERT CERTREQ AUTH N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV) SA TSi TSr ]
04[IKE] received retransmit of request with ID 1, retransmitting response
04[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1404 bytes)
03[NET] received packet: from 5.228.173.181[4500] to 172.31.28.135[4500] (2684 bytes)
03[ENC] parsed IKE_AUTH request 1 [ IDi CERT CERTREQ AUTH N(MOBIKE_SUP) CPRQ(ADDR DNS NBNS SRV) SA TSi TSr ]
03[IKE] received retransmit of request with ID 1, retransmitting response
03[NET] sending packet: from 172.31.28.135[4500] to 5.228.173.181[4500] (1404 bytes)
02[IKE] sending keep alive to 5.228.173.181[4500]
# Generated by iptables-save v1.4.21 on Sat Feb 21 14:13:02 2015 *mangle :PREROUTING ACCEPT [359:24419] :INPUT ACCEPT [359:24419] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [291:63968] :POSTROUTING ACCEPT [291:63968] -A FORWARD -p tcp -m policy --dir out --pol ipsec -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m tcpmss --mss 1361:1536 -j TCPMSS --set-mss 1360 -A FORWARD -p tcp -m policy --dir in --pol ipsec -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m tcpmss --mss 1361:1536 -j TCPMSS --set-mss 1360 COMMIT # Completed on Sat Feb 21 14:13:02 2015 # Generated by iptables-save v1.4.21 on Sat Feb 21 14:13:02 2015 *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A POSTROUTING -m policy --dir out --pol ipsec -j MASQUERADE COMMIT # Completed on Sat Feb 21 14:13:02 2015 # Generated by iptables-save v1.4.21 on Sat Feb 21 14:13:02 2015 *filter :INPUT ACCEPT [484:32599] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [373:75140] COMMIT # Completed on Sat Feb 21 14:13:02 2015
Ключик в формате p12 положил в корень вебсервера на машине, где установлен strongswan, при открытии его браузером получаю «крокозябры» вместо предложения установить сертификат, как это происходит с cer-файлами.Думаю, дело в Content-Type.
<key>RemoteAddress</key>
<string>ip сервера</string>
<key>XAuthEnabled</key>
<integer>1</integer>
<key>XAuthName</key>
<string>имя пользователя</string>
<key>XAuthPassword</key>
<string>пароль</string>
"Windows Phone\username" : EAP "пароль"
Кстати можно ли L2TP/IPsec использовать как tunnel?Можно, наверное, но зачем? Для IPsec в транспортном режиме весь L2TP-пакет является данными, поэтому будет зашифрован, а т.к. L2TP-сервер расположен на этом же IP, что и IPsec, то в Destination IP будет IP-адрес сервера.
Туннельный режим. Подписывает (если AH) и шифрует (если ESP) весь пакет.Я не знаю, как лучше переформулировать, поэтому и написал «и», а не «или». Т.е. подписывает AH и шифрует ESP, а не подписывает AH или шифрует ESP.
Во первых, ESP тоже подписывает пакет.
echo 1 > /proc/sys/net/ipv4/conf/veth24.0/disable_policy
interface ipsec0
{
AdvSendAdvert on;
MinRtrAdvInterval 30;
MaxRtrAdvInterval 100;
UnicastOnly on;
AdvLinkMTU 1300;
};Mar 2 17:23:34 16[IKE] <ikev1|1> sending keep alive to ххх.59.119.ххх[61728]
Mar 2 17:23:37 09[NET] <3> received packet: from ххх.27.194.ххх[500] to 172.16.10.1[500] (528 bytes)
Mar 2 17:23:37 09[ENC] <3> parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) ]
Mar 2 17:23:37 09[IKE] <3> ххх.27.194.ххх is initiating an IKE_SA
Mar 2 17:23:37 09[IKE] <3> local host is behind NAT, sending keep alives
Mar 2 17:23:37 09[IKE] <3> remote host is behind NAT
Mar 2 17:23:37 09[IKE] <3> sending cert request for "CN=IPsec CA"
Mar 2 17:23:37 09[ENC] <3> generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ]
Mar 2 17:23:37 09[NET] <3> sending packet: from 172.16.10.1[500] to ххх.27.194.ххх[500] (333 bytes)
Mar 2 17:23:52 11[IKE] <ikev1|1> sending DPD request
Mar 2 17:23:52 11[ENC] <ikev1|1> generating INFORMATIONAL_V1 request 525638760 [ HASH N(DPD) ]
Mar 2 17:23:52 11[NET] <ikev1|1> sending packet: from 172.16.10.1[4500] to 176.ххх.119.ххх[61728] (92 bytes)
Mar 2 17:23:55 13[NET] <ikev1|1> received packet: from 176.ххх.119.ххх[61728] to 172.16.10.1[4500] (108 bytes)
Mar 2 17:23:55 13[ENC] <ikev1|1> parsed INFORMATIONAL_V1 request 2466957200 [ HASH N(DPD_ACK) ]
Mar 2 17:23:57 14[IKE] <3> sending keep alive to ххх.27.194.ххх[500]net.ipv4.conf.eth0.disable_policy=1
net.ipv4.conf.eth0.disable_xfrm=1echo 1 > /proc/sys/net/ipv4/conf/venet0/disable_policy
echo 1 > /proc/sys/net/ipv4/conf/venet0/disable_xfrmJul 12 15:00:09 strongswan charon[31013]: 12[NET] received packet: from 1.1.1.1[500] to 2.2.2.2[500] (792 bytes)
Jul 12 15:00:09 strongswan charon[31013]: 12[ENC] parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) ]
Jul 12 15:00:09 strongswan charon[31013]: 12[IKE] 1.1.1.1 is initiating an IKE_SA
Jul 12 15:00:09 strongswan charon[31013]: 12[IKE] 1.1.1.1 is initiating an IKE_SA
Jul 12 15:00:09 strongswan charon[31013]: 12[IKE] remote host is behind NAT
Jul 12 15:00:09 strongswan charon[31013]: 12[IKE] sending cert request for "CN=domain.me"
Jul 12 15:00:09 strongswan charon[31013]: 12[ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(MULT_AUTH) ]
Jul 12 15:00:09 strongswan charon[31013]: 12[NET] sending packet: from 2.2.2.2[500] to 1.1.1.1[500] (337 bytes)
Раз в своё время начали использовать такую связку, IPsec+L2TP, значит зачем-то оно было надо?До Windows 7 в Windows была поддержка IPsec только в транспортном режиме, только с PSK, и ее нужно было настраивать вручную через правила файрволла. Поэтому и использовали L2TP для аутентификации и установления L2-туннеля, а IPsec — для шифрования L2TP-туннеля.
А что может быть, если и ipsec statusall без ошибок, и systemctl status strongswan вроде тоже, а в выводе netstat ни намёка на порты 500 или 4500?Вы соединения в конфигурации указали?
Вы соединения в конфигурации указали?Если речь про conn, то вроде бы, одно. Яблочной техникой не пользуюсь.
клиенты могли обмениваться трафиком друг с другомТак этого и не требуется. Обычный домашний NAS/htpc.
Вот только зачем?Чтобы не настраивать iptables и ломать голову кому что можно, а кому нельзя…
pubkey: RSA 4096 bits, has private key
conn setup
charondebug = ike 3, cfg 3
config setup
# strictcrlpolicy=yes
# uniqueids = no
charondebug = "ike 4, cfg 4"
sudo netstat -ntlup | grep 500
IKEv2
The IKEv2 protocol includes NAT traversal in the core standard, but it's optional to implement. strongSwan implements it, and there is no configuration involved.
ping 8.8.8.8 -s 64000
64008 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=72.8 msping 8.8.8.8 -l 4433
Обмен пакетами с 8.8.8.8 по с 4433 байтами данных:
Превышен интервал ожидания для запроса.
ping 8.8.8.8 -l 4432
Обмен пакетами с 8.8.8.8 по с 4432 байтами данных:
Ответ от 8.8.8.8: число байт=4432 время=92мс TTL=59Не ясно, как сервер понимает, что пользователь «свой». Просто глядя на то, что его сертификат подписан тем же CA, чьи ключи указаны в ipsec.secrets?Аутентификация будет успешна, если клиент предоставит любой сертификат, чей CA есть в директории
/etc/ipsec.d/cacerts. Ограничение CA регулируется директивой rightcaWindows почему-то не доверяет им (конкретно IPsec, браузеры отлично работают)
Маленькая заметка про Android (7):
При настройке штатного VPN, для включения "Постоянного VPN" (автоподнятия VPN при любом подключении к интернету) необходимо обязательно в настройках VPN-соединения:
В Android <=6 это отдельная настройка в меню VPN, и там выводится ошибка с этим пояснением. А в Android >=7 эта галка в настройках VPN-соединения, и если ее поставить, не выполнив вышеуказанное — будет просто недоступна кнопка "Сохранить", без каких-либо пояснений.
аутентификация по SIM-карте в мобильном устройстве

Да, на скриншоте реализация для конкретного типа устройств, но что-то подсказывает, что принцип работы должен быть одинаков всюду.
VPN везде и всюду: IPsec без L2TP со strongSwan