Cara Mengatasi Permission denied (publickey) di VPS Digital Ocean
Setelah habis install ulang laptop, banyak yang perlu diubah guna menyesuaikan tools atau alat untuk ngoding. Mulai dari bahasa pemrograman sampai IDE yang akan digunakan, karena saya lebih suka menggunakan OpenSSH dalam terminal untuk connect ke server VPS Hosting.
Masalah muncul ketika saya menambahkan SSH Key baru ke Droplet punyanya Digital Ocean karena yang lama sudah tidak dipakai lagi, jadi saya ubah SSH Key yang lama dengan yang baru. Alhasil, saya mendapatkan peringatan Permission denied (publickey).
Solusi:
Saya cari masalah ini di google, namun beberapa di antaranya membuat saya bingung dan akhirnya tidak membuahkan hasil.
Jadi, saya analisa sendiri bagaimana proses pembacaan SSH Key ini di Digital Ocean, sehingga SSH Key kita di lokal dikenali oleh server Digital Ocean.
- Login ke https://cloud.digitalocean.com/ untuk masuk akun Digital Ocean.
- Kemudian masuk ke Settings menu sebelah kiri > pilih tab Security.
- Jika belum menambahkan/mengedit SSH Key, silahkan tambah/edit dulu di bagian SSH key kemudian pilih More untuk Edit atau Add SSH Key untuk menambah Key baru. Untuk melihat public key SSH di komputer kita, bisa dengan perintah:
cat ~/.ssh/nama_public_key.pub
- Jika sudah, masuk ke menu Projects kita kemudian pilih tanda titik tiga ..., di Droplet yang ingin kita akses.
- Kemudian pilih Access console untuk bisa masuk ke terminal Droplet kita.
- Di bagian Log in As... isi dengan nama user untuk login (bisa dengan root atau user baru), kemudian klik Launch Droplet Console.
- Jika berhasil, harusnya akan terbuka Window baru yang mana isinya Terminal bahwa kita sudah berhasil masuk dan siap untuk meremote VPS kita.
- Silahkan ketik:
Di sini kita akan menambahkan SSH Key kita yang baru. Kenapa authorized_keys? Karena Droplet Digital Ocean membaca SSH Key kita dari file ini yang kemudian akan dicocokkan dari public key server dan komputer lokal kita, kalau cocok kita berhasil masuk kalau gagal yah bakalan muncul peringatan Permission denied.nano ~/.ssh/authorized_keys
- Kemudian copy public key SSH kita yang dari lokal, pastekan ke baris baru di Terminal yang kita buka melalui Access console. Save file nanonya dengan menekan tombol CTRL + X, kemudian y.
ssh nama_user@ip_droplet
Jika tidak ada masalah, harusnya sudah berhasil masuk ke server.