Cara install dan konfigurasi CSF Firewall di Ubuntu, Debian dan CentOS lengkap dengan troubleshooting iptables
.
Install Perl module
CentOS/RHEL
yum install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch perl-GDGraph
Ubuntu/Debian
apt-get install libwww-perl liblwp-protocol-https-perl libgd-graph-perl
Download dan Ekstrak CSF
cd /usr/src
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
Install CSF
cd csf
sh install.sh
Konfigurasi CSF
nano /etc/csf/csf.conf
Atur baris sebagai berikut
TESTING = "0"
RESTRICT_SYSLOG = "3"
PERHATIAN!
Tambahkan port ke baris TCP_IN
jika ada custom port yang dibuat, misalnya port custom SSH, jika tidak ditambahkan, maka akan terblokir dan server tidak bisa diakses!
Operasional
Untuk start, stop dan cek status csf
bisa menggunakan systemd
systemctl start csf
systemctl status csf
systemctl stop csf
Pengaturan Block, Allow dan Ignore
Di CSF ada 3 opsi untuk mengatur IP yang diallow, block atau ignore (bypass)
-a
: allow/etc/csf/csf.allow
-d
: deny/etc/csf/csf.deny
/etc/csf/csf.ignore
Kita bisa atur IP melalui file konfigurasi CSF tersebut per baris ataupun melalui perintah csf
, contoh:
Allow
csf -a 192.68.0.1
Deny
csf -d 192.68.0.2
Ignore, edit dan tambahkan IP (perbaris) di file csf.ignore
nano /etc/csf/csf.ignore
Ignore maksudnya bypass firewall
Restart CSF
Setiap melakukan perubahan konfigurasi, CSF harus direstart, perintahnya
csf -r
Troubleshooting
Jika kalian menemui error
*WARNING* Unable to use FASTSTART as [/sbin/iptables-restore] is not executable or does not exist
Check lokasi instalasi iptables
whereis iptables
Di Ubuntu lokasinya ada di /etc/alternatives/ip6tables
, kita buat linknya ke binary filenya (di CentOS mungkin berbeda)
ln -s /etc/alternatives/ip6tables /sbin/ip6tables
ln -s /etc/alternatives/ip6tables-restore /sbin/ip6tables-restore
ls -s /etc/alternatives/ip6tables-save /sbin/ip6tables-save
ln -s /etc/alternatives/iptables-restore /sbin/iptables-restore
ln -s /etc/alternatives/iptables-save /sbin/iptables-save
Selesai, semoga bermanfaat.