Телефон одбија везу и исписује No trusted RSA public key found for vpn.example.net, док исти сертификат пролаза ради са преносног рачунара у истој мрежи. Примамљив потез је поновно издавање сертификата. Пре тога утврдите која је од три грешке присутна, јер само једна од њих тиче се садржаја сертификата. Порука покрива непотпуну веригу, неподударност идентитета и неподржани кључ или потпис, а свака има другачији поправак.

Три грешке иза једне поруке

Android гради веригу од сертификата пролаза до CA изабраног у VPN профилу, затим упоређује име сервера са профилом. Обавештење извештава о исходу, а не о фази. Грешка поверења значи да верига није могла бити довршена из сертификата достављених у размени; грешка идентитета значи да је верига потврђена, али име није одговарало; грешка алгоритма значи да уређај или профил не прихвата тип кључа или потпис.

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

Одлучујте на основу доказа уместо испробавања поправака редом. Један покушај на нивоу дневника 2 према демону каже у ком сте реду, и кошта мање од поновног издавања сертификата који никада није био погрешан.

Прво одлучите: да ли је стигла цела верига?

strongSwan шаље сертификат конфигурисан за ту везу, а посредни сертификати су засебне акредитиве. Морају се учитати као CA сертификати пре него што их демон може ставити у терет, па распоред у ком је сертификат сервера потписан посредним, корен је сидро поверења, а посредни постоји само у градићу CA даје тачно ову грешку: само лист на жици, верига се рано завршава на телефону.

Проверите шта демон има помоћу swanctl --list-certs у swanctl поставци или ipsec listcerts са старијим starter-ом. Посредни би требало да се појави као CA сертификат са кореном изнад њега. Ако недостаје, ниједна клијентска опција не помаже; ако постоји, пређите на следеће питање.

Затим проверите да ли би био послат. Референца swanctl.conf документује send_cert, чија подразумевана вредност ifasked шаље сертификате само кад је друга страна затражила; always шаље увек. Стари еквивалент је leftsendcert=always у ipsec.conf. Та поставка контролише слање, не доступност, па не може надокнадити посредни који демон никада није учитао.

Ако је верига кратка, учитајте посредни тамо где демон тражи

Ставите посредни у CA директоријум, а не поред листа: /etc/ipsec.d/cacerts за ipsec.conf поставку, /etc/swanctl/x509ca за swanctl или путању коју замењује ваш пакет. Поново учитајте конфигурацију и поново излистајте сертификате. Неке верзије шаљу и пакет који садржи веригу у датотеци листа, али CA директоријум је преносив распоред кроз верзије и пакете.

Проверите и са стране клијента. Телефон види само оно што је размена пренела, па би запис демона на нивоу 2 требало да покаже посредни међу послатим сертификатима. Ако га запис показује, а телефон и даље не успева, налазите се у другом реду табеле, и даље прилагођавање CA датотека неће променити исход.

Ако је верига потпуна, престаните да уређујете сертификате

Грешка идентитета је неподударност између имена у VPN профилу и имена у сертификату. Android упоређује конфигурисани идентитет сервера са сертификатом који је потврдио, па профил који показује на адресу док сертификат наводи име хоста, или профил који наводи име хоста које сертификат не покрива, не успева после успешне провере вериге. Поправите погрешну страну и држите профил и сертификат усклађеним кад се било која промени.

Грешка алгоритма се појављује са ваљаном веригом и одговарајућим именом. Android издања се разликују по томе које типове кључева и шеме потписа прихватају, а сам тип профила ограничава опције. Ако пролаз користи старију или необичну комбинацију, упоредите је са оним што уређај подржава пре него што претпоставите да је сертификат оштећен. Запис демона ће показати да руковање напредује даље него у случају поверења, и то је сигнал да верига више није проблем.

Не инсталирајте посредни као кориснички корен на телефону

Инсталирање посредног као корисничког сертификата на телефону уклања упозорење и мења модел поверења телефона за сваку апликацију која прихвата кориснички инсталиране корене. Такође скрива грешку доставе која ће погодити следећег клијента и оставља пролаз да шаље непотпуну веригу сваком будућем уређају. Трајни поправак је на серверу, једном, за све клијенте.

Држите три одлуке одвојено у запису промена: који су сертификати пренесени, који је идентитет упоређен и који је алгоритам договорен. Пролаз који увек шаље своју пуну веригу, профил који исправно именује сертификат и тип кључа који флота подржава три су мале чињенице, и оне чине целу ову грешку.

Повезани чланци