CSF (ConfigServer Security & Firwall) merupakan solusi firewall yang efektif untuk meningkatkan keamanan server dan jaringan Anda. CSF sering diinstall sebagai aplikasi tambahan pada server WHM/cPanel, namun juga dapat diinstall di server mandiri (tanpa panel).
Install CSF #
Install perl terlebih dahulu.
On rpm based systems
yum install perl-libwww-perl perl-LWP-Protocol-https perl-GDGraph perl-Math-BigInt perl-CPAN
On APT based systems:
apt-get install libwww-perl liblwp-protocol-https-perl libgd-graph-perl
Selanjutnya install csf dengan perintah
cd /usr/src
rm -fv csf.tgz
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
Configure CSF #
Edit file /etc/csf/csf.conf
lalu ubah nilai testing menjadi 0
TESTING = "0"
Selanjutnya edit beberapa konfig berikut ini.
RESTRICT_SYSLOG = "3"
SMTP_BLOCK = "1"
SYSLOG_CHECK = "300"
PT_ALL_USERS = "1"
Edit konfig ICMP_IN
dan ICMP_IN
untuk mengizinkan atau menolak permintaan ping ke dalam atau keluar server. Nilai 0 berarti menolak permintaan icmp.
ICMP_IN = "0"
ICMP_OUT = "0"
Edit nilai CONNLIMIT
untuk menentukan jumlah koneksi bersamaan yang diijinkan ke server pada port tertentu.
Misalnya untuk mengatur 50 koneksi bersamaan pada port 80 ( http ), dan tiga koneksi bersamaan lainnya di port 22 ( ssh ).
CONNLIMIT = "22;3;80;50"
Edit PORTFLOOD
untuk membatasi jumlah koneksi per alamat IP dengan interval waktu tertentu.
Contoh untuk membatasi IP selama 3 detik jika lebih dari 20 koneksi telah dibuat pada port 80 dan 443 menggunakan protokol TCP
PORTFLOOD = "80;tcp;20;5,443;tcp;20;5"
Selajutnya setting DENY_IP_LIMIT
untuk melimit berapa banyak alamat IP yang dapat diblokir oleh CSF.
DENY_IP_LIMIT = "100"
Setting LF_SCRIPT_ALERT
dan LF_SCRIPT_LIMIT
untuk mengaktifkan proteksi spam
LF_SCRIPT_ALERT = "1"
LF_SCRIPT_LIMIT = "100"
Dengan konfigurasi tersebut Anda telah mengatur jumlah pengiriman email yang diizinkan dalam satu kali pengiriman menjadi 100 email per jam.
Edit konfig LF_DIRWATCH
untuk memberi tahu ketika ada file yang mencurigakan ditemukan di salah satu direktori /tmp
LF_DIRWATCH = "3600"
LF_DIRWATCH_DISABLE = "1"
Opsi LF_DIRWATCH_DISABLE
akan menghapus file mencurigakan dan mengarsipnya ke tujuan /var/lib/suspicious.tar
Edit konfigurasi PT_USERRSS
untuk menghentikan proses user yang melebihi batas memori (MB) yang telah ditentukan. Untuk mengabaikan proses tertentu
gunakan csf.pignore
.
PT_USERRSS = "512"
PT_USERKILL = "1"
Edit konfigurasi PT_USERTIME
untuk menghentikan proses user yang melebihi batas waktu (second) yang telah ditentukan. Untuk mengabaikan proses tertentu
gunakan csf.pignore
.
PT_USERTIME = "1800"
PT_USERKILL = "1"
Edit konfigurasi PS_INTERVAL
untuk memblokir IP yang melakukan aktivitas port scan.
PS_INTERVAL = "3600"
PS_LIMIT = "10"
PS_PORTS = "0:65535,ICMP"
PS_PERMANENT = "0"
PS_BLOCK_TIME = "3600"
Edit konfigurasi LF_BIND
untuk memblokir IP yang melakukan denied requests
secara berulang pada service DNS (BIND).
LF_BIND = "0"
LF_BIND_PERM = "3600"
Restart CSF dan LFD untuk menerapkan perubahan.
csf -ra
Install CSF Web UI #
Untuk mengaktifkan Web UI CSF, Anda perlu mengedit file /etc/csf/csf.conf
seperti berikut.
UI = "1"
UI_PORT = "8080"
UI_IP = ""
UI_USER = "username"
UI_PASS = "password"
Ganti UI_USER
dan UI_PASS
dengan username dan password yang kuat. Lalu tambahkan port yang digunakan untuk akses Web UI ke TCP_IN
TCP_IN = "20,21,22,25,53,853,80,110,143,443,465,587,993,995,8080"
Selanjutnya tambahkan IP address ke /etc/csf/ui/ui.allow
agar dapat mengakses Web UI CSF.
nano /etc/csf/ui/ui.allow
192.168.100.132
Restart CSF dan LFD untuk menerapkan perubahan.
csf -ra
Kemudian akses Web UI CSF menggunakan https://IP:8080 dan masukan username dan password yang telah ditentukan.