Penggunaan ssh dengan autentikasi rsa-key sangat diperlukan untuk
keperluan monitoring ataupun backup, karena untuk keperluan tersebut
biasanya akan dijalankan secara otomatis, sehingga kita tidak perlu
memasukkan password ketika hendak mengakses server lain yang akan kita
monitor atau backup tersebut. Dengan cara ini kita bisa membuat script
yang akan kita jalankan secara otomatis dengan menggunakan cron. Untuk
contoh kasus disini saya akan menunjukkan authentikasi sederhana dengan
rsa key dari server PAJAJARAN ke server SRIWIJAYA, sehingga untuk login
ssh tidak perlu memasukkan password.
Berikut tahapan pengerjaannya:
1. Pada server asal (PAJAJARAN), kita buat ssh key dengan perintah dibawah ini:
[root@PAJAJARAN~]# ssh-keygen
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:
be:65:5f:a1:b0:90:66:3d:ab:77:36:85:7e:62:7b:02 root@PAJAJARAN
The key's randomart image is:
+--[ RSA 2048]----+
| |
| |
| |
| o |
| S + .. |
| + .E=.... |
| . =o... |
| =..O.o |
| o. +oB |
+-----------------+
Tekan tombol enter untuk menyimpan file key secara default, dan untuk
passphrase, kita kosongkan (teka tombol enter). Dari output diatas, kita
sudah memiliki rsa key di lokasi /root/.ssh/
2. Yang akan kita gunakan yakni public key (/root/.ssh/id_rsa.pub). Kita
buka isi file tersebut, dan nantinya key ini akan kita simpan di server
tujuan remote (SRIWIJAYA). Masih di server PAJAJARAN, kita buka file
/root/.ssh/id_rsa.pub:
[root@PAJAJARAN .ssh]# cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwWmYG8Goj4TOBIWcY8kEQ7lDU3WihUYdLd6w2PhLIrTSJejyiKww30INtJhtogB/yYn+5AZueJd1csC0paNnhVTfCvRxP14NYHzZhRamnuUzQWdp5WbuDj8lmvNjmGdVJimNqyxncxI9p5yOTtyIeh6iJiZ0GAJLH5p4QX+CWv6V+JH3SO36DEjOIj3b/HbBM6peCdXSz08zqpkTnoSRROF1Ar4hGJiDn103JbijD62WWX5K6/5u/lNJrCL17uD5lr1oAAgkdhmd0nPkTLqOHTJ77M6I8ej/7SEUNoDVSvU2627PX0G3APQrjRiTl3xmjP/nru4ZB9+vXZY6m51QPw== root@PAJAJARAN
Yang akan kita ambil (copy) yakni pada bagian :
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwWmYG8Goj4TOBIWcY8kEQ7lDU3WihUYdLd6w2PhLIrTSJejyiKww30INtJhtogB/yYn+5AZueJd1csC0paNnhVTfCvRxP14NYHzZhRamnuUzQWdp5WbuDj8lmvNjmGdVJimNqyxncxI9p5yOTtyIeh6iJiZ0GAJLH5p4QX+CWv6V+JH3SO36DEjOIj3b/HbBM6peCdXSz08zqpkTnoSRROF1Ar4hGJiDn103JbijD62WWX5K6/5u/lNJrCL17uD5lr1oAAgkdhmd0nPkTLqOHTJ77M6I8ej/7SEUNoDVSvU2627PX0G3APQrjRiTl3xmjP/nru4ZB9+vXZY6m51QPw==
3. Pada server SRIWIJAYA, kita buat file baru dengan nama
authorized_keys, lalu kita isi dengan public key server PAJAJARAN diatas
[root@SRIWIJAYA .ssh]# nano authorized_keys
Isi file (kita paste dari public key server PAJAJARAN):
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwWmYG8Goj4TOBIWcY8kEQ7lDU3WihUYdLd6w2PhLIrTSJejyiKww30INtJhtogB/yYn+5AZueJd1csC0paNnhVTfCvRxP14NYHzZhRamnuUzQWdp5WbuDj8lmvNjmGdVJimNqyxncxI9p5yOTtyIeh6iJiZ0GAJLH5p4QX+CWv6V+JH3SO36DEjOIj3b/HbBM6peCdXSz08zqpkTnoSRROF1Ar4hGJiDn103JbijD62WWX5K6/5u/lNJrCL17uD5lr1oAAgkdhmd0nPkTLqOHTJ77M6I8ej/7SEUNoDVSvU2627PX0G3APQrjRiTl3xmjP/nru4ZB9+vXZY6m51QPw==
4. Masih didalam server SRIWIJAYA, kita restart service ssh dengan perintah:
[root@SRIWIJAYA ~]# service sshd restart
5. Dari server PAJAJARAN, kita coba lakukan remote login ssh dengan perintah:
[root@PAJAJARAN ~]# ssh root@192.168.1.101
Last login: Sat Feb 8 22:14:53 2014 from 192.168.1.100
[root@SRIWIJAYA ~]#
Dari hasil output diatas terlihat bahwa server PAJAJARAN tidak perlu
memasukkan password lagi dan sudah bisa masuk ke server SRIWIJAYA.