Beberapa waktu lalu Saya pernah berjanji pada seorang kawan untuk berbagi mengenai CSF.

Apa itu CSF? Bagi seorang System Administrator, pasti sudah sangat familiar dengan CSF.

ConfigServer Security & Firewall atau disingkat CSF, adalah sebuah Packet Inspection firewall, Login/Intrusion Detection dan aplikasi keamanan untuk server Linux.

CSF sangat fleksibel dan berjalan mulus di berbagai distro Linux seperti Ubuntu, CentOS, RHEL, maupun Debian serta support untuk virtualisasi server seperti Xen, VMWare, VirtualBox, OpenVZ, dan lain-lain. CSF juga menyediakan banyak sekali fitur untuk daemon/service pada server Linux seperti : Courier, Dovecot, Exim, OpenSSH, cPanel & WHM, Pure-FTPd, ProFTPd dan deteksi serangan seperti BruteForce, Port Scan & Port flooding, SYN flood & Ping of Death dan masih banyak lagi.

Pada kesempatan kali ini, penulis menggunakan CentOS paravirtualization pada Xen dan berbagi sedikit konfigurasi dasar CSF.

Agar CSF dapat bekerja, pastikan syslog dan iptables firewall aktif.

Pertama download dan extract CSF dari situs resminya :

wget http://configserver.com/free/csf.tgz
tar -xzf csf.tgz; cd csf
./install.sh

Perhatikan hasil output, CSF menggunakan bahasa Perl, dan tidak semua sistem memiliki module Perl yang dibutuhkan CSF, install modul-modul yang diperlukan dari pesan error yang mungkin muncul. Misalnya pada gambar di atas penulis harus menginstall modul Perl Time-HiRes dan libwww.

yum install perl-Time-HiRes perl-libwww-perl

Setelah itu coba install kembali dengan mengeksekusi script install.sh. Jika berhasil maka kurang lebih akan menampilkan output sebagai berikut :

Setelah proses installasi berhasil, masuk ke folder /etc/csf ( disini tempat semua konfigurasi dan script CSF diletakan ) lalu edit file csf.allow dan masukan alamat IP yang biasa Anda gunakan untuk mengakses server Anda.

Kemudian tahap selanjutnya: edit konfigurasi utama CSF pada file csf.conf Pada bagian Port Settings dan General Settings:

TCP_IN = Port yang diperbolehkan untuk koneksi TCP dari luar. Misalnya untuk WebServer Perbolehkan Port HTTP dan SSH untuk remote akses, tutup port lainnya.
TCP_OUT = Port yang diperbolehkan untuk koneksi TCP ke luar. Misalnya untuk menggunakan External SMTP Google: buka port 465 untuk SSL dan 587 untuk TLS.
UDP_IN = Port yang diperbolehkan untuk koneksi UDP dari luar. Misalnya untuk DNS server buka port 53.
UDP_OUT = Port yang diperbolehkan untuk koneksi UDP ke luar. Misalnya buka port 33434-33523 untuk memperbolehkan traceroute ke server lain.
ICMP_IN dan ICMP_OUT = Memperbolehkan ping dari luar server atau dari dalam server.
ETH_DEVICE = Interface yang ingin difilter oleh iptables. Misalkan Anda memiliki 2 interface, ether0 untuk ke internet, ether1 untuk jaringan lokal dan hanya ingin memfilter firewall dari internet, maka isikan eth0.

Setelah selesai melakukan konfigurasi, maka coba jalankan csftest.pl untuk melakukan pengecekan apakah konfigurasi kita sudah benar. Kemudian restart CSF dan LFD.

bash
perl csftest.pl

Jika sudah benar dan cukup mantap dengan konfigurasi yang ada, Anda dapat mengenable konfigurasi Anda dengan cara mengubah value TESTING menjadi 0 pada bagian Initial Settings ( file csf.conf ).

TESTING = "0"

kemudian restart CSF dan LFD

bash
service csf restart; service lfd restart

Maka akan tampil output rules firewall yang telah kita konfigurasi.

TIPS :

Anda dapat mengirimkan semua log / alert yang ada ke email pribadi anda.Caranya pada file csf.conf bagian Reporting Settings isi value LF_ALERT_TO = "[email protected]"Maka setiap ada report akan dikirim ke email anda beserta informasi detailnya.

Untuk Dedicated server, anda dapat memodifikasi bagian Process Tracking dengan menambahkan pengecualian untuk proses / user / perintah tertentu pada file csf.pignore sehingga email anda tidak dibanjiri oleh report CSF. Formatnya :

# exe:/full/path/to/file
# user:username
# cmd:command line

Mungkin sampai disini dulu, anda dapat memodifikasi konfigurasi lebih lanjut seperti mengedit template report yang dikirimkan ke email atau untuk mengamati file / folder tertentu sehingga anda dapat segera mendapatkan inforamsi jika ada orang yang berhasil menyusup dan mengupload / mengubah file tersebut. Semoga berguna.

Source : http://configserver.com/cp/csf.html