Anda di halaman 1dari 9

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

REMOTE SERVER
MENGGUNAKAN SSH
DASAR TEORI
Perkembangan Internet yang cukup pesat membawa pengaruh yang cukup besar bagi pihakpihak yang memanfaatkan internet ini untuk melakukan berbagai hal misalnya tukar-menukar data,
transaksi online, promosi dan lain-lain. Seiring

dengan kemajuan tersebut kebutuhan akan

keamanan dan kelancaran dalam berinternet sangat diperlukan karena kemajuan teknologi internet
berbanding lurus dengan kejahatan-kejahatan yang ada dalam internet itu sendiri. Dengan adanya
kejahatan-kejahatan internet ini para pengguna semakin tidak aman dan menjadi intaian para
penjahat setiap kali mereka berinternet, maka diperlukan solusi yang bisa membatu agar data yang
dipertukarkan bisa aman dan bisa sampai ketujuan sesuai dengan yang diinginkan. Salah satu solusi
yang ditawarkan adalah dengan menggunakan metode enkripsi yaitu suatu metode yang digunakan
untuk mengamankan data dengan mengubah data asli kedalam bentuk Unicode dengan
tertentu. Ada beberapa metode enkripsi yang bisa digunakan diantaranya

aturan

adalah dengan metode

secure shell (SSH) dan Secure Socket Layer (SSL).


Pada awalnya SSH dikembangkan oleh Tatu Yl nen di Helsinki University of Technology.
SSH memberikan alternative yang secure terhadap remote session tradisional dan file transfer
protocol seperti telnet dan relogin. Protokol SSH mendukung otentikasi terhadap remote host, yang
dengan demikian meminimalkan ancaman pemalsuan identitas client lewat IP address spoofing
maupun manipulasi DNS. Selain itu SSH mendukung beberapa protocol enkripsi secret key (DES,
TripleDES, IDEA, dan Blowfish) untuk membantu memastikan privacy dari
komunikasi, yang dimulai dengan username/password
private connection pada application layer, mencakup

keseluruhan

awal. SSH menyediakan suatu virtual


interactive logon protocol (ssh dan sshd)

serta fasilitas untuk secure transfer file (scd). Setelah meng-install SSH, sangat dianjurkan untuk
men-disable telnet dan rlogin. Implementasi SSH pada linux diantaranya adalah OpenSSH.
SSH merupakan paket program yang digunakan sebagai pengganti yang aman untuk rlogin,
rsh dan rcp. Ia menggunakan public-key cryptography untuk mengenkripsi komunikasi antara dua
host, demikian pula untuk autentikasi pemakai. Ia dapat digunakan untuk login secara aman ke
remote host atau menyalin data antar

host, sementara mencegah man-in-the-middle attacks


arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

(pembajakan sesi) dan DNS spoofing atau dapat dikatakan Secure Shell adalah program yang
melakukan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin
secara remote, dan memindahkan file dari satu mesin ke mesin lainnya.

Cara Kerja SSH


Misalkan suatu client mencoba mengakses suatu linux server melalui SSH. SSH daemon yang
berjalan baik pada linux server maupun SSH client telah mempunyai pasangan public/private key
yang masing-masing menjadi identitas SSH bagi keduanya. Langkah-langkah koneksinya adalah
sebagai berikut :
1. Client bind pada local port nomor besar dan melakukan koneksi ke port 22 pada server.
2. Client dan server setuju untuk menggunakan sesi SSH tertentu. Hal ini penting karena SSH v.1
dan v.2 tidak kompatibel.
3. Client meminta public key dan host key milik server.
4. Client dan server menyetujui algoritma enkripsi yang akan dipakai (misalnya TripleDES atau
IDEA).
5. Client membentuk suatu session key yang didapat dari client dan mengenkripsinya
menggunakan public key milik server.
6. Server men-decrypt session key yang didapat dari client, meng-re-encrypt-nya dengan public
key milik client, dan mengirimkannya kembali ke client untuk verivikasi.
7. Pemakai mengotentikasi dirinya ke server di dalam aliran data terenkripsi dalam session
key tersebut. Sampai disini koneksi telah terbentuk, dan client dapat selanjutnya bekerja secara
interaktif pada server atau mentransfer file ke atau dari server. Langkah ini dapat dilaksanakan
dengan berbagai cara (username/password, kerberos, RSA dan lain-lain).

SKENARIO

arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

1. Mengamankan fasilitas remote SSH Server dari serangan spoofing maupun pembajakan sesi.
2. Server memiliki 2 user
a. user = root; password = rahasia
b. user = arwan; password = arwan

LANGKAH KERJA :
1. install aplikasi SSH Server
# apt-get install ssh
Aplikasi ssh sering ditemukan pada debian server, jika di ubuntu server tidak ditemukan
aplikasi ssh maka bisa juga install aplikasi openssh-server
# apt-get install openssh-server
2. setelah selesai proses instalasi maka lakukan pengecekan pada server, apakah ssh server
tersebut telah running atau belum, cek dengan perintah berikut ini,
# netstat -tulpn
t = [--tcp], menampilkan soket port TCP
u = [--udp], menampilkan soket port UDP
l = --listening, menampilkan port soket yang listen pada server
p = programs, menampilkan nama soket yang listen pada server
n = numeric, agar tidak ada perubahan pada sesi yang ditampilkan

Jika muncul seperti pada gambar diatas berarti ssh sudah running dan siap digunakan.
3. Berikutnya adalah melakukan konfigurasi IP Address pada server sebelum server terebut dapat
di remote dari client. Jalankan periintah berikut ini untuk membuka konfigurasi ip address,
# nano /etc/network/interfaces
arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

Kemudian akan terlihat tampilan seperti pada gamber dibawah ini

Karena diskenariokan server tersebut memiliki 2 buah interface yang tersambung ke client
maka dalam konfigurasi ip address tidak perlu mencantumkan gateway dan dns. Lebih jelasnya
ubah file konfigurasi pada gambar diatas menjadi seperti pada gambar dibawah ini,

Setelah itu simpan file konfigurasi tersebut (tekan tombol CTRL + O kemudian CTRL + X).
kemudian cek hasil konfigurasi ip address tersebut dengan perintah berikut ini,
# ifconfig eth0
Dan
# ifconfig eth1
arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

4. Kemudian sekarang beralih ke client A (Windows XP). Ubah ip address-nya menjadi


192.168.1.1 dengan netmask 255.255.255.0
5. Setelah itu, agar client A bisa me-remote server maka diperlukan aplikasi yang bernama Putty.
Download dulu program putty di http://www.putty.org/ dari computer lain yang terkoneksi ke
internet. Seperti ini aplikasi putty tersebut,

6. Kemudian isikan ip address server pada kolom Host Name [or IP Address]

Kemudian klik tombol Open, jika masih baru pertama kali login remote server maka akan
muncul tampilan autentifikasi seperti pada gambar dibawah ini, klik saja Yes
arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

Kemudian nanti akan muncul permintaan untuk memasukkan username tunggu beberapa saat
hingga diminta untuk memasukkan password dari username yang kita masukkan tadi.
7. Kita sudah bisa melakukan remote server dari client A menggunakan putty, sekarang
bagaimana jika kita ingin me-remote server dari client B yang operating system-nya adalah
linux? Ubah dulu setting-an ip address-nya menjadi 192.168.2.1 dengan netmask
255.255.255.0 seperti pada scenario diatas, cara konfigurasi ip address-nya sama dengan ketika
tadi kita men-setting ip address pada server, bedanya pada client B ini hanya satu interface
yaitu hanya eth0 saja.
8. Setelah itu untuk meremote server tidak perlu menggunakan putty, namun syaratnya pada client
B tersebut sudah ter-install aplikasi ssh juga. Jika belum silahkan di-install dulu.
# apt-get install ssh
Atau
# apt-get install openssh-client
9. Berikutnya bagaimana cara me-remote-nya?
Perintahnya adalah ssh user_server@ip_address_server

arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

Posisi console yang tadinya di root@ubuntu# sekarang sudah berpindah ke debian5# berarti
proses remote server sudah berhasil sempurna. Untuk keluar dari remote server tersebut
jalankan perintah berikut,
# exit
10. Sekarang bagaimana langkah pengamanannya agar fasilitas remote ssh server iti tidak
dimanfaatkan oleh cracker untuk masuk ke sistem server kita dan mencuri data-data penting
yang disimpan pada server kita. file konfigurasi ssh server terletak di direktori /etc/ssh/ dan
didalam direktori tersebut terdapat beberapa file konfigurasi, file konfigurasi utamanya adalah
sshd_config. Buka file konfigurasi tersebut dengan text editor kesayangan Anda,
# nano /etc/ssh/sshd_config

arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

11. Langkah pengamanan pertama yaitu mengubah port default ssh server (22) ke port lain yang
tidak dipakai misalnya diubah ke port 2011.
Ubah tulisan,
Port 22
Menjadi
Port 2011
12. Kemudian berikutnya adalah membuat agar user root tidak bisa login langsung menggunakan
ssh. Karena user root adalah satu-satunya user yang paling umum dan paling sering diserang
oleh cracker.
Ubah tulisan
PremitRootLogin yes
menjadi
PremitRootLogin no
13. Kemudian berikutnya tambahkan konfigurasi untuk toleransi kesalahan untuk memasukkan
password. Tambahkan baris perintah berikut pada baris paling bawah,
MaxAuthTries 1
Secara default toleransi kesalahan memasukkan password adalah 3 kali, dengan perintah
tersebut maka hanya aka nada 1 kali permintaan password untuk login.
14. Kemudian atur agar server tersebut hanya bisa diakes melalui remote ssh pada client B saja
dengan network 192.168.2.0.
Ubah baris perintah berikut,
#ListenAddress 0.0.0.0
menjadi
ListenAddress 192.168.2.254.
Dengan demikian server hanya bisa diakses pada interface eth0 idengan ip address
192.168.2.254, selain dari IP tersebut tidak bisa.
15. Tentukan direktori untuk menyimpan kunci private dari tuan rumah. Secara default akan
diletakkan pada direktori /etc/ssh
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
16. Tentukan jumlah bit yang digunakan dalam membut kunci server,
ServerKeyBits 768
menjadi
ServerKeyBits 1024
arwanuramadhan@gmail.com | Arwan Nur Ramadhan

SSH SERVER

[KONFIGURASI SERVER DENGAN DEBIAN DAN UBUNTU]

17. Mengubah rentan waktu tunggu menjadi lebih pendek, jika kita terlalu lama maka secara
otomatis koneksi akan diputus oleh server. Hitungan waktu dalam detik.
LoginGraceTime 600
Diubah menjadi
LoginGraceTime 10
Ini artinya waktu toleransinya hanya 10 detik saja.
18. Konfigurasi tersebut tidak akan berarti apa-apa sebelum services ssh di-restart, berikut ini
perintah untuk me-restart services ssh agar konfigursi yang baru saja dilakukan tersebut
berefek atau terlihat efeknya.
# /etc/init.d/ssh restart
19. Kemudian cek hasil konfigurasi tersebut. Setelah port-nya diubah maka kita tidak bisa lagi
menggunakan perintah ssh user_server@ip_address_server karena perintah itu akan
menjalankan port 22 secara default. Oleh karena itu, harus ditambahkn tentang informasi port
yang digunakan. Perintahnya adalah ssh -p port user_name_server@ip_address_server atau ssh
ip_address_server -l user_name_server p port
contohnya :
#ssh p 2011 arwan@192.168.2.254
Atau
# ssh 192.168.2.254 l arwan p 2011
20. Selesai.

& SELESAI &

arwanuramadhan@gmail.com | Arwan Nur Ramadhan