Ubuntu sunucunuzda SSH anahtar tabanlı kimlik doğrulamasını yapılandırmak için bu adım adım kılavuzu izleyin. Parola olmadan güvenli bir şekilde oturum açın ve isteğe bağlı olarak parola kimlik doğrulamasını tamamen devre dışı bırakın.
Ubuntu sunucunuzda SSH anahtar tabanlı kimlik doğrulamasını kurmak için her adımı dikkatlice izleyin.
Yerel makinenizde aşağıdaki komutu çalıştırarak bir RSA anahtar çifti oluşturun ( ssh-keygen mevcut sürümleri varsayılan olarak 3072 bit kullanır; daha güçlü bir anahtar için -b 4096 kullanın):
$ ssh-keygenDosya yolu sorulduğunda, varsayılanı ( ~/.ssh/id_rsa ) kabul etmek için Enter tuşuna basın. İsteğe bağlı olarak, ek bir güvenlik katmanı için bir parola belirleyebilirsiniz.
İki dosya oluşturulur: ~/.ssh/id_rsa (özel anahtar - bunu gizli tutun) ve ~/.ssh/id_rsa.pub (genel anahtar - bu sunucuya kaydedilir).
Yöntem 1 — ssh-copy-id (önerilir):
$ ssh-copy-id username@remote_hostİstendiğinde parolanızı girin. Genel anahtar, sunucudaki ~/.ssh/authorized_keys dosyasına eklenecektir.
Yöntem 2 — SSH borusu aracılığıyla:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"Yöntem 3 — manuel olarak: cat ~/.ssh/id_rsa.pub komutuyla genel anahtarınızı görüntüleyin, ardından çıktısını uzak sunucudaki ~/.ssh/authorized_keys dosyasına ekleyin.
Sunucunuza bağlanarak anahtar tabanlı kimlik doğrulamanın çalıştığını test edin:
$ ssh username@remote_host1. adımda bir parola belirlediyseniz, sizden parola girmeniz istenecektir. Belirtmediyseniz, parola sorulmadan hemen giriş yapacaksınız.
Anahtar tabanlı oturum açmanın çalıştığını doğruladıktan sonra, sunucuyu kaba kuvvet saldırılarına karşı korumak için parola kimlik doğrulamasını devre dışı bırakabilirsiniz. SSH daemon yapılandırma dosyasını açın:
sudo nano /etc/ssh/sshd_configPasswordAuthentication satırını bulun, gerekirse yorum satırını kaldırın ve no olarak ayarlayın:
PasswordAuthentication noMevcut Ubuntu sürümlerinde sshd_config , Include /etc/ssh/sshd_config.d/*.conf satırıyla sona erer ve bu dizindeki bir dosya, az önce yaptığınız ayarı geçersiz kılabilir. Değişikliğiniz etkili olmazsa, /etc/ssh/sshd_config.d/ dizininde PasswordAuthentication yes satırını kontrol edin ve bunun yerine oradaki ayarı düzenleyin.
Dosyayı kaydedin ( Ctrl+X , ardından Y , ardından Enter ) ve SSH'yi yeniden başlatın:
$ sudo systemctl restart sshYeni bir terminal açın ve mevcut oturumunuzu kapatmadan önce hala bağlantı kurabildiğinizi doğrulayın.
Ubuntu'da SSH anahtar kimlik doğrulamasını ayarlamaya ilişkin sık sorulan sorular.