Linux'ta SSH Public Key Hatası ve Çözümü: Sorunu Adım Adım Çözün

Linux'ta SSH Public Key Hatası ve Çözümü: Sorunu Adım Adım Çözün

Bu yazıda, SSH public key hatasının sebepleri ve nasıl çözülmesi gerektiği detaylı bir şekilde açıklanmıştır. Linux'ta SSH bağlantısı kurarken karşılaşılan bu hata, doğru yapılandırma ile hızlıca çözülebilir.

BFS

Bir gün, Linux sunucunuza bağlanmaya çalışırken bir hata ile karşılaştınız. Hata mesajı: *“Permission denied (publickey)”* - bu sizi oldukça zor durumda bırakmış olabilir. SSH bağlantısında karşılaşılan bu hata, genellikle public key ile ilgili bir problem olduğunu gösterir. Ama endişelenmeyin! Bu yazıda, Linux'ta SSH public key hatasının nasıl çözüleceğine dair adım adım bir rehber sunacağım.

SSH Public Key Hatası Nedir?


SSH (Secure Shell), iki bilgisayar arasında güvenli bir bağlantı sağlamak için kullanılan popüler bir protokoldür. Bu protokole, genellikle şifre yerine kullanılan bir public key (açık anahtar) kullanarak bağlanılır. Bu durumda, istemci bilgisayarınızın public key'i, sunucuya tanıtılmış olmalıdır. Eğer bu anahtar doğru yapılandırılmamışsa, SSH bağlantısında hata alırsınız. Bu, çoğu zaman *“Permission denied (publickey)”* hatasıyla kendini gösterir.

SSH Public Key Hatasının Sebepleri


Birçok nedenden dolayı bu hatayı alabilirsiniz. İşte en yaygın sebepler:
1. Public Key’in Sunucuya Yüklenmemesi: Public key’inizi sunucuya eklememiş olabilirsiniz.
2. Private Key’in Yanlış Yolu: SSH istemcisi doğru private key dosyasını kullanmıyor olabilir.
3. Permissions Sorunları: Anahtar dosyalarınızın izinleri doğru ayarlanmamış olabilir.
4. SSH Config Ayarları: SSH konfigürasyon dosyasındaki hatalar da bağlantı sorunlarına yol açabilir.

Hata Çözümü: Adım Adım Rehber


Şimdi, bu hatayı nasıl çözeceğimize göz atalım. Adım adım takip ederek sorunu hızlıca çözebilirsiniz.

1. Adım: Public Key'in Sunucuya Eklenmesi

İlk olarak, public key’inizin sunucuya yüklendiğinden emin olun. Eğer yüklemediyseniz, aşağıdaki komutu kullanarak public key’i sunucuya ekleyebilirsiniz.


ssh-copy-id kullanıcı_adı@sunucu_ip_adresi


Bu komut, yerel makinenizdeki public key dosyasını (genellikle `~/.ssh/id_rsa.pub`), sunucunuzun `~/.ssh/authorized_keys` dosyasına ekler.

2. Adım: Private Key’in Doğru Yolda Olduğunu Kontrol Edin

Private key dosyanızın doğru konumda olduğundan emin olun. Varsayılan olarak SSH istemcisi `~/.ssh/id_rsa` dosyasını arar. Eğer farklı bir anahtar kullanıyorsanız, SSH komutunu şu şekilde yazabilirsiniz:


ssh -i /path/to/private_key kullanıcı_adı@sunucu_ip_adresi


3. Adım: Anahtar Dosyalarının İzinlerini Kontrol Edin

SSH, anahtar dosyalarının doğru izinlere sahip olmasını bekler. Private key dosyanızın izinlerinin `600` olması gerekir, yani sadece sahibi tarafından okunabilir ve yazılabilir olmalıdır. Bu izinleri şu şekilde ayarlayabilirsiniz:


chmod 600 ~/.ssh/id_rsa


Ayrıca, `~/.ssh` dizininizin izinlerinin `700` olduğundan emin olun:


chmod 700 ~/.ssh


4. Adım: SSH Konfigürasyonunu Kontrol Edin

Sunucunuzun SSH konfigürasyon dosyasındaki hatalar da bu tür sorunlara neden olabilir. Sunucuda `/etc/ssh/sshd_config` dosyasını açın ve aşağıdaki satırların doğru ayarlandığından emin olun:


PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys


Değişiklik yaptıysanız, SSH servisini yeniden başlatmayı unutmayın:


sudo systemctl restart sshd


Ekstra İpuçları


Bazen SSH bağlantısı sırasında bağlantı sorunları yaşanabilir. Eğer hala bağlanamıyorsanız, aşağıdaki komutla hata mesajlarını daha ayrıntılı bir şekilde görebilirsiniz:


ssh -v kullanıcı_adı@sunucu_ip_adresi


Bu komut, bağlantı sürecinde neler olduğunu detaylı bir şekilde gösterir ve sorunun ne olduğunu anlamanıza yardımcı olabilir.

Sonuç


Linux'ta SSH public key hatası, genellikle küçük yapılandırma hatalarından kaynaklanır. Bu rehberi takip ederek, bu hataları hızlıca düzeltebilir ve güvenli bağlantınızın keyfini çıkarabilirsiniz. Eğer bu adımlar sorununuzu çözmediyse, ssh loglarına göz atarak daha fazla bilgi edinebilir ve hata mesajlarını inceleyebilirsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

DirectAdmin Nasıl Kurulur ve Yapılandırılır?

DirectAdmin Nedir ve Neden Kullanılır?Merhaba arkadaşlar! Bugün, birçok web yöneticisinin en çok tercih ettiği kontrol paneli olan DirectAdmin’i nasıl kuracağımızı ve yapılandıracağımızı keşfedeceğiz. İlk başta, DirectAdmin nedir, biraz ondan bahsedelim.DirectAdmin,...

Cronjob 'Not Running' Hatası ve Çözümü: Sorunları Çözmenin Adımları

Bir sabah işinize başlamadan önce, otomatik olarak çalışması gereken bir cronjob’ın neden çalışmadığını düşündünüz mü? Ne yazık ki, bu tür sorunlarla karşılaşmak oldukça yaygın, ancak çözümü de bir o kadar basit olabilir. Eğer siz de cronjob 'Not Running'...

Linux'ta Nagios ile İzleme: Sistem Performansınızı Nasıl Mükemmel Hale Getirirsiniz?

Merhaba Sistem Tutkunları! Sistemlerinizin nabzını tutmak, performansını artırmak ve sorunları daha ortaya çıkmadan yakalamak, günümüz dijital dünyasında olmazsa olmaz. Peki, bu zorlu görevde yanınızda kim var? Tabii ki Nagios! Linux ortamında güçlü,...