Telefon odbija vezu i ispisuje No trusted RSA public key found for vpn.example.net, dok isti certifikat pristupnika radi s prijenosnog računala u istoj mreži. Primamljiv potez je ponovno izdavanje certifikata. Prije toga utvrdite koja je od tri greške prisutna, jer samo jedna od njih tiče se sadržaja certifikata. Poruka pokriva nepotpuni lanac, nepodudarnost identiteta i nepodržani ključ ili potpis, a svaka ima drukčiji popravak.

Tri greške iza jedne poruke

Android gradi lanac od certifikata pristupnika do CA odabranog u VPN profilu, zatim uspoređuje ime poslužitelja s profilom. Obavijest izvješćuje o ishodu, a ne o fazi. Greška povjerenja znači da se lanac nije mogao dovršiti iz certifikata dostavljenih u razmjeni; greška identiteta znači da je lanac potvrđen, ali ime nije odgovaralo; greška algoritma znači da uređaj ili profil ne prihvaća tip 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čite na temelju dokaza umjesto isprobavanja popravaka redom. Jedan pokušaj na razini zapisa 2 prema daemonu kaže u kojem ste retku, i košta manje od ponovnog izdavanja certifikata koji nikada nije bio pogrešan.

Prvo odlučite: je li stigao cijeli lanac?

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

Provjerite što daemon ima pomoću swanctl --list-certs u swanctl postavi ili ipsec listcerts sa starijim starterom. Posredni bi se trebao pojaviti kao CA certifikat s korijenom iznad njega. Ako nedostaje, nijedna klijentska opcija ne pomaže; ako postoji, prijeđite na sljedeće pitanje.

Zatim provjerite bi li bio poslan. Referenca swanctl.conf dokumentira send_cert, čija zadana vrijednost ifasked šalje certifikate samo kad je druga strana zatražila; always šalje uvijek. Stari ekvivalent je leftsendcert=always u ipsec.conf. Ta postavka kontrolira slanje, ne dostupnost, pa ne može nadoknaditi posredni koji daemon nikada nije učitao.

Ako je lanac kratak, učitajte posredni tamo gdje daemon traži

Stavite posredni u CA direktorij, a ne uz list: /etc/ipsec.d/cacerts za ipsec.conf postavu, /etc/swanctl/x509ca za swanctl ili putanju koju zamjenjuje vaš paket. Ponovno učitajte konfiguraciju i ponovno izlistajte certifikate. Neke verzije šalju i paket koji sadrži lanac u datoteci lista, ali CA direktorij je prenosiv raspored kroz verzije i pakete.

Provjerite i sa strane klijenta. Telefon vidi samo ono što je razmjena prenijela, pa bi zapis daemona na razini 2 trebao pokazati posredni među poslanim certifikatima. Ako ga zapis pokazuje, a telefon i dalje ne uspijeva, nalazite se u drugom retku tablice, i daljnje prilagođavanje CA datoteka neće promijeniti ishod.

Ako je lanac potpun, prestanite uređivati certifikate

Greška identiteta je nepodudarnost između imena u VPN profilu i imena u certifikatu. Android uspoređuje konfigurirani identitet poslužitelja s certifikatom koji je potvrdio, pa profil koji pokazuje na adresu dok certifikat navodi ime hosta, ili profil koji navodi ime hosta koje certifikat ne pokriva, ne uspijeva nakon uspješne provjere lanca. Popravite pogrešnu stranu i držite profil i certifikat usklađenima kad se bilo koja promijeni.

Greška algoritma pojavljuje se s valjanim lancem i odgovarajućim imenom. Android izdanja razlikuju se po tome koje tipove ključeva i sheme potpisa prihvaćaju, a sam tip profila ograničava opcije. Ako pristupnik koristi stariju ili neobičnu kombinaciju, usporedite je s onim što uređaj podržava prije nego pretpostavite da je certifikat oštećen. Zapis daemona pokazat će da rukovanje napreduje dalje nego u slučaju povjerenja, i to je signal da lanac više nije problem.

Ne instalirajte posredni kao korisnički korijen na telefonu

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

Držite tri odluke odvojeno u zapisu promjena: koji su certifikati poslani, koji je identitet uspoređen i koji je algoritam dogovoren. Pristupnik koji uvijek šalje svoj puni lanac, profil koji ispravno imenuje certifikat i tip ključa koji flota podržava tri su male činjenice, i one čine cijelu ovu grešku.

Povezani članci