Autor del tema
#0
Birçok Linux kullanıcısı, SSH anahtarları ile bağlantı kurarken "Permission denied (publickey)" hatası veya "bad permissions" uyarısı ile karşılaşır. Bu hatalar genellikle özel anahtar dosyalarının izinleri ile ilgilidir. SSH, güvenlik nedeniyle özel anahtar dosyalarının belirli bir izin seviyesine sahip olmasını bekler. İşte bu durumu aşmak için dikkat etmeniz gereken noktalar.
Öncelikle, SSH özel anahtar dosyanızın izinlerini kontrol etmelisiniz. Genellikle bu dosyalar
Eğer izinler 600 değilse, aşağıdaki komut ile izinleri düzeltebilirsiniz:
Ayrıca,
Eğer izinler uygun değilse, şu komutla düzeltin:
Son olarak, SSH bağlantısı kurmaya çalıştığınız sunucunun
Bu adımların ardından hala sorun yaşıyorsanız, SSH istemcisi ile bağlantı kurarken
Bu bilgiler, hatanın nedenini belirlemede yardımcı olacaktır. SSH özel anahtar izinleri ile ilgili bu bilgilerin, bağlantı sorunlarınıza çözüm bulmanızda faydalı olacağını umuyorum.
Öncelikle, SSH özel anahtar dosyanızın izinlerini kontrol etmelisiniz. Genellikle bu dosyalar
~/.ssh/id_rsa veya ~/.ssh/id_ed25519 gibi bir konumda bulunur. Bu dosyanın izinleri 600 olmalıdır; yani yalnızca dosya sahibi okuma ve yazma iznine sahip olmalıdır. Bunu kontrol etmek için terminalde aşağıdaki komutu kullanabilirsiniz:CODE
1ls -l ~/.ssh/id_rsaEğer izinler 600 değilse, aşağıdaki komut ile izinleri düzeltebilirsiniz:
CODE
1chmod 600 ~/.ssh/id_rsaAyrıca,
.ssh dizininizin izinlerinin de doğru ayarlandığından emin olmalısınız. Bu dizin için 700 izni gereklidir. Bunu kontrol etmek için:CODE
1ls -ld ~/.sshEğer izinler uygun değilse, şu komutla düzeltin:
CODE
1chmod 700 ~/.sshSon olarak, SSH bağlantısı kurmaya çalıştığınız sunucunun
authorized_keys dosyasındaki anahtarın doğru olduğundan emin olun. Bu dosya genellikle sunucuda ~/.ssh/authorized_keys konumunda bulunur ve burada sizin özel anahtarınıza karşılık gelen genel anahtar yer almalıdır.Bu adımların ardından hala sorun yaşıyorsanız, SSH istemcisi ile bağlantı kurarken
-v (verbose) seçeneğini kullanarak daha fazla hata ayıklama bilgisi alabilirsiniz:CODE
1ssh -v user@hostnameBu bilgiler, hatanın nedenini belirlemede yardımcı olacaktır. SSH özel anahtar izinleri ile ilgili bu bilgilerin, bağlantı sorunlarınıza çözüm bulmanızda faydalı olacağını umuyorum.