Setting SSH Keygen untuk Login SSH Server VPS Tanpa Password
mrfdn.com - Karena lagi sering bolak-balik di VPS Server menggunakan laptop, saya merasa sulit ketika harus selalu mengetikkan/copy paste password ssh untuk login VPS.
Jadi saya memutuskan untuk memasang SSH Keygen saja.
Konsepnya adalah device/laptop yang memiliki id khusus untuk masuk ke VPS akan otomatis terkonfirmasi untuk login tanpa perlu mengetikkan password lagi.
Tanpa berlama-lama begini cara setting ssh keygen.
- Buka terminal system linux di laptop anda. Ketik
cd
untuk memastikan anda berada di home - Ketik
ssh-keygen -t rsa
untuk membuat ssh keygen anda - Akan muncul pertanyaan untuk membuat nama file keygen yang anda inginkan. Ketik nama file spesifik yang diinginkan, atau jika tidak mengetikkannya anda akan mendapatkan nama otomatis bernama
id_rsa.pub
danid_rsa
. - Ketik
perintah
ls
untuk melihat kedua file tersebut.
Kita sudah memiliki 2 file, simpan file tersebut. Jangan sampai hilang atau diketahui orang. Dan sekarang kita pasang file tersebut di VPS,
- Ketik perintah berikut untuk mengirimnya ke VPS anda :
ssh-copy-id -i ~/id_rsa.pub root@nomor.ip.vps.anda
atau jika anda menggunakan port khusus (contoh: 1234) gunakan perintah ini :
ssh-copy-id -i ~/id_rsa.pub -p 1234 root@nomor.ip.vps.anda
- Masukkan password VPS anda
Login ke VPS untuk melihat hasilnya. Cukup ketik
ssh root@nomor.ip.vps.anda
atau jika anda biasa login menggunakan port khusus (contohnya: port 1234)
ssh -p 1234 root@nomor.ip.vps.anda
- Setelah menekan enter, anda tidak akan diminta lagi untuk memasukkan password dan anda pun otomatis login di server anda.
File id_rsa.pub
yang sudah dicopy tadi akan otomatis tersimpan pada file /root/.ssh/authorized_keys
.
Jangan hapus file ini di server anda, dan pastikan melakukan backup terhadap file ini.
Selesai.
Apa yang dilakukan jika pindah distro?
Ini juga bisa dilakukan jika anda menggunakan beberapa device yang terpasang distro yang berbeda-beda. Maka hal pertama yang dilakukan pada distro yang baru adalah membuat file id_rsa baru dengan perintah yang sama seperti di atas :
ssh-keygen -t rsa
Kemudian setelah itu buka file id_rsa.pub
baru yang sudah otomatis diregenerate dan salin/copy semua isinya.
Kemudian login ke server anda lalu paste pada bagian akhir file ~/.ssh/autorized_keys
Sekarang anda sudah memiliki beberapa kunci pada server anda. Jadi ketika anda login menggunakan tiap-tiap device anda, tidak perlu lagi mengetik password login ssh.
Mengatasi WARNING: UNPROTECTED PRIVATE KEY FILE!
File id_rsa (tanpa .pub) itu sebenarnya tidak boleh dibuat read-write-executable. Jika itu terjadi maka anda akan menerima pesan seperti ini saat login ke server anda melalui ssh:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/home/usernamekamu/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/usernamekamu/.ssh/id_rsa": bad permissions
root@111.111.111.111's password:
Cara memperbaikinya mudah saja. Kita hanya perlu mengubah user permission file id_rsa tersebut. Cukup jalankan perintah berikut :
chmod 600 ~/.ssh/id_rsa
Dan anda pun bisa login dengan normal.
Selamat mencoba