Şifresiz SSH Erişimi Nasıl Kurulur ?

Merhabalar,

 

Secure Shell (SSH), bir istemci ile bir sunucu arasında güvenli bağlantı için kullanılan ve çeşitli kimlik doğrulama mekanizmalarını destekleyen bir kriptografik ağ protokolüdür. En popüler iki mekanizma, parola tabanlı kimlik doğrulama ve açık anahtar tabanlı kimlik doğrulamadır.

 

Bu eğitimde, SSH anahtar tabanlı kimlik doğrulamayı nasıl kuracağınızı ve Linux sunucunuza parola girmeden nasıl bağlanacağınızı göstereceğim

 

SSH Parolasız Oturum Açma Kurulumu (Setup SSH Passwordless Login) :

Linux’ta parolasız bir SSH oturumu kurmak için tek yapmanız gereken ortak bir kimlik doğrulama anahtarı oluşturmak ve bunu uzak ana bilgisayarların ~/.ssh/authorized_keys dosyasına eklemek gerekir.

 

Aşağıdaki adımlar, parolasız SSH oturum açma yapılandırma sürecini açıklayacaktır.

Mevcut SSH anahtar çiftini( key pair ) kontrol edelim.

Yeni bir SSH anahtar çifti ( key pair )  oluşturmadan önce, mevcut anahtarlarınızın üzerine yazmak istemediğiniz için istemci makinenizde zaten bir SSH anahtarınız olup olmadığını kontrol ediniz.

Mevcut SSH anahtarlarının olup olmadığını görmek için aşağıdaki ls komutunu çalıştırın:

ls -al ~/.ssh/id_*.pub

 

Mevcut anahtarlar varsa, bunları kullanarak bir sonraki adımı atlayabilir veya eski anahtarları yedekleyip yeni bir tane oluşturabilirsiniz.

Böyle bir dosya veya dizin yok veya eşleşme bulunamadı görürseniz, SSH anahtarınız yok demektir ve bir sonraki adıma geçerek yeni bir tane oluşturabilirsiniz.

 

Yeni bir SSH anahtar çifti (key pair) oluşturma:

Aşağıdaki komut, yorum olarak e-posta adresinizle birlikte yeni bir 4096 bit SSH anahtar çifti oluşturacaktır.

ssh-keygen -t rsa -b 4096 -C "firat@linuxdata.net"

Varsayılan dosya konumunu ve dosya adını kabul etmek için Enter’a basıyoruz.

Ardından, ssh-keygen aracı sizden güvenli bir passphrase (parola)  yazmanızı isteyecektir.Passphrase (Parola) kullanmak isteyip istemediğiniz size kalmış, parola kullanmayı seçerseniz ekstra bir güvenlik katmanı elde edersiniz. Çoğu durumda, geliştiriciler ve sistem yöneticileri, tam otomatik işlemler için kullanışlı oldukları için SSH’yi parola olmadan kullanırlar. Bir parola kullanmak istemiyorsanız, sadece Enter’a basın.

 

SSH anahtarlarının oluşturulduğundan emin olmak için yeni özel ve genel anahtarlarınızı aşağıdakilerle listeleyebilirsiniz

ls -al ~/.ssh/id_*.pub

 

 

Public Key (Genel anahtarı) `i kopyalama:

Artık bir SSH anahtar çifti oluşturduğunuza göre, sunucunuza parola olmadan giriş yapabilmek için genel anahtarı yönetmek istediğiniz sunucuya kopyalamanız gerekir.

Ortak anahtarınızı sunucunuza kopyalamanın en kolay yolu ssh-copy-id adlı komutu kullanmaktır. Yerel makinenizin terminalinde.

ssh-copy-id root@192.168.88.111

 

erişmeye çalıştığınız kullanıcının şifresini girmemiz gerekecektir.

Kullanıcının kimliği doğrulandıktan sonra, Public key (ortak anahtar) uzak kullanıcının authorized_keys dosyasına eklenecek ve bağlantı kapatılacaktır.

Herhangi bir nedenle ssh-copy-id yardımcı programı yerel bilgisayarınızda yoksa, genel anahtarı kopyalamak için aşağıdaki komutuda kullanabiliriz.

cat ~/.ssh/id_rsa.pub | ssh root@l192.168.88.111 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

 

 

SSH anahtarlarını kullanarak sunucuya giriş yapma:

Yukarıdaki adımları tamamladıktan sonra, parola sorulmadan uzak sunucuda oturum açabilmeniz gerekir.

Test etmek için sunucumuza SSH ile giriş yapmayı deneyelim.

Her şey yolunda giderse, hemen giriş yapabiliriz.

ssh root@192.168.88.111

 

 

SSH Password Authentication (Parola Kimlik Doğrulamasını) Devre Dışı Bırakma:

Sunucunuza ekstra bir güvenlik katmanı eklemek için SSH için parola doğrulamasını devre dışı bırakabilirsiniz.

SSH parola doğrulamasını devre dışı bırakmadan önce sunucunuzda parola olmadan oturum açabildiğinizden ve oturum açtığınız kullanıcının sudo ayrıcalıklarına sahip olduğundan emin olun.

Aşağıdaki öğreticiler, sudo erişiminin nasıl yapılandırılacağını açıklar.

Uzak sunucunuzda, sudo ayrıcalıklarına veya root’a sahip bir kullanıcı olarak SSH anahtarlarıyla oturum açın

SSH yapılandırma dosyasını /etc/ssh/sshd_config açıp, aşağıdaki yönergeleri arayıp ve aşağıdaki gibi değiştirelim.

PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

İşimiz bittiğinde dosyayı kaydedelim ve SSH hizmetini yeniden başlatalım.

 

Hizmeti yeniden başlatmak için Ubuntu veya Debian sunucularında aşağıdaki komutu çalıştıralım.

sudo systemctl restart ssh

Hizmeti yeniden başlatmak için CentOS veya Fedora sunucularında aşağıdaki komutu çalıştıralım.

sudo systemctl restart ssh

 

Bu eğitim yazımızında sonuna geldik.Umarım bu bilgiler sizler için faydalı olur.

 

Bu eğiticiye oy ver
[Total: 2 Average: 5]
Firat CANOĞLU TAĞ