Telefon odbija vezu i ispisuje No trusted RSA public key found for vpn.example.net, dok isti certifikat pristupnika radi s prijenosnog računala na istoj mreži. Iskušenje je ponovno izdati certifikat. Prije toga utvrdite koja je od triju grešaka vaša, jer se samo jedna tiče sadržaja certifikata.

Tri greške iza jedne poruke

Android gradi lanac od certifikata pristupnika do CA odabranog u VPN profilu, pa uspoređuje ime poslužitelja s profilom. Obavijest govori o ishodu, ne o fazi. Greška povjerenja znači da lanac nije dovršen certifikatima prenesenima u razmjeni; greška identiteta da je lanac valjan ali ime se ne podudara; greška algoritma da uređaj ili profil ne prihvaća vrstu ključa ili potpis.

What you seeWhat it points toFirst move
Chain stops after the leaf in the daemon logintermediate not loaded or not sentload the intermediate as CA material
Chain validates, name differs from the profileidentity mismatchfix the profile name or the certificate SAN
Chain validates, handshake still failskey or signature not acceptedcompare key type against the device

Odlučujte na temelju dokaza umjesto da isprobavate popravke redom. Jedan pokušaj na razini dnevnika 2 na demonu kaže vam u kojem ste retku i košta manje od ponovnog izdavanja certifikata koji nikad nije bio pogrešan.

Prvo odlučite: je li stigao cijeli lanac?

strongSwan šalje certifikat pripremljen za tu vezu, a posredni certifikati su zasebne vjerodajnice. Moraju se učitati kao CA certifikati prije nego ih demon može staviti u teret, pa raspored u kojem je certifikat poslužitelja potpisan posrednim, korijen je sidro povjerenja, a posredni živi samo u gradbenom direktoriju CA daje upravo ovu grešku: samo list na žici i lanac koji rano završava na telefonu.

Provjerite što demon drži s swanctl --list-certs u swanctl postavu ili ipsec listcerts sa starijim starterom. Posredni se treba pojaviti kao CA certifikat s korijenom iznad. Ako nedostaje, nikakva opcija klijenta ne pomaže; ako postoji, prijeđite na sljedeće pitanje.

Zatim provjerite hoće li biti poslan. Referenca swanctl.conf dokumentira send_cert, čija zadana vrijednost ifasked šalje certifikate samo kad partner zatraži, a always šalje uvijek. Stari ekvivalent je leftsendcert=always u ipsec.conf. Ta postavka upravlja slanjem, ne dostupnošću, pa ne može nadoknaditi posredni koji demon nikad nije učitao.

Ako je lanac kratak, učitajte posredni ondje gdje demon traži

Stavite posredni u direktorij CA, a ne uz list: /etc/ipsec.d/cacerts za postav s ipsec.conf, /etc/swanctl/x509ca za swanctl ili putanju koju vaš paket zamjenjuje. Ponovno učitajte konfiguraciju i izlistajte certifikate. Neke verzije šalju i paket koji sadrži lanac unutar datoteke lista, ali direktorij CA je prenosiv raspored među verzijama i paketima.

Provjerite i sa strane klijenta. Telefon vidi samo ono što je razmjena prenijela, pa dnevnik demona na razini 2 treba pokazati posredni među poslanim certifikatima. Ako ga pokazuje a telefon i dalje ne uspijeva, vi ste u drugom retku tablice i podešavanje CA datoteka neće promijeniti ishod.

Ako je lanac potpun, prestanite uređivati certifikate

Greška identiteta je nesklad između imena u VPN profilu i imena u certifikatu. Android uspoređuje identitet poslužitelja koji ste postavili s certifikatom koji je validirao, pa profil koji pokazuje na adresu dok certifikat navodi ime hosta, ili profil s imenom hosta koje certifikat ne pokriva, pada nakon uspješne validacije lanca. Ispravite pogrešnu stranu i držite profil i certifikat usklađenima.

Greška algoritma pojavljuje se uz valjan lanac i podudarno ime. Android izdanja razlikuju se po tome koje vrste ključeva i sheme potpisa prihvaćaju, a sam tip profila ograničava opcije. Ako pristupnik rabi stariju ili neuobičajenu kombinaciju, usporedite je s onim što uređaj podržava prije nego pretpostavite da je certifikat oštećen. Dnevnik će pokazati da rukovanje napreduje dalje nego u slučaju povjerenja, što je znak da lanac više nije problem.

Ne instalirajte posredni kao korisnički korijen na telefonu

Instaliranje posrednog koji nedostaje kao korisničkog certifikata na telefonu uklanja upozorenje i mijenja model povjerenja telefona za svaku aplikaciju koja prihvaća korisnički instalirane korijene. Ono i skriva grešku isporuke koja će pogoditi sljedećeg klijenta i ostavlja pristupnik da šalje nepotpun lanac svakom budućem uređaju. Trajna popravka je na poslužitelju, jednom, za sve klijente.

Držite tri odluke odvojeno u zapisu promjena: koji su certifikati preneseni, koji identitet uspoređen i koji algoritam dogovoren. Pristupnik koji uvijek šalje svoj puni lanac, profil koji ispravno imenuje certifikat i vrsta ključa koju flota podržava tri su male činjenice i one su cijela ova greška.

Povezani članci