Linux tabanlı bir isletim sistemine, ssh üzerinden sifresiz olarak nasıl baglanabiliriz ona bakalım.
Öncelikle bağlanmak istedigimiz local makinada yapmamiz gerekenlere bakalim;
1 |
[root@omeroner~]ssh-keygen -t rsa |
komutunu calistiriyoruz ve söyle bir cikti elde ediyoruz.
1 2 3 |
[root@omeroner ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): |
Sorulan soruları ENTER tusu ile geçebilirsiniz.
1 2 3 4 5 6 7 8 9 10 |
[root@omeroner ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: ca:17:77:22:3d:de:25:70:ef:6f:0c:41:5a:79:1a:a4 root@omertest [root@omeroner~]# |
Kullanıcının home(cd /root )klasöründe .ssh adlı gizli bir klasör bulunuyor onun içinde iki tane dosya oluşturuldu.
id_rsa ve id_rsa.pub
id_rsa:gizli anahtar
id_rsa.pub: acik anahtar
id_rsa.pub dosyasini baglanmak istedigimiz servere yükleyelim
1 |
[root@omeroner~]scp /root/.ssh/id_rsa.pub root@192.xx.xx.xx:/root/.ssh/id_rsa.pub |
benim id_rsa.pub dosyasını yüklemek istedigim yer ise root kullanıcısının .ssh dizini yani aynı dizin.
simdi id_rsa.pub’u yükledik bunu authorized_keys dosyasi icine yazmamiz gerekiyor. Servere baglanip /root/.ssh/ klasöründe aşağıdaki komutu calistiriyoruz.
scp /root/.ssh/id_rsa.pub [email protected]:/root/.ssh/id_rsa.pub
1 |
[root@omeroner~]cat id_rsa.pub >> authorized_keys |
ardindan id_rsa.pub’u siliyoruz.
1 |
[root@omeroner~]rm -rf id_rsa.pub |
simdi sshd_config dosyamizda bir iki satiri aktif etmemiz gerekiyor.
1 |
[root@omeroner~]vim /etc/ssh/sshd_config |
1 2 3 |
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys |
bu satirlarin basinda # isaretlerini kaldiriyoruz ve kaydediyoruz.ardindan;
1 |
[root@omeroner~]/etc/init.d/sshd restart |
simdi local makinamizdan baglanmayi deniyelim:
1 |
[root@omeroner~]ssh root@192.xx.xx.xx |
evet sorunsuzca baglandik.
suan hem bu yöntemle servere bağlanabilirsiniz hemde normal şifreyi girerek ssh’ya şifreli bağlantıyı tamamen kapatmak isteyenler olabilir ozaman sshd_config de su ayarlari yapmaniz gerekiyor
1 2 3 |
PermitRootLogin yes PasswordAuthentication no #UsePAM yes |
ardindan sshd yi yeniden baslatin
1 |
[root@omeroner~]/etc/init.d/sshd restart |
kısa yoldan aşağıdaki komut satırını bağlanmaya çalıştığınız makine üzerinden çalıştırabilirsiniz.
1 |
cat ~/.ssh/id_rsa.pub | ssh root@192.xx.xx.xx "touch ~/.ssh/authorized_keys && cat - >> ~/.ssh/authorized_keys" |
veya bağlı olduğumuz makineden;
1 2 |
cat /root/.ssh/id_rsa.pub | ssh root@host "cat - >> /root/.ssh/authorized_keys" ssh-copy-id '-p 1071 -i ~/.ssh/id_rsa.pub username@host |
So, what do you think ?