Încerc să configurez o conexiune IPsec între două mașini virtuale folosind Strongswan. Configurația de pe prima mea mașină este următoarea (ipsec.conf
):
conn %implicit
ikelifetime=60m
durata cheii=20m
rekeymargin=3m
keyingtries=1
mobike=nu
keyexchange=ikev2
authby=pubkey
esp=null-sha1!
conn host-to-host
stânga=192.168.56.102
leftcert=/etc/ipsec.d/certs/servercert.pem
leftid="C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org"
dreapta=192.168.56.101
rightid="C=..., ST=..., O=..., OU=SSTT, CN=nume"
tip=tunel
auto=pornire
Fișierul ipsec.secrete
conține ruta corectă către cheia privată. Configurația de pe a doua mea mașină se potrivește cu cea listată aici.
Problema mea este: când SA se stabilește dintr-un anumit motiv pe prima mea mașină (server), lista de politici arată astfel:
src 192.168.56.101/32 dst 192.168.56.102/32
dir fwd prioritate 2819
tmpl src 192.168.56.101 dst 192.168.56.102
proto esp reqid 1 mod tunel
src 192.168.56.101/32 dst 192.168.56.102/32
dir cu prioritate 2819
tmpl src 192.168.56.101 dst 192.168.56.102
proto esp reqid 1 mod tunel
src 192.168.56.102/32 dst 192.168.56.101/32
dir out prioritatea 2819
tmpl src 192.168.56.102 dst 192.168.56.101
proto esp reqid 1 mod tunel
src 192.168.56.101/32 dst 192.168.56.102/32
prioritatea blocului de acțiuni dir fwd 12035
src 192.168.56.101/32 dst 192.168.56.102/32
dir în bloc de acțiune cu prioritate 12035
src 192.168.56.102/32 dst 192.168.56.101/32
dir out bloc de acțiune prioritate 12035
Lista de politici a mașinii client nu are politici cu acțiuni de blocare, ci doar politicile corecte.
Am capturat puțin trafic cu wireshark și am constatat că atunci când serverul meu dă ping la a doua mașină, pachetele ICMP sunt trimise de două ori, o dată cu antetul ESP și o dată fără. A doua mașină răspunde doar celor fără.
Am încercat doar să șterg politicile cu acțiune de bloc, dar evident că nu a funcționat.
Ieșire în jurnal după repornirea serviciului pe partea serverului:
11 iunie 15:29:28 ubuntu-server charon: 00[DMN] semnal de tip SIGINT primit. Închidere
11 iunie 15:29:28 ubuntu-server charon: 00[IKE] ștergerea IKE_SA de la gazdă la gazdă[2] între 192.168.56.102[C=..., ST=..., O=..., OU =SSTT, CN=www.sstt.org]...192.168.56.101[C=..., ST=..., O=..., OU=SSTT, CN=nume]
11 iunie 15:29:28 ubuntu-server charon: 00[IKE] se trimite DELETE pentru IKE_SA gazdă-la-gazdă[2]
11 iunie 15:29:28 ubuntu-server charon: 00[ENC] generează cerere INFORMAȚIONALĂ 0 [ D ]
11 iunie 15:29:28 ubuntu-server charon: 00[NET] trimitere pachet: de la 192.168.56.102[500] la 192.168.56.101[500] (76 de octeți)
11 iunie 15:29:30 ubuntu-server charon: 00[DMN] Se pornește demonul IKE charon (strongSwan 5.3.5, Linux 4.4.0-186-generic, x86_64)
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă certificatele ca de la „/etc/ipsec.d/cacerts”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] a încărcat certificatul ca „C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org” din „/etc/ipsec.d/cacerts/cacert.pem”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă certificate aa de la „/etc/ipsec.d/aacerts”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă certificate de semnatar ocsp de la „/etc/ipsec.d/ocspcerts”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă certificate de atribut de la „/etc/ipsec.d/acerts”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă crls din „/etc/ipsec.d/crls”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] se încarcă secrete din „/etc/ipsec.secrets”
11 iunie 15:29:30 ubuntu-server charon: 00[CFG] a încărcat cheia privată RSA de la „/etc/ipsec.d/private/serverkey.pem”
11 iunie 15:29:30 ubuntu-server charon: 00[LIB] pluginuri încărcate: charon test-vectors aes rc2 sha1 sha2 md4 md5 aleatoriu nonce x509 constrângeri de revocare pubkey pkcs1 pkcs7 pkcs8 pkcskey12 agent pkcspcspcs8 pkcsmpkey pkcspcspcs12 pkcs12 pkcspcs8 hmac gcm attr kernel-netlink resolve socket-default connmark stroke updown
11 iunie 15:29:30 ubuntu-server charon: 00[LIB] scăpat de capabilități, rulând ca uid 0, gid 0
11 iunie 15:29:30 ubuntu-server charon: 00[JOB] generează 16 fire de lucru
11 iunie 15:29:30 ubuntu-server charon: 11[CFG] accident vascular cerebral primit: adăugați conexiunea „gazdă la gazdă”
11 iunie 15:29:30 ubuntu-server charon: 11[CFG] a încărcat certificatul „C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org” de la „/etc/ipsec.d/certs/servercert.pem”
11 iunie 15:29:30 ubuntu-server charon: 11[CFG] a adăugat configurația „host-to-host”
11 iunie 15:29:30 ubuntu-server charon: 13[CFG] a primit accident vascular cerebral: inițiază „host-to-host”
11 iunie 15:29:30 ubuntu-server charon: 13[IKE] inițiază IKE_SA gazdă-la-gazdă[1] la 192.168.56.101
11 iunie 15:29:30 ubuntu-server charon: 13[ENC] generează cererea IKE_SA_INIT 0 [ SA KE Nu N(NATD_S_IP) N(NATD_D_IP) N(HASH_ALG) ]
11 iunie 15:29:30 ubuntu-server charon: 13[NET] trimitere pachet: de la 192.168.56.102[500] la 192.168.56.101[500] (1124 de octeți)
11 iunie 15:29:30 ubuntu-server charon: 15[NET] pachet primit: de la 192.168.56.101[500] la 192.168.56.102[500] (481 de octeți)
11 iunie 15:29:30 ubuntu-server charon: 15[ENC] analizat răspuns IKE_SA_INIT 0 [ SA KE Nu N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(HASH_ALG) N(MULT_AUTH) ]
11 iunie 15:29:30 ubuntu-server charon: 15[IKE] a primit o cerere de certificare pentru „C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 iunie 15:29:30 ubuntu-server charon: 15[IKE] trimiterea cererii de certificare pentru „C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 iunie 15:29:30 ubuntu-server charon: 15[IKE] autentificare pentru „C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org” ( eu însumi) cu RSA_EMSA_PKCS1_SHA256 cu succes
11 iunie 15:29:30 ubuntu-server charon: 15[IKE] care trimite certificatul de entitate finală „C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org "
11 iunie 15:29:30 ubuntu-server charon: 15[IKE] se stabilește CHILD_SA de la gazdă la gazdă
11 iunie 15:29:30 ubuntu-server charon: 15[ENC] generează cererea IKE_AUTH 1 [ IDi CERT N(INIT_CONTACT) CERTREQ IDr AUTH SA TSi TSr N(MULT_AUTH) N(EAP_ONLY) ]
11 iunie 15:29:30 ubuntu-server charon: 15[NET] trimitere pachet: de la 192.168.56.102[500] la 192.168.56.101[500] (1628 octeți)
11 iunie 15:29:30 ubuntu-server charon: 16[NET] pachet primit: de la 192.168.56.101[500] la 192.168.56.102[500] (1500 de octeți)
11 iunie 15:29:30 ubuntu-server charon: 16[ENC] analizat răspunsul IKE_AUTH 1 [ IDr CERT AUTH SA TSi TSr N(AUTH_LFT) ]
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] a primit certificatul de entitate finală "C=..., ST=..., O=..., OU=SSTT, CN=nume"
11 iunie 15:29:30 ubuntu-server charon: 16[CFG] folosind certificatul „C=..., ST=..., O=..., OU=SSTT, CN=name”
11 iunie 15:29:30 ubuntu-server charon: 16[CFG] folosind certificatul ca de încredere „C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 iunie 15:29:30 ubuntu-server charon: 16[CFG] se verifică starea certificatului „C=..., ST=..., O=..., OU=SSTT, CN=name”
11 iunie 15:29:30 ubuntu-server charon: starea certificatului 16[CFG] nu este disponibilă
11 iunie 15:29:30 ubuntu-server charon: 16[CFG] a ajuns la rădăcina auto-semnată ca cu o lungime a căii de 0
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] autentificarea „C=..., ST=..., O=..., OU=SSTT, CN=name” cu RSA_EMSA_PKCS1_SHA256 reușită
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] IKE_SA host-to-host[1] stabilit între 192.168.56.102[C=..., ST=..., O=..., OU =SSTT, CN=www.sstt.org]...192.168.56.101[C=..., ST=..., O=..., OU=SSTT, CN=nume]
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] programând reautentificare în 3250s
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] maxim IKE_SA durata de viață 3430s
11 iunie 15:29:30 ubuntu-server charon: politica 16[KNL] există deja, încercați să o actualizați
11 iunie 15:29:30 ubuntu-server charon: mesaj repetat de 2 ori: [ politica 16[KNL] există deja, încercați să o actualizați]
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] CHILD_SA host-to-host{1} stabilit cu SPI-uri c056e14a_i c62093a4_o și TS 192.168.56.102/32 === 192.102.168.10.
11 iunie 15:29:30 ubuntu-server charon: 16[IKE] a primit AUTH_LIFETIME din 3364s, programând reautentificarea în 3184s
Poate cineva să explice ce se întâmplă? mulțumesc anticipat