Mempunyai server sendiri seperti cloud vps atau semua server yang memiliki default login ssh di port 22. Tentunya hal ini sangatlah tidak aman. Apalagi tidak install firewall sama sekali. Kali ini akan dipaparkan, apakah bisa melindungi ssh tanpa install firewall? mari kita lihat selengkapnya!
Apa itu Denyhosts?
Denyhost adalah aplikasi anti penyusup yang berbasis catatan log untuk mendeteksi adanya anomali yang janggal ketika ssh diakses. Semakin sering login ke SSH gagal, maka akan semakin berpotensi untuk ditolak atau di blok akses dari IP tersebut. Denyhosts dibuat oleh Phil Schwartz yang sampai saat ini berstatus kode terbuka (Opensource). Denyhosts tersedia untuk berbagai varian unix, linux, RHEL, dan Mac.
Install Denyhosts di Centos, RHEL, dan Fedora
Secara default, denyhosts belum ada sebagai bawaan. Untuk menginstall denyhosts harus menggunakan repository pihak ke 3 yang di sebut dengan EPEL Repository. Jika EPEL nya sudah diinstal, maka tingal eksekusi saja perintah dibawah ini.
yum --enablerepo=epel install denyhosts
Kemudian tunggu beberapa saat sehingga prosesnya selesai. Nanti akan ada notifikasi, jawab saja dengan menekan Y disusul dengan enter.
Pengaturan Denyhosts
Denyhosts merupakan aplikasi berbasis teks, yang mana semua pengaturannya ada didalam beberapa file teks.
Pengaturan Dasar
Denyhosts memiliki pengaturan dasar. Buka dan edit file di /etc/denyhosts.conf kemudian cari ADMIN_EMAIL dan tambahkan email kamu untuk laporan jika ada penyusup atau hal lainnya. Jika emailnya sudah benar, maka akan ada laporan tiap kali ada penyusup yang mencoba masuk ke SSH server.
Contoh Email Laporan dari Denyhosts
berikut ini adalah screenshot email yang dikirimkan dari denyhosts.
Cara menambahkan whitelist
Untuk menambahkan whitelist di denyhosts, cukup edit file /etc/hosts.allow. Kemudian isi dengan format seperti contoh dibawah ini:
sshd: 172.16.25.125 sshd: 180.18.22.11
Menerapkan hasil perubahan Pengaturan Denyhosts
Setelah anda melakukan berbagai macam perubahan terhadap file denyhosts, maka jangan lupa untuk merestart denyhosts dan memastikan bahwa denyhosts service berjalan ketika booting. Untuk melakukannya cukup masukan kode ini.
# chkconfig denyhosts on # service denyhosts start
Cara melihat Log Denyhosts
Untuk melihat Denyhosts cukup mudah, cukup buka file lognya dengan perintah tail.
tail -f /var/log/secure ############################## Nov 28 15:01:43 tecmint sshd[25474]: Accepted password for root from 182.16.25.125 port 22 ssh2 Nov 28 15:01:43 tecmint sshd[25474]: pam_unix(sshd:session): session opened for user root by (uid=0) Nov 28 16:44:09 tecmint sshd[25474]: pam_unix(sshd:session): session closed for user root
Demikian. Semoga Membantu.