15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Kodu kullanın:

Skills
Başlayın
28.01.2026

Linux’te SSH Anahtarları Nerede Saklanır – Ve Bunları Güvenli Bir Şekilde Nasıl Yönetirsiniz

SSH (Secure Shell), uzaktan erişim, güvenli dosya transferleri, otomasyon ve sunucu yönetimi için kullanılan Linux ekosisteminde temel bir araçtır. Çoğu kullanıcı SSH ile ssh komutu aracılığıyla etkileşimde bulunurken, arka planda SSH, kimlik doğrulama için genel ve özel anahtar çiftlerine dayanır – özellikle şifre olmadan giriş, otomasyon ve DevOps uygulamalarının gerekli olduğu ortamlarda.

Varsayılan SSH Anahtar Depolama Yeri

SSH anahtarlarının en yaygın depolandığı yer:

~/.ssh/

Bu, kullanıcının ana dizinindeki .ssh dizinine atıfta bulunur, örneğin:

/home/username/.ssh/

Bu dizindeki yaygın dosyalar:

DosyaAmaç
id_rsaVarsayılan özel anahtar (RSA)
id_rsa.pubEşleşen genel anahtar
id_ecdsa, id_ed25519Diğer özel anahtarlar (ECDSA, Ed25519)
id_*.pubKarşılık gelen genel anahtarlar
authorized_keysBağlanmaya izin verilen genel anahtarları saklar
known_hostsSunucu parmak izlerini saklar (host anahtar doğrulaması)
configKullanıcıya özel SSH istemci yapılandırması

Anahtarları ssh-keygen ile oluşturursanız, varsayılan olarak burada saklanır, aksi belirtilmedikçe.

Sistem Genelinde SSH Anahtar Yerleri

 SSH Sunucu (sshd) Host Anahtarları

SSH daemon tarafından kullanılan sistem genelindeki anahtarlar (sunucu tarafı):

/etc/ssh/

Tipik dosyalar:

DosyaAmaç
ssh_host_rsa_keyHost özel anahtarı (RSA)
ssh_host_rsa_key.pubHost genel anahtarı
ssh_host_ecdsa_keyECDSA host özel anahtarı
ssh_host_ed25519_keyEd25519 host özel anahtarı

Bu anahtarlar, sunucuyu istemcilere tanımlamak için kullanılır, kullanıcıları kimlik doğrulamak için değil.

SSH daemon (sshd), bağlantı sırasında host genel anahtarını sunar; istemciler bunu ~/.ssh/known_hosts ile karşılaştırır.

Özel Anahtar Yerleri

SSH anahtarlarını herhangi bir yerden oluşturabilir veya kullanabilirsiniz, ancak yolu belirtmelisiniz:

ssh -i /path/to/custom_key user@host

Ayrıca ~/.ssh/config aracılığıyla birden fazla anahtar yapılandırabilirsiniz:

Host myserver
HostName 192.168.1.100
User devops
IdentityFile ~/.ssh/devops_key

Anahtarlar Nerede Kullanılır?

Çıkış (İstemci Tarafı)

SSH istemcileri varsayılan olarak ~/.ssh/ dizininde özel anahtarları arar. Uzak bir sunucuya bağlanırken kimlik doğrulamayı başlatmak için kullanılırlar.

  • ssh, scp, rsync over SSH, git (SSH uzak kullanıldığında)

📌 Giriş (Sunucu Tarafı)

Sunucu, genel anahtarları arar:

~/.ssh/authorized_keys

Bu dosya, o belirli kullanıcı hesabına giriş yapmasına izin verilen genel anahtarları listeler.

Eğer user_a, user_b olarak bir sunucuya SSH yapmaya çalışırsa, onların genel anahtarı ~user_b/.ssh/authorized_keys içinde bulunmalıdır.

İzinler — Güvenlik İçin Kritik

Doğru izinler:

~/.ssh → 700 (drwx------)
~/.ssh/authorized_keys → 600 (-rw-------)
~/.ssh/id_rsa → 600 (-rw-------)
~/.ssh/id_rsa.pub → 644 (-rw-r--r--)

Yanlış izinler, SSH’nin anahtarlarınızı görmezden gelmesine veya girişleri tamamen reddetmesine neden olabilir.

 SSH Anahtarlarını Güvenli Bir Şekilde Yönetmek

  • Özel anahtarlar oluştururken bir şifre kullanın:

    ssh-keygen -t ed25519 -C "your_email@example.com"
  • Açık anahtarları önbelleğe almak için ssh-agent kullanın:

    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_rsa
  • Anahtarları düzenli olarak değiştirin
  • Kullanılmayan veya yetim anahtarları “authorized_keys” dosyasından kaldırın
  • Her host/proje için ayrı anahtarlar kullanın
  • Farklı ortamlar arasında root anahtarlarını kullanmaktan kaçının

Denetim ve Hata Ayıklama

SSH bağlantısı sırasında hangi anahtarın kullanıldığını görmek için:

ssh -v user@host

Bu, hangi kimlik dosyasının denendiğini de içeren ayrıntılı günlükler yazdırır.

Mevcut ajanınızdaki yüklü anahtarları listelemek için:

ssh-add -l

Bir anahtarı kaldırmak için:

ssh-add -d ~/.ssh/mykey

Sonuç

SSH anahtarlarının Linux’ta nerede saklandığını anlamak – ve bunları güvenli bir şekilde yönetmek – sistem yöneticileri, geliştiriciler, DevOps mühendisleri ve çoklu host veya çoklu kullanıcı ortamlarında çalışan herkes için kritik öneme sahiptir.

Kullanıcı anahtarları, host anahtarları ve yetkilendirilmiş anahtarlar arasındaki farkı bilerek şunları yapabilirsiniz:

  • Kimlik doğrulama sorunlarını gidermek
  • Güvenli otomatik iş akışları oluşturmak
  • Ekipler ve sistemler arasında erişimi yönetmek

Üretim sistemlerinde veya bulut platformlarında (örneğin, VPS veya özel sunucular), SSH anahtarlarını yanlış yönetmek ciddi güvenlik açıklarına yol açabilir. En iyi uygulamaları takip ettiğinizden ve erişimi düzenli olarak denetlediğinizden emin olun.

15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Kodu kullanın:

Skills
Başlayın