~/blog/instalasi-konfigurasi-ssh-server
Published on

Instalasi & Konfigurasi SSH Server di Linux Ubuntu 18.10

book3 minutes read

Kebanyakan admin jaringan mengelola server yang berada di tempat yang jauh, sehingga seorang admin harus dapat melakukan kontrol jarak jauh terhadap servernya melalui jaringan internet. banyak sekali aplikasi yang bisa digunakan seperti telnet, ftp, dan aplikasi yang disebut perkakas r (r-tools) seperti rsh, rlogin dan rcp. tetapi semua aplikasi tersebut tidak aman karena tidak ada enkripsi yang digunakan untuk melindungi pertukaran data selama koneksi berlangsung.

Untuk administrasi jauh, SSH merupakan aplikasi yang dapat digunakan sebagai pengganti telnet. SSH adalah aplikasi shell yang digunakan untuk membuat koneksi terenkripsi antara sistem agar koneksi menjadi lebih aman, sehingga semua informasi dan pertukaran data yang ditransmisikan terlindungi.

Salah satu aplikasi SSH yang berlisensi bebas dan gratis untuk digunakan adalah OpenSSH. OpenSSH merupakan paket aplikasi yang terdiri dari scp, sftp, ssh, dan sshd.

Oke, mungkin segitu saja pemanasan nya. kalo sudah ~~panas~~ paham kita lanjut ke tutorialnya.

Langkah 1: Instalasi

Update repo:

$ sudo apt update

Install SSH Server:

$ sudo apt install openssh-server -y

Sebenarnya tanpa harus kita konfigurasi ssh secara default sudah bisa dapat digunakan. namun demi keamanan, disarankan untuk memodifikasi beberapa direktif yang ada diberkas sshd_config dan ssh_config seperti dibawah ini.

Langkah 2: Konfigurasi sshd

Aplikasi sshd memiliki berkas konfigurasi utama sshd_config yang tersimpan di dalam direktori /etc/ssh.

Edit file sshd_config:

$ sudo nano /etc/ssh/sshd_config

Ubah direktif:

PermitRootLogin no
StrictModes yes
MaxAuthTries 3

PermitRootLogin: Untuk mengaktifkan atau menonaktifkan akses root.

StrictModes: Yang akan memeriksa apakah berkas dan direktori pengguna memiliki kode akses 777 (siapapun diijinkan untuk menulis, membaca, dan mengeksekusi semua berkas). jika nilai direktif ini diset ke yes dan direktori pangkal pengguna tersebut memiliki mode akses 777, maka pengguna bersangkutan tidak akan diijinkan untuk login melalui OpenSSH.

MaxAuthTries: Maksimal percobaan autentikasi jika pengguna memasukkan username atau password yang salah. hal ini digunakan untuk memperlambat teknik bruteforce attack pada login ssh.

Direktif Port juga terkadang dapat digunakan untuk menambah keamanan koneksi SSH. Hal ini dilakukan dengan mengubah port default SSH yaitu port 22 menjadi port lain selama port tersebut tidak sedang dipakai oleh layanan atau daemon lain.

Langkah 3: Konfigurasi ssh

Sama halnya dengan konfigurasi sshd, konfigurasi ssh secara default langsung dapat digunakan dan tidak perlu dirubah. namun ada beberapa direktif yang perlu diperhatikan:

CheckHostIp yes
StrictHostKeyChecking ask

CheckHostIp: Akan memaksa OpenSSH untuk memeriksa alamat IP host apakah terkena serangan DNS spoofing atau tidak.

StrictHostKeyChecking: Akan memaksa OpenSSH untuk menanyakan apakah kunci publik sistem jauh akan dimasukkan ke berkas known_host ketika koneksi pertama kali dilakukan.

Langkah 4: Restart ssh

Kita perlu me-restart layanan ssh agar terjadi perubahan pada konfigurasi yang telah kita ubah tadi.

auto start ssh saat booting:

$ sudo systemctl enable ssh

restart ssh:

$ sudo systemctl enable ssh

dah gitu aja, See ya~