Instal dan Konfigurasi ConfigServer Security & Firewall (CSF) di Linux


Jika Anda melihat lowongan pekerjaan terkait TI di mana pun, Anda akan melihat permintaan yang stabil terhadap profesional keamanan. Hal ini tidak hanya berarti bahwa keamanan siber merupakan bidang studi yang menarik, namun juga sangat menguntungkan.

Oleh karena itu, dalam artikel ini kami akan menjelaskan cara memasang dan mengonfigurasi ConfigServer Security & Firewall (juga dikenal sebagai CSF), rangkaian keamanan lengkap untuk Linux, dan berbagi beberapa kasus penggunaan umum. Anda kemudian dapat menggunakan CSF sebagai firewall dan sistem deteksi kegagalan intrusi/login untuk memperkuat server yang menjadi tanggung jawab Anda.

Tanpa basa-basi lagi, mari kita mulai.

Menginstal dan Mengonfigurasi CSF di Linux

Untuk memulai, harap perhatikan bahwa Perl dan libwww merupakan prasyarat untuk menginstal CSF pada distribusi mana pun yang didukung (RHEL dan CentOS, openSUSE, Debian, dan Ubuntu). Karena seharusnya tersedia secara default, Anda tidak perlu melakukan tindakan apa pun kecuali salah satu langkah berikut menghasilkan kesalahan fatal (dalam hal ini, gunakan sistem manajemen paket untuk menginstal dependensi yang hilang).

yum install perl-libwww-perl
apt install libwww-perl

Langkah 1 – Unduh CSF

cd /usr/src
wget https://download.configserver.com/csf.tgz

Langkah 2 – Ekstrak tarball CSF

tar xzf csf.tgz
cd csf

Langkah 3 – Jalankan Skrip Instalasi CSF

Bagian proses ini akan memeriksa apakah semua dependensi telah terinstal, membuat struktur direktori dan file yang diperlukan untuk antarmuka web, mendeteksi port yang sedang terbuka, dan mengingatkan Anda untuk memulai ulang csf dan lfd< daemon setelah Anda selesai dengan konfigurasi awal.

sh install.sh
perl /usr/local/csf/bin/csftest.pl

Output yang diharapkan dari perintah di atas adalah sebagai berikut:

Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK

RESULT: csf should function on this server

Langkah 4: Nonaktifkan Firewall dan Konfigurasi CSF

Nonaktifkan firewalld jika menjalankan dan konfigurasikan CSF.

systemctl stop firewalld
systemctl disable firewalld

Ubah TESTING="1" menjadi TESTING="0" (jika tidak, daemon lfd akan gagal dijalankan) dan daftar diperbolehkan masuk dan keluar port sebagai daftar yang dipisahkan koma (masing-masing TCP_IN dan TCP_OUT) di /etc/csf/csf.conf seperti yang ditunjukkan pada output di bawah ini :

Testing flag - enables a CRON job that clears iptables incase of
configuration problems when you start csf. This should be enabled until you
are sure that the firewall works - i.e. incase you get locked out of your
server! Then do remember to set it to 0 and restart csf when you're sure
everything is OK. Stopping csf will remove the line from /etc/crontab
#
lfd will not start while this is enabled
TESTING = "0"

Allow incoming TCP ports
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"

Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"

Setelah Anda puas dengan konfigurasinya, simpan perubahannya dan kembali ke baris perintah.

Langkah 5 – Mulai ulang dan Uji CSF

systemctl restart {csf,lfd}
systemctl enable {csf,lfd}
systemctl is-active {csf,lfd}
csf -v

Pada titik ini kami siap untuk mulai menyiapkan aturan firewall dan deteksi intrusi seperti yang dibahas selanjutnya.

Menyiapkan CSF dan Aturan Deteksi Intrusi

Pertama, Anda perlu memeriksa aturan firewall saat ini sebagai berikut:

csf -l

Anda juga dapat menghentikannya atau memuat ulang dengan:

csf -f
csf -r

masing-masing. Pastikan untuk mengingat opsi-opsi ini – Anda akan memerlukannya seiring berjalannya waktu, terutama untuk memeriksa setelah melakukan perubahan dan memulai ulang csf dan lfd.

Contoh 1 – Mengizinkan dan Melarang Alamat IP

Untuk mengizinkan koneksi masuk dari 192.168.0.10.

csf -a 192.168.0.10

Demikian pula, Anda dapat menolak koneksi yang berasal dari 192.168.0.11.

csf -d 192.168.0.11

Anda dapat menghapus setiap aturan di atas jika Anda ingin melakukannya.

csf -ar 192.168.0.10
csf -dr 192.168.0.11

Perhatikan bagaimana penggunaan -ar atau -dr di atas menghilangkan aturan izinkan dan tolak yang ada terkait dengan alamat IP tertentu.

Contoh 2 – Membatasi Koneksi Masuk berdasarkan Sumber

Tergantung pada tujuan penggunaan server Anda, Anda mungkin ingin membatasi koneksi masuk ke nomor aman berdasarkan port. Untuk melakukannya, buka /etc/csf/csf.conf dan cari CONNLIMIT. Anda dapat menentukan beberapa port; pasangan koneksi dipisahkan dengan koma. Misalnya,

CONNLIMIT = "22;2,80;10"

hanya akan mengizinkan 2 dan 10 koneksi masuk dari sumber yang sama ke port TCP masing-masing 22 dan 80.

Contoh 3 – Mengirim Peringatan melalui Email

Ada beberapa jenis peringatan yang bisa Anda pilih. Cari setelan EMAIL_ALERT di /etc/csf/csf.conf dan pastikan setelan disetel ke "1" untuk menerima lansiran terkait. Misalnya,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

akan menyebabkan peringatan dikirim ke alamat yang ditentukan di LF_ALERT_TO setiap kali seseorang berhasil masuk melalui SSH atau beralih ke akun lain menggunakan perintah su.

Opsi dan Penggunaan Konfigurasi CSF

Opsi berikut ini digunakan untuk mengubah dan mengontrol konfigurasi csf. Semua file konfigurasi csf terletak di direktori /etc/csf. Jika Anda memodifikasi salah satu file berikut, Anda perlu memulai ulang daemon csf untuk melakukan perubahan.

  • csf.conf : File konfigurasi utama untuk mengendalikan CSF.
  • csf.allow : Daftar alamat IP dan CIDR yang diizinkan di firewall.
  • csf.deny : Daftar alamat IP dan CIDR yang ditolak di firewall.
  • csf.ignore : Daftar alamat IP dan CIDR yang diabaikan di firewall.
  • csf.*ignore : Daftar berbagai file pengabaian pengguna, IP.

Hapus Firewall CSF

Jika Anda ingin menghapus firewall CSF sepenuhnya, jalankan saja skrip berikut yang terletak di direktori /etc/csf/uninstall.sh.

/etc/csf/uninstall.sh

Perintah di atas akan menghapus firewall CSF sepenuhnya dengan semua file dan folder.

Ringkasan

Pada artikel ini kami telah menjelaskan cara memasang, mengonfigurasi, dan menggunakan CSF sebagai firewall dan sistem deteksi intrusi. Harap perhatikan bahwa fitur lainnya diuraikan di csf.conf.

Misalnya, Jika Anda berkecimpung dalam bisnis web hosting, Anda dapat mengintegrasikan CSF dengan solusi manajemen seperti Cpanel, WHM, atau Webmin yang terkenal.

Apakah Anda memiliki pertanyaan atau komentar tentang artikel ini? Jangan ragu untuk mengirimkan pesan kepada kami menggunakan formulir di bawah ini. Kami menantikan kabar dari Anda!