AES-256-GCM bulunamadı: istemci yeteneği mi, anlaşma mı?
İki OpenVPN hatası benzer görünür: algoritması olmayan bir derleme ve ortak şifresi olmayan taraflar. Profili değiştirmeden önce --show-ciphers ve data-ciphers çıktısını okuyun.
Başka yerde çalışan bir OpenVPN profili, AES-256-GCM bulunamadığını veya tarafların ortak bir şifresi olmadığını bildirir ve ilk dürtü profili düzenlemektir. Bu iki ileti farklı arızaları anlatır. Biri yerel programda o algoritmanın olmadığını söyler; diğeri iki tarafta da algoritmalar bulunduğunu ama ortak bir seçim olmadığını. Profili düzenlemek, hangisine sahip olduğunuzu bilene kadar ikisini de çözmez.
Hatanın tam metnini ve onu üreten programı okuyun.
Hangi hataya sahip olduğunuzu belirleyin
Bulunamayan şifreyle ilgili ileti, yerel makinede herhangi bir paket gönderilmeden önce seçenek ayrıştırmasından gelir. Bu, önünüzdeki çalıştırılabilir dosyanın veya bağlandığı kitaplığın o algoritmayı sunmadığı anlamına gelir. Ortak şifre olmadığına dair ileti daha sonra, anlaşma sırasında gelir ve iki tarafın da şifreleri desteklediği ama birinde uzlaşamadığı anlamına gelir.
Ayrım önemlidir çünkü biri yazılım sürümü sorunu, diğeri yapılandırma sorunudur. Birincisini bir sürüm numarası çözer. İkincisini iki listenin karşılaştırılması çözer.
Yerel bir yetenek boşluğu
Eski topluluk derlemeleri modern varsayılanlardan öncedir ve bir masaüstü uygulaması yanında kurulu komut satırı paketinden farklı kendi motorunu getirebilir. Denetimleri bağlantıyı gerçekten başlatan çalıştırılabilir dosyada yapın, sonra eski bir programa yeni algoritma öğretmek yerine desteklenen bir derleme seçin.
openvpn --version openvpn --show-ciphers | grep -i gcm openvpn --show-tls | head -5
AES-256-GCM o listede yoksa hiçbir profil satırı onu eklemez. Çözüm daha yeni bir istemci veya başka bir derlemedir ve eski tarafın kısıtları ayrı bir tasarım sorusuna dönüşür.
OpenVPN 3 tabanlı istemcilerde motor ve kabul edilen direktifler topluluk 2.x hattından farklıdır, bu yüzden aynı profil metni şifre listesiyle hiç ilgisi olmayan nedenlerle başarısız olabilir.
Anlaşmada bir boşluk
İki taraf da algoritmayı listelediğinde geriye kalan soru her tarafın hangi listeyi sunduğudur. Topluluk OpenVPN anlaşma direktifini yeniden adlandırdı: 2.4teki ncp-ciphers 2.5te data-ciphers oldu ve 2.6da eski cipher satırı çoğunlukla uyumluluğa ve geri dönüşe hizmet eder, anlaşılan kümeyi tanımlamaya değil.
Bu yüzden yalnızca eski cipher satırını değiştirmek anlaşma listesini dokunulmadan bırakabilir. Eski satır geri dönüş için hâlâ önemlidir ve bu ayrı bir iştir. İkisini karıştırmak görünürde hiçbir şeyi değiştirmeyen düzenlemeler üretir.
openvpn --version | head -2 grep -n -E '^(data-ciphers|ncp-ciphers|cipher|tls-cipher)' server.conf client.ovpn
İki ucun listelerini ve sunucunun ret iletisini karşılaştırın. Kesişim boşsa, başka bir sürüm için yazılmış bir yazıdan değer kopyalamak yerine listeleri bilerek hizalayın. Fazla geniş bir liste her bağlantıyı sessizce zayıflatır. Fazla dar bir liste tutmak istediğiniz tarafı dışlar.
Uyumluluğu açık tutun
Eski bir taraf için geri dönüş bedeli olan bir karardır: tüm kurulum bir cihaz bağlanabilsin diye daha zayıf bir seçeneği kabul eder. Bunu böyle yazın ve yalnızca ihtiyaç duyan tarafla sınırlayın.
Sonucu iki koşul belirler. Hata yerelse derlemeyi değiştirin. Hata anlaşmadaysa listeleri iki uçta hizalayın ve hangi sürümleri desteklediğinizi not edin.
Ardından tam hatayı sürüm ve yetenek çıktısı ekli olarak bildirin. Bu çift, eksik bir algoritmayı bir anlaşmazlıktan ayırır ve bir sonraki varsayımsal düzenleme turunu başlamadan durdurur.