Tinklų sietuvai registruoja su sertifikatais susijusias autentifikavimo klaidas, ir pirmoji mintis yra pridėti dar vieną CA gavėjui. Tai reiškia, kad sertifikatas atkeliavo ir buvo atmestas. Kita galimybė yra ta, kad jis niekada nebuvo išsiųstas, ir tai lemia siuntėjo ryšio politika. Nustatykite, kuris iš dviejų atvejų įvyko, prieš keisdami pasitikėjimą.

Ką send_cert iš tikrųjų valdo

Sertifikatų autentifikavimui reikia, kad peero galinio objekto sertifikatas pasiektų kitą pusę per IKE mainus arba per ankstesnį paruošimą. swanctl ryšio nuostata send_cert nustato, ar šis galinis taškas įtraukia savo sertifikato turinį: niekada, visada arba ifasked. Numatytoji ifasked siunčia jį atsakydama į peero sertifikato užklausą. Sertifikato prašymas yra atskira nuostata, nes prašyti kitos pusės sertifikato nėra tas pats, kas siūlyti savąjį.

Senesni ipsec.conf diegimai naudojo leftsendcert ir rightsendcert, o šie pavadinimai atitinka vietinius ir nuotolinius vaidmenis, o ne tiesiogiai swanctl.

Perskaitykite vieną bandymą prieš keisdami ryšį

Diagnozuokite pagal vieną kontroliuojamą bandymą, o ne pagal bendrą įspūdį, kad dalyvauja sertifikatai. Galima apžiūrėti ir politiką, ir aktyvų susiejimą.

swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan --since "10 min ago" | grep -iE "cert|CERT"

Ryšių sąrašas rodo sukonfigūruotą send_cert reikšmę, o SA sąrašas rodo, kurie ryšiai iš tikrųjų buvo užmegzti. Žurnalas prideda derybų detalių: ar buvo gauta sertifikato užklausa ir ar išėjo sertifikato turinys. Bendra autentifikavimo klaida nenurodo pristatymo problemos, todėl ieškokite konkretaus mainų įrašo, prieš ką nors darydami išvadą. Užrašykite bandymo laiko žymą, kad žurnalo langas apimtų visą rankos paspaudimą.

Gavėjo pasitikėjimas yra atskiras sprendimas

Pristatymas ir pasitikėjimas yra skirtingos savybės, ir vienos sutvarkymas nesutvarko kitos. Gavėjas turi turėti numatytą pasitikėjimo inkarą, gauti tinkamą grandinę ir atitikti lauktą peero tapatybę. Galinio objekto sertifikatas, atkeliaujantis be savo tarpinio sertifikato, vis tiek nepraeina griežtos grandinės patikros. Ir atvirkščiai, CA įdiegimas neįpareigoja peero apskritai siųsti savo sertifikato.

openssl x509 -in peer-chain.pem -noout -subject -issuer -dates

Patikra rodo, kuris išdavėjas pasirašė sertifikatą ir kada jis baigiasi, ir tam turi atitikti gavėjo inkaras. Pasitikėkite diegimui priklausančiu išduodančiu CA, o ne kiekvienu tarpiniu grandinės sertifikatu, nes kiekvieno tarpinio sertifikato iškėlimas į šakninį išplečia pasitikėjimą daug toliau nei vienas peer. Palikite tapatybės patikrą įjungtą, nes ryšys, kuris pavyksta tik išjungus patvirtinimą, nėra sprendimas. Kai grandinė nepilna, tvarkykite paruošimą, o ne siuntėjo politiką.

Keiskite siuntėją tik turėdami įrodymų

Kai žurnalas rodo, kad sertifikatas niekada nebuvo išsiųstas, o gavėjas jo tikrai prašė, send_cert reikšmė always yra pagrįstas to ryšio pakeitimas. Taikykite ją swanctl konfigūracijoje, iš naujo įkelkite ryšius ir užmegzkite naują sesiją, o ne naudokite iš naujo esamą SA. Patvirtinkite, kad sertifikato turinys dabar pasirodo ir kad gavėjas jį priima pagal numatytą inkarą. Jei niekas nesikeičia, klaida vis dėlto buvo pasitikėjimo pusėje, o siuntėjo nuostata nebuvo priežastis.

Įrašykite stebėtus mainus, inkarą ir gautą patikrą į pakeitimų žurnalą. Sertifikato taisymas, kurio negalima apibūdinti tokiais terminais, yra atsitiktinumas.

Susiję straipsniai