Namanya login ke server pasti identik dengan mengisikan username beserta passwordnya, tapi ternyata ada cara yang lebih amandengan SSH key dan bagusnya kita tidak perlu mengetikkan apapun untuk masuk ke server. Tidak hanya itu, setiap usaha login menggunakan kata sandi akan langsung ditolak, jadi sekaligus mengurangi beban kerja server untuk mengecek apakah usaha tersebut valid atau tidak. Tertarik? 😀

Disini saya akan membuat tutorialnya dengan asumsi menggunakan Windows. Program yang akan kita manfaatkan adalah PuTTYgen dan PuTTY atau KiTTY, jadi silahkan download dulu sebelum mengikuti langkah – langkah berikut. Atau diunduh pas butuh juga tidak masalah, sama saja kok. 🙂

Membuat SSH Key di Windows

Langsung saja jalankan program PuTTYgen dan kemudian:

  1. Pilih SSH-2 RSA pada Type of key to generate.
  2. Kemudian isikan Number of bits in a generated key dengan nilai 2048 atau 4096. Ini menentukan seberapa kuat keamanan kuncinya agar tidak mudah dibobol menggunakan metode brute force.
  3. Akhirnya klik saja Generate
    .
    putty key generator

  4. Satu pasang public key dan private key akan diciptakan.
  5. Key comment untuk mengisikan teks, terserah sebenarnya tapi biasanya saya isikan identifikasi ini ditujukan untuk apa.
  6. Key passphrase tidak wajib diisi, fungsinya setiap kali akan menggunakan key tersebut akan diminta password.
  7. Klik Save public key, ini yang akan ditambahkan ke server.
  8. Juga klik Save private key, yang ini kita gunakan di komputer kita untuk login. Ekstensinya adalah .ppk. Jangan sampai hilang, kalau sudah terlanjur mematikan login SSH menggunakan username dan keynya tidak ada maka tidak bisa masuk kedalam server.

Jangan ditutup aplikasinya karena masih kita butuhkan.

Simpan SSH key ke server

Lanjutkan ke tahap berikutnya yaitu menambahkan public key tadi:

  1. Login seperti biasa lewat SSH ke server.
  2. Kemudian edit profil SSH key:
    nano ~/.ssh/authorized_keys
  3. Nah… kemudian pada PuTTYgen tadi isikan teks dari kotak Public key for pasting into OpenSSH authorized_keys file. Copy-paste maksud saya.
  4. Dilanjutkan dengan mengatur hak akses direktori dan file profil SSH, penting soalnya:
    chmod 0700 ~/.ssh
    chmod 0644 ~/.ssh/authorized_keys
  5. Selesai

Konfigurasikan agar PuTTY/KiTTY menggunakan SSH key untuk login

  1. Akhirnya kita buka program PuTTY/KiTTY kembali.
  2. Buka Connection > SSH > Auth.
    kitty configuration connection ssh authentication
  3. Isikan lokasi file .ppk yang dibuat oleh PuTTYgen sebelumnya pada kotak Private key file for authentication.
  4. Kembali ke bagian Session, isikan profil SSH dari server yang akan digunakan seperti biasanya.
  5. Klik Save.
  6. Kemudian silahkan buka koneksi dengan menekan Open.

Seharusnya anda tidak akan diminta mengisikan kata sandi.

Mematikan login SSH menggunakan username dan password

Harap jangan lakukan perintah berikut kalau login menggunakan SSH key diatas belum berhasil, bisa permanen gagal masuk ke server. Sudah yakin dan pasti bisa? Lanjutkan dengan menonaktifkan fitur login SSH memakai username dan password:

nano /etc/ssh/sshd_config

Cari dan ubah opsi berikut:

PasswordAuthentication no
UsePAM no

Jangan diketikkan manual karena sudah ada opsi – opsinya, tinggal mengubah yes menjadi no atau menghilangkan simbol komentar (#) dalam filenya.

Akhirnya silahkan restart layanan ssh:

service ssh reload

Yak, selesai sudah cara menggunakan SSH key untuk login ke server. Amankan private key anda juga, backup dan jangan sampai hilang.

Semoga bermanfaat. 🙂