Bir ESXi sunucusunda oturum açma girişimi "No supported authentication methods available (server sent: publickey)" hatasıyla sonuçlanıyor
Summary: Bu makale, ESXi perspektifinden SSH sorunlarını gidermeye yönelik ayrıntılı bir rehber sağlar. Bununla birlikte, burada tartışılan kavramlar ve çözümler diğer Linux tabanlı işletim sistemleri için de geçerlidir ve bu bilgileri daha geniş bir ortam yelpazesi için değerli kılar. ...
Symptoms
Bir ESXi sunucusunda SSH oturum açma girişimi, aşağıdaki gibi "No supported authentication methods available (server sent: publickey)" hatasıyla sonuçlanır:
Farklı bir ESXi sunucusundan oturum açmaya çalışırken aşağıdaki hata görüntülenir:
Cause
sshd_config dosyasındaki "challengeresponseauthentication" parametresi "no" olarak ayarlandığından ve sunucular asimetrik kimlik doğrulama (RSA Genel ve Özel anahtar kimlik doğrulaması) için uygun şekilde yapılandırılmadığından sunucu SSH oturumunu reddeder.
Sonuç olarak, Putty kullanarak sunucuya bağlanma girişimi "No supported authentication methods available (server sent: publickey) hatasıyla sonuçlanır.
Benzer bir davranış, kullanıcı başka bir ESXi ana bilgisayarından SSH bağlantısı kurmaya çalıştığında da gözlemlenir. Bu durumda, kullanıcı "Load key '/.ssh/id_rsa': error in libcrypto" hatasını alır, ancak parolayı girmesi istenmez ve bağlantı başarısız olur.
Sunucular asimetrik kimlik doğrulaması için düzgün yapılandırılmamışsa ancak 'ChallengeResponseAuthentication' parametresi 'evet' olarak ayarlanmışsa, kullanıcı bir hata iletisi alır, ancak ardından parolasını girmesi istenir. Parolayı doğru girdikten sonra bağlantı başarıyla kurulur.
Resolution
DCUI'yi kullanarak hedef sunucu konsoluna bağlanın ve ardından /etc/ssh/sshd_config yapılandırma dosyasında challengeresponseauthentication değerini yes olarak düzenleyin.
ChallengeResponseAuthentication
ChallengeResponseAuthentication ayarı, SSH bağlantıları için sınama-yanıt kimlik doğrulamasına izin verilip verilmediğini belirtir. Bu seçenek etkinleştirildiğinde SSH sunucusu, istemcilerin kimlik doğrulamasına izin vermeden önce bir sorgulamaya yanıt vermesini gerektirir. Bazı SSH sunucusu uygulamalarında varsayılan olarak etkindir ancak Red Hat makalesi 336773'de açıklandığı gibi Red Hat gibi bazı sistemlerde güvenlik nedeniyle devre dışı bırakılabilir.
ChallengeResponseAuthentication , KbdInteractiveAuthentication için kullanım dışı bırakılmış bir diğer addır. Referans: OpenSSH: Sürüm Notları
Additional Information
Daha fazla detay:
-
Challengeresponseauthentication ve passwordauthentication ayarlarının birleşimi biraz farklı bir istem oluşturur:
ChallengeResponseAuthenticationHayır olarak ayarlandı ve PasswordAuthenticationEvet olarak ayarlandı:

challengeresponseauthenticationhayır olarak ayarlandı ve passwordauthenticationyes olarak ayarlandı VEYA her ikisi de evet olarak ayarlandı:

Daha fazla sorun giderme adımı:
-
İstemci tarafında, ssh ilerlemesiyle ilgili hata ayıklama mesajlarını yazdırmak için ssh komutundaki -v seçeneğini kullanın. Birden çok -v seçeneği ayrıntı düzeyini artırır (Maksimum değer 3'tür):

…

-
Hedef sunucuda, başarısız SSH oturumu girişimi hakkında daha fazla ayrıntı almak için LogLevel
ayarının ayrıntı düzeyini artırın:
Günlük Düzeyi
sshd(8)'den gelen iletileri günlüğe kaydederken kullanılan ayrıntı düzeyini verir. Olası değerler şunlardır: SESSIZ, FATAL, HATA, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 ve DEBUG3 Varsayılan ayar INFO'dur. DEBUG ve DEBUG1 eş değerdir. DEBUG2 ve DEBUG3'ün her biri daha yüksek hata ayıklama çıkış düzeyleri belirtir. DEBUG düzeyiyle günlüğe kaydetmek, kullanıcıların gizliliğini ihlal eder ve önerilmez.
- Hata hakkında daha fazla ayrıntı için hedef sunucudaki /var/run/log/auth.log dosyasını gözden geçirin.