dhparam -check denetimini geçmek, VPN’nizin Diffie-Hellman kurulumu hakkında bir hüküm gibi hissettirir. Değildir. Komut, bir parametre dosyasını karşıladığını iddia ettiği aritmetikle karşılaştırır ve grup boyutunun politikanıza uyup uymadığı ya da tünelin o dosyayı yükleyip yüklemediği konusunda hiçbir şey söylemez. Onu bir güvenlik incelemesi olarak okumak, ilk düzeltilmesi gereken varsayımdır.

Bir parametre dosyası bir asal sayı ve bir üreteç içerir. Geçerlilik bu sayıların bir özelliğidir; güç ise tehdit modeliniz ve karşı taraflarınız hakkında bir yargıdır ve ikisi birbirinin yerine geçmez.

Geçerlilik denetimi gerçekte neyi doğrular

Denetimi elinizdeki dosya üzerinde çalıştırın ve yanıtı okuyun. openssl dhparam -in dh.pem -check -noout parametre denetimlerini yapar ve kodlanmış çıktıyı bastırır. Parametreler iyi görünüyor mesajı, değerlerin yapısal olarak tutarlı olduğu anlamına gelir; kısa bir grubun ortamınızda kabul edilebilir olduğu anlamına gelmez.

-dsaparam olmadan üretim, (p-1)/2’nin de asal olduğu güvenli asal sayılar verir, bu yüzden bu kadar uzun sürer. DSA tarzı yol parametreleri daha hızlı kurar ve DH biçimine dönüştürür; OpenSSL kılavuzu bunların kullanımına taze anahtarlar için ek koşullar bağlar. İki yapıdan hiçbiri oturum sırrı değildir: dosya herkese açık yapılandırma malzemesidir, sertifikanın özel anahtarı da, kontrol kanalının paylaşılan sırrı da değildir.

Dosyayı yargılamadan önce boyutu ve üreteci okuyun

Geçerlilik sonucu, neyin doğrulandığını bildiğinizde daha çok şey ifade eder. Parametreleri openssl dhparam -in dh.pem -text -noout ile yazdırın, ardından asal sayının uzunluğunu ve üretecin değerini not edin.

Bu uzunluğu alışkanlıkla değil yazılı bir politikayla karşılaştırın. Gereksiniminiz modern bir TLS yığınının onaylanmış adlandırılmış grubuysa, elle üretilmiş bir dosya tamamen yanlış bir artefakt olabilir. İki sayıyı da değişiklik kaydına yazın ki bir sonraki gözden geçiren bunları yeniden türetmek zorunda kalmasın.

Denetimi yeniden üretime çevirmeyin

Buradaki hata modu, denetim gibi görünüp üreteç gibi davranan bir komuttur. openssl dhparam -check 2048 örneğindeki gibi bir bit uzunluğu eklemek yeni parametreler ister ve girdi dosyası yok sayılır. Bir üreteç seçeneği de aynısını yapabilir. Yalnızca incelemek istiyorsanız -in ve -check verin, boyut tanımlayan hiçbir şey vermeyin.

Çıktıyı özgün yolun üzerine yazmak aynı kuşkuyu hak eder, çünkü kılavuz dosya çıktısının atomik olmadığı konusunda uyarır. Yazma sırasındaki bir çökme kesilmiş bir parametre dosyası ve başlamayacak bir servis bırakır.

Grubu protokole uyarlayın, akıma değil

Boyut politikası, aracın sizin yerinize okuyamayacağı bir karardır. 2048 bitlik sonlu alan grubu yaygın bir alt sınırdır ve daha büyük gruplar el sıkışma süresine mal olur, bu yüzden kendi temel çizginizin adlandırdığı sayıyı seçin ve yazın. Yaygın kullanılan gruplar herkese açık oldukları için zayıf değildir; bilinmezlik burada hiçbir şey katmaz.

Yığın onaylanmış adlandırılmış grupları destekliyorsa, benzersiz görünmeleri için sıra dışı parametreler üretmek yerine o belgelenmiş düzeni izleyin. Adlandırılmış bir grup, karşı tarafın tanıyabileceği ve bir gözden geçirenin arayabileceği bir şeydir; bu, kimsenin sınıflandıramadığı özel bir dosyadan daha değerlidir.

VPN’nin dosyayı gerçekten yüklediğini doğrulayın

Hiçbir sürecin okumadığı doğru bir parametre dosyası hiçbir şeyi değiştirmez. OpenVPN içinde sunucu yönergesi yoluyla dh’dir ve ECDH ya da TLS 1.3 anahtar değişimine dayanan kurulumlar bunun yerine dh none ayarlayabilir. Şablonu değil çalışan yapılandırmayı denetleyin, sonra istemcilerin ve karşı tarafların aynı yapı üzerinde anlaştığını doğrulayın.

Döngüyü gerçekten ihtiyaç duyduğunuz kanıtlarla kapatın: tünelin üzerinde anlaştığı grup, dosyadaki parametre uzunluğu ve bu uzunluğun karşıladığı politika satırı. Geçen bir denetim o listenin tek bir maddesidir. Onu yanıtın tamamı saymak, kısa bir grubun yakalaması gereken denetimden sağ çıkma yoludur.

İlgili makaleler