strongSwan send_cert: IKE sertifikatı nə vaxt göndərilir
send_cert peer-in öz sertifikatını göndərib-göndərmədiyini müəyyən edir, send_certreq isə bunu qarşı tərəfdən istəyir. Qəbul edənin etimadını dəyişməzdən əvvəl jurnalları yoxlayın.
Şlüzlər sertifikatla bağlı autentifikasiya xətalarını jurnala yazır və ilk təkan qəbul edənə daha bir CA əlavə etmək olur. Bu, sertifikatın gəldiyini və rədd edildiyini fərz edir. Digər ehtimal onun heç vaxt göndərilməməsidir və bunu göndərənin bağlantı siyasəti həll edir. Etimadı dəyişməzdən əvvəl bu iki halldan hansının baş verdiyini müəyyənləşdirin.
send_cert əslində nəyə nəzarət edir
Sertifikatla autentifikasiya peer-in son obyekt sertifikatının IKE mübadiləsi və ya əvvəlcədən hazırlıq yolu ilə qarşı tərəfə çatmasını tələb edir. swanctl daxilində bağlantı parametri send_cert bu son nöqtənin öz sertifikat yükünü daxil edib-etmədiyini müəyyən edir: heç vaxt, həmişə və ya ifasked. Standart ifasked onu peer-dən gələn sertifikat sorğusuna cavab olaraq göndərir. Sertifikat istəmək ayrı parametrdir, çünki qarşı tərəfdən onun sertifikatını istəmək öz sertifikatını təklif etməklə eyni deyil.
Köhnə ipsec.conf quraşdırmaları leftsendcert və rightsendcert istifadə edirdi və bu adlar yerli və uzaq rollara uyğun gəlir, birbaşa swanctl-ə deyil.
Bağlantını dəyişməzdən əvvəl bir cəhdi oxuyun
Bir nəzarətli cəhd əsasında diaqnoz qoyun, sertifikatların iştirak etdiyi barədə ümumi təəssürat əsasında deyil. Həm siyasət, həm də aktiv assosiasiya yoxlana bilər.
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan --since "10 min ago" | grep -iE "cert|CERT"
Bağlantılar siyahısı konfiqurasiya edilmiş send_cert dəyərini, SA siyahısı isə hansı bağlantıların həqiqətən qalxdığını göstərir. Jurnal danışıq təfərrüatlarını əlavə edir: sertifikat sorğusunun alınıb-alınmadığı və sertifikat yükünün çıxıb-çıxmadığı. Ümumi autentifikasiya xətası çatdırılma problemini göstərmir, ona görə nəsə qənaət etməzdən əvvəl konkret mübadiləni axtarın. Cəhdin vaxt damğasını qeyd edin ki, jurnal pəncərəsi bütün əl sıxışmasını əhatə etsin.
Qəbul edənin etimadı ayrı qərardır
Çatdırılma və etimad fərqli xassələrdir və birinin düzəldilməsi digərini düzəltmir. Qəbul edənin nəzərdə tutulan etimad lövbəri olmalı, istifadə edilə bilən zəncir almalı və gözlənilən peer kimliyinə uyğun olmalıdır. Ara sertifikatı olmadan gələn son obyekt sertifikatı yenə də ciddi zəncir yoxlamasında uğursuz olur. Əksinə, CA quraşdırmaq peer-i öz sertifikatını heç göndərməyə məcbur etmir.
openssl x509 -in peer-chain.pem -noout -subject -issuer -dates
Yoxlama sertifikatı hansı verənin imzaladığını və nə vaxt bitdiyini göstərir və qəbul edənin lövbəri buna uyğun olmalıdır. Quraşdırmaya məxsus verən CA-ya güvənin, zəncirdəki hər ara sertifikata deyil, çünki hər ara sertifikatı kökə qaldırmaq etimadı bir peer-dən qat-qat genişləndirir. Kimlik yoxlamasını aktiv saxlayın, çünki yalnız doğrulama söndürülmüş halda uğur qazanan bağlantı düzəliş deyil. Zəncirin natamam olduğu yerdə hazırlığı düzəldin, göndərənin siyasətini deyil.
Göndərəni yalnız sübutlarla dəyişin
Jurnal sertifikatın heç vaxt göndərilmədiyini və qəbul edənin onu həqiqətən tələb etdiyini göstərdikdə, send_cert parametrini always etmək həmin bağlantı üçün əsaslandırılmış dəyişiklikdir. Onu swanctl konfiqurasiyasında tətbiq edin, bağlantıları yenidən yükləyin və mövcud SA-nı təkrar istifadə etmək əvəzinə yeni sessiya qurun. Sertifikat yükünün indi göründüyünü və qəbul edənin onu nəzərdə tutulan lövbərə qarşı qəbul etdiyini təsdiqləyin. Heç nə dəyişmirsə, xəta yenə etimad tərəfində idi və göndərən parametri səbəb deyildi.
Müşahidə olunan mübadiləni, lövbəri və ondan irəli gələn yoxlamanı dəyişiklik qeydinə yazın. Bu terminlərlə təsvir edilə bilməyən sertifikat düzəlişi təsadüfdür.