Passwordless SSH

Assalamulaikum,

Selamat dini hari. Pagi ini saya mungkin sedikit hyper karena semalam meminum segelas kopi jelly-nya McD yang sebenarnya sudah bukan murni kopi hitam lagi. Dini hari jam 3 selesai mengerjakan migrasi server, provisioning monitoring server lengkap dengan semua service-nya dan sekarang masih niat untuk nulis. What an awesome night!

Pada dini hari ini saya akan menulis tentang bagaimana setup passwordless ssh login. Tau kan ya maksudnya passwordless? ^^v. Jadi nantinya user tidak perlu lagi mengisikan password saat melakukan login kedalam server. Hal ini tentu sangat praktis jika kita buru-buru dalam melakukan troubleshoot server dan kita lupa menaruh credential servernya dimana. Bagi saya pribadi hal tersebut sangatlah menjengkelkan.

Disini saya menggunakan 2 server CentOS 6.x sebagai bahan uji coba passwordless ssh login ini. Siapkan server seperti biasa dan jangan lupa sediakan cemilan untuk menemani ngoprek kita. Untuk malam ini saya cukup teh panas saja. Ok, next!

Server A – sebagai server

IP : 203.xxx.xxx.xxx

Server B – sebagai client/user

IP : 192.168.xxx.xxx

Langkah 1. Fokus pada Server B sebagai user.

Pada langkah ini kita fokuskan pada server B untuk generate ssh keygen. Apa itu ssh keygen? Menurut wikipedia “sshkeygen is a Unix utility that is used to generate, manage, and convert authentication keys for ssh authentication.” nah begitu kurang lebihnya. Perintah untuk membuat key ini adalah

# ssh-keygen -t rsa

2016-01-02_0348

Ketika nanti saat melakukan generate key anda akan ditanyai beberapa pertanyaan seperti passphrase dll. Untuk bagian ini bisa anda langsung tekan enter saja atau anda custom juga bisa asal anda tau fungsinya untuk apa.

Langkah 2. Letakkan key ke server A.

Setelah selesai membuat key, maka kita fokus pada server A. Kita perlu membuat folder .ssh untuk meletakkan key yang sudah kita buat di sisi client. Folder .ssh ini diletakkan di direktori dimana user akan kita buat menjadi passwordless. semisal kalau user-nya bernama amien yang akan kita jadikan passwordless maka kita buat folder .ssh dibawah /home/amien (misal).

# mkdir /home/amien/.ssh

atau

# ssh amien@203.xxx.xxx.xxx -p 2002 mkdir -p .ssh

ps : -p 2002 opsi untuk port ssh, server saya menggunakan port ini  untuk ssh.

2016-01-02_0415

Langkah 3. Upload key

Setelah kita selesai membuat folder .ssh, maka selanjutnya adalah mengunggah key yang sudah kita buat diawal tadi kedalam server. Bisa anda menggunakan copy isi dari key di direktori .ssh/id_rsa.pub di sisi client atau kita bisa juga mengunggah dengan menggunakan ssh.

# cat .ssh/id_rsa.pub | ssh amien@203.xxx.xxx.xxx -p2002 ‘cat >> .ssh/authorized_keys’

Setelah berhasil mengunggah, ada baiknya kita pastikan lagi apakah key sudah benar-benar berada di server A.

2016-01-02_0418

Setelah kita pastikan OK sudah terunggah, jangan lupa untuk merubah hak akses dari file dan folder file yang sudah kita buat dan unggah td.

# ssh amien@203.xxx.xxx.xxx -p2002 “chmod 700 .ssh; chmod 640 .ssh/authorized_keys”

Langkah 4. Testing!

Saatnya kita coba ssh ke server A dari server B sebagai user. Ingat ya dari server B.

# ssh amien@203.xxx.xxx.xxx -p2002

Voilà!

2016-01-02_0426

Kita berhasil login tanpa menggunakan password lagi. Anda bisa menggunakan key yang sudah anda buat tadi untuk banyak server tanpa harus membuat key lagi.

Ok, cukup sekian tulisan pada dini hari ini saatnya sholat subuh karena sudah terdengar panggilan dari masjid sebelah. Jika ada pertanyaan boleh tinggalkan pesan pada kotak komentar atau email saya di nashihunamien[at]nash-notes.com.

Selamat ngoprek!

nash-notesLinux, PracticeJanuary 2, 20160 comments0 cento, passwordless, ssh passwordless.

Hey, like this post? Why not share it with a buddy?

Leave a Comment

Your email address will not be published. Required fields are marked *