strongSwan send_cert: IKE sertifikası ne zaman gönderilir
send_cert, bir eşin sertifikasını gönderip göndermeyeceğini belirler; send_certreq ise karşı taraftan bunu ister. Alıcının güvenini değiştirmeden önce günlükleri inceleyin.
Ağ geçitleri sertifikayla ilgili kimlik doğrulama hatalarını günlüğe yazar ve ilk tepki alıcıya bir CA daha eklemek olur. Bu, sertifikanın ulaştığını ve reddedildiğini varsayar. Diğer olasılık, hiç gönderilmemiş olmasıdır ve bunu gönderenin bağlantı ilkesi belirler. Güveni değiştirmeden önce bu iki durumdan hangisinin yaşandığını belirleyin.
send_cert gerçekte neyi denetler
Sertifika kimlik doğrulaması, eşin uç varlık sertifikasının IKE alışverişi ya da önceki hazırlık yoluyla karşı tarafa ulaşmasını gerektirir. swanctl içinde bağlantı ayarı send_cert, bu uç noktanın sertifika yükünü içerip içermediğini belirler: hiçbir zaman, her zaman veya ifasked. Varsayılan ifasked, onu eşten gelen bir sertifika isteğine yanıt olarak gönderir. Sertifika istemek ayrı bir ayardır, çünkü karşı taraftan kendi sertifikasını istemek kendi sertifikanı sunmakla aynı şey değildir.
Daha eski ipsec.conf kurulumları leftsendcert ve rightsendcert kullanıyordu ve bu adlar yerel ile uzak rollere karşılık gelir, doğrudan swanctl'ye değil.
Bağlantıyı değiştirmeden önce tek bir denemeyi okuyun
Tek bir denetimli denemeden teşhis koyun, sertifikaların işin içinde olduğu yönündeki genel izlenimden değil. Hem ilke hem de etkin ilişkilendirme incelenebilir.
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan --since "10 min ago" | grep -iE "cert|CERT"
Bağlantı listesi yapılandırılmış send_cert değerini, SA listesi ise hangi bağlantıların gerçekten kurulduğunu gösterir. Günlük, görüşme ayrıntılarını ekler: bir sertifika isteğinin alınıp alınmadığı ve bir sertifika yükünün çıkıp çıkmadığı. Genel bir kimlik doğrulama hatası teslimat sorununu göstermez, bu yüzden bir sonuca varmadan önce belirli alışverişi arayın. Denemenin zaman damgasını not edin ki günlük penceresi el sıkışmanın tamamını kapsasın.
Alıcının güveni ayrı bir karardır
Teslimat ve güven farklı özelliklerdir ve birini düzeltmek diğerini düzeltmez. Alıcı, amaçlanan güven çıpasına sahip olmalı, kullanılabilir bir zincir almalı ve beklenen eş kimliğiyle eşleşmelidir. Ara sertifikası olmadan gelen bir uç varlık sertifikası yine de katı bir zincir denetiminde başarısız olur. Tersine, bir CA kurmak bir eşi sertifikasını göndermeye hiçbir şekilde zorlamaz.
openssl x509 -in peer-chain.pem -noout -subject -issuer -dates
İnceleme, sertifikayı hangi verenin imzaladığını ve ne zaman sona erdiğini gösterir ve alıcının çıpası buna karşılık gelmelidir. Kurulumun sahip olduğu veren CA'ya güvenin, zincirdeki her ara sertifikaya değil, çünkü her ara sertifikayı kök seviyesine yükseltmek güveni tek bir eşin çok ötesine genişletir. Kimlik doğrulamayı etkin tutun, çünkü yalnızca doğrulama kapalıyken başarılı olan bir bağlantı düzeltme değildir. Zincirin eksik olduğu yerde hazırlığı onarın, gönderenin ilkesini değil.
Göndereni yalnızca kanıtlarla değiştirin
Günlük, sertifikanın hiç gönderilmediğini ve alıcının gerçekten istediğini gösterdiğinde, send_cert ayarını always yapmak o bağlantı için haklı bir değişikliktir. Bunu swanctl yapılandırmasında uygulayın, bağlantıları yeniden yükleyin ve mevcut SA'yı yeniden kullanmak yerine yeni bir oturum kurun. Sertifika yükünün artık göründüğünü ve alıcının onu amaçlanan çıpaya karşı kabul ettiğini doğrulayın. Hiçbir şey değişmezse hata yine güven tarafındaydı ve gönderen ayarı neden değildi.
Gözlenen alışverişi, çıpayı ve bundan doğan doğrulamayı değişiklik kaydına yazın. Bu terimlerle tanımlanamayan bir sertifika düzeltmesi bir rastlantıdır.