Önceden paylaşılan anahtar IPsec, OpenVPN ve WireGuard'da ne yapar
Paylaşılan bir sır, bir eşi doğrulayabilir veya bir koruma katmanı ekleyebilir ve rolü protokole göre değişir. Onu kullanıcı parolasıyla karıştırmayın.
Önceden paylaşılan anahtar sözcükleri IPsec, OpenVPN ve WireGuard belgelerinde geçer, ancak üç farklı nesneyi anlatır. Biri bir kimlik doğrulama sırrıdır, biri bir denetim kanalını korur, üçüncüsü ise zaten kimlikleri olan bir el sıkışmaya malzeme ekler. Bunları birbirinin yerine geçen şeyler saymak, kimsenin beklemediği bir aşamada başarısız olan bir bağlantı üretir. Bir değeri oraya kopyalamadan önce alanın o protokolde ne yaptığını okuyun.
Üç protokol, üç anlam
Her protokol anahtarın işini kendi belirtiminde tanımlar ve bu işler birbiriyle örtüşmez. Bir kimlik doğrulama sırrı, iki eşin aynı değeri bildiğini kanıtlar. Bir denetim kanalı anahtarı, ardından gelen anlaşmayı korur. El sıkışmaya eklenen bir parça, eşlerin kim olduğunu değiştirmeden anahtar çizelgesini değiştirir.
Bu rollerin hiçbiri bir insanı doğrulamaz ve en çok zaman kaybettiren karışıklık tam olarak budur. Önceden paylaşılan anahtar, değiş tokuştan önce cihazlara veya ağ geçitlerine yerleştirilir, bu yüzden her sahip karşı tarafa aynı görünür. Bu özellik iki yönlendirici arasındaki bir bağlantı için avantaj, adları belli çalışanları olan bir uzaktan erişim hizmeti için ise risk taşır. Hesap kimlik bilgisini ve kriptografik sırrı, dağıtımı anlatan belgenin ayrı sütunlarında tutun.
IPsec ve OpenVPN sözcüğü farklı kullanır
IKEv2, bir eşi sertifika yerine önceden paylaşılan bir sırla doğrulayabilir ve değer iki uçta da eşleşmelidir. Aynı sır genellikle bir eş grubu için yapılandırıldığından, herhangi bir sahip diğerlerinin yerine geçebilir ve değiş tokuş, hiç sahip olmadığı kimlik anahtarlarından ileriye dönük gizlilik kazanmaz.
OpenVPN'in tls-auth ve tls-crypt seçenekleri denetim kanalına statik bir anahtar iliştirir; ya bir HMAC imzası ekler ya da anlaşmanın kendisini şifreler. Bu anahtar bir kullanıcı parolası değildir ve istemci sertifikasının yerini tutmaz. İkisini ayırmak yenileme sırasında önemlidir, çünkü parola değişikliği denetim kanalı anahtarını olduğu gibi bırakır.
WireGuard'ın PSK'sı ekler, kimlik vermez
WireGuard eşlerinin zaten Curve25519 açık ve özel anahtarları vardır ve el sıkışma bu kimlikleri doğrular. İsteğe bağlı önceden paylaşılan anahtar zincir anahtarına karıştırılır ve açık anahtar değiş tokuşunun üzerine simetrik malzeme katar.
Kendi başına ne bir kimlik ne de bir kullanıcı hesabı sağlar, bu yüzden bir operatör iki sahibi PSK'larından ayırt edemez. İki uç da aynı değeri taşımalıdır, yoksa el sıkışma yardımcı olmayan bir hata mesajıyla başarısız olur. Bu yüzden rotasyon tek bir dosyanın düzenlenmesi olarak değil, iki taraf için aynı anda planlanmalıdır.
Dağıtımı, rotasyonu ve kaldırmayı denetleyin
Dağıtım, tek bir sırrı birçok yerde kullanan her tasarımın zayıf noktasıdır. Bir sohbet penceresine yapıştırılan, bir depoda saklanan veya ortamlar arasında yeniden kullanılan bir değer, kimsenin sayamayacağı kopyalar biriktirir ve her kopya hasar alanını sessizce genişletir.
Base64 metni şifreleme değildir. Aynı dizinde açık bir sertifikanın yanında duran bir sır, hâlâ açık metin hâlinde bir sırdır.
openssl rand -base64 32
sudo wg show wg0 preshared-keys
sudo grep -R -n 'psk' /etc/ipsec.d/ 2>/dev/null
Planlı olarak ve her şüpheli açığa çıkmadan sonra rotasyon yapın; eski değeri geri çekmeden önce amaçlanan her eşi güncelleyin. Ardından bağlantıyı iki uçtan da sınayın, çünkü eşleşmeyen bir anahtar el sıkışmada başarısız olur ve tam olarak bir güvenlik duvarı sorunu gibi görünür.
Hangi sırrın hangi aşamayı koruduğunu belgeleyin, böylece parola sıfırlama asla kriptografik bir anahtarın yenilenmesiyle karıştırılmaz. O tek satır, biri dağıtımı denetlediğinde her seferinde bir saat kazandırır.