Monday, January 14, 2013

Key-Based SSH Logins With PuTTY [PART 2]




Panduan ini menerangkan bagaimana untuk menjana dan menggunakan sepasang kunci persendirian/awam (private/public key) untuk log masuk ke remote system dengan SSH menggunakan PuTTYPuTTY adalah klien SSH yang boleh digunakan untuk Windows dan Linux (selalunya ia digunakan pada sistem Windows). Menggunakan kunci berasaskan SSH login, anda boleh melumpuhkan prosedur mamasukkan username/password login yang bermaksud bahawa, hanya orang yang mempunyai sepasang kunci persendirian/awam yang sah sahaja boleh log masuk. Dengan cara itu, tidak ada cara untuk serangan brute-force berjaya dilakukan, supaya sistem anda lebih selamat.

Key-Based SSH Logins With PuTTY [PART 2]



4. Sambungan Ke Pelayan SSH

Sekarang kita boleh menyambung kepada pelayan SSH dengan hanya klik pada Open.

Rajah 4.1: Sambungan Ke Pelayan SSH

Jika anda menyambung kepada pelayan bagi kali pertama, amaran keselamatan muncul. Ini adalah kerana PuTTY tidak tahu kunci hos pelayan lagi, jadi ia adalah selamat untuk klik pada Ya. (Jika ini berlaku sekali lagi di kemudian hari, ini boleh bermakna bahawa pelayan lain kini berjalan di bawah alamat IP yang sama, atau seseorang yang telah menceroboh dan menukar kunci.)


Rajah 4.2: Sambungan Kali Pertama

Saya telah menyimpan nama pengguna dalam tetapan profil tadi, jadi saya tidak perlu untuk menaip di sini lagi. Saya hanya perlu menentukan kata laluan pengguna:

Rajah 4.3: Log Masuk ke Pelayan

Sekarang ini adalah cara "biasa" untuk log masuk ke pelayan SSH, iaitu, dengan nama memasukkan pengguna dan kata laluan. Jika orang lain tahu username dan password, dia boleh log masuk juga. Jadi jika anda mempunyai kata laluan lemah atau menjadi mangsa serangan brute-force, ini boleh mendatangkan masalah. Mari kita ubah sekarang.

5. Menjana Sepasang Kunci Persendirian/Awam (Public/Private Key)

Kita boleh menggunakan PuTTYgen untuk mencipta sepasangan kunci persendirian/awam. Mulakan aplikasi dengan mengklik dua kali fail PuTTYgen.exe. Pastikan anda pilih SSH-2 RSA di bawah pilihan Type of key to generate dan nyatakan 1024 sebagai Number of bit in a generated key. Kemudian klik pada Generate:

Rajah 5.1: Antaramuka PuTTYgen.exe

Sila gerakkan tetikus di kawasan kosong semasa proses penjanaan kunci berlaku untuk menjana kunci secara rawak:

Rajah 5.2: Penjanaan Kunci Secara Rawak

Sekarang sepasang kunci persendirian/awam telah dijana. Di bahagian Key comment, anda boleh masukkan apa-apa komen, biasanya saya menggunakan alamat e-mel atau nama pelayan. Kemudian nyatakan Key passphrase anda dan mengulangi di bawah ruangan kosong Confirm passphrase. Anda perlukan passphrase untuk log masuk ke pelayan SSH dengan kunci baru anda. Kemudian klik pada Save public key dan menyimpannya di lokasi yang selamat pada komputer anda. Anda bebas untuk memilih nama fail dan extensions, tetapi anda perlu ingat untuk sistem manakah kunci ini digunakan pada kemudian hari.

Rajah 5.3: Simpan Public Key 1

Rajah 5.4: Simpan Public Key 2

Kemudian klik pada Save private key pula. Anda boleh menyimpan ia di lokasi yang sama pada public key - ia harus berada di lokasi yang hanya anda boleh mengakses dan anda jamin tidak akan kehilangannya! (Jika anda kehilangan kunci dan telah melumpuhkan username/password ketika proses log masuk, maka anda tidak boleh log masuk lagi pada pelayan SSH anda!) Sekali lagi, anda bebas untuk memilih nama fail, tetapi kali ini extension mesti .PPK:

Rajah 5.5: Simpan Private Key 1

Rajah 5.6: Simpan Private Key 2

Seterusnya salin kunci awam(private key) dari tingkap PuTTYgen:

Rajah 5.6: Salin Public Key

6. Simpan Kunci Awam Pada Pelayan

Kemudian log masuk ke pelayan SSH anda (jika anda telah menututup sesi SSH sebelumnya), masih dengan username dan password, dan paste kunci awam ke dalam fail ~/.ssh/authorized_keys (dalam satu baris!) Seperti ini:
mkdir ~/.ssh 
chmod 700 ~/.ssh
Rajah 6.1: Cipta Fail authorized_keys

Seterusnya disusuli pula perintah untuk membina satu fail baru yang berjudul authorized_keys
nano ~/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EA[...]C3SbHFMFAVD5LrvBeLgbNazDh5ABCKXfS42qbUmjWSCpmC6tChqT7PPmQ== Pelayan SSH Ubuntu

Rajah 6.2: Text Editor nano

Fail authorized_keys mestilah mempunyai hak untuk write/readable hanya oleh pengguna tersebut, jadi kita menjalankan perintah:
chmod 600 ~/.ssh/authorized_keys

Rajah 6.3: Chmod

No comments:

Post a Comment