Penyerangan berupa brute force ke ssh server merupakan hal yang umum terjadi, sehingga kita perlu menerapkan keamanan yang menutup akses bagi yang melakukan brute force. Salah satunya dengan menggunakan tool DenyHosts. DenyHosts berupa program open source berbasis log sebagai keamanan pencegahan terhadap penyusup pada server SSH. DenyHosts menggunakan bahasa python yang dikembangkan oleh Phil Schwartz. Fungsi utamanya memonitor dan menganalisa log server ssh terhadap percobaan login, penyerangan berbasis kamus, dan brute force dengan menutup IP Address yang melakukan percobaan ke dalam file /etc/hosts.deny.
Berikut ini cara implementasi DenyHosts di linux ubuntu, dan untuk distro seharusnya tidak jauh berbeda.
1. Instalasi denyhosts dapat dengan mudah dilakukan :
# sudo apt-get install denyhosts
2. Setelah berhasil menginstall, untuk mengawalinya, anda perlu mendaftar IP yang dapat mengakses SSH server tersebut pada file /etc/hosts.allow
# vi /etc/hosts.allow
tambahkan IP address, misal seperti :
sshd: 12.34.45.678
3. Secara default, denyhosts sudah dapat digunakan. Namun jika anda ingin melakukan konfigurasi khusus. Dapat mengedit file /etc/denyhosts.conf
4. Jika sudah, maka anda perlu melakukan restart service denyhosts :
# /etc/init.d/denyhosts restart
Bagaimana melepaskan IP Address yang terblokir oleh denyhosts?
Anda dapat juga melepas IP Address yang sudah terblokir. Caranya :
1. Matikan terlebih dahulu service denyhosts :
# /etc/init.d/denyhosts stop
2. Lalu hapus IP Address yang ingin anda lepas pada file :
# vi /etc/hosts.deny # vi /var/lib/denyhosts/hosts # vi /var/lib/denyhosts/hosts-restricted # vi /var/lib/denyhosts/hosts-root # vi /var/lib/denyhosts/hosts-valid # vi /var/lib/denyhosts/users-hosts
3. Jika sudah, maka hidupkan lagi service denyhosts :
#/etc/init.d/denyhosts start