ConfigServer Firewall (CSF) adalah Firewall untuk server Linux dan sistem BSD untuk mengontrol lalu lintas masuk dan keluar. Sebelum kita membahas detail spesifik tentang CSF, mari kita pahami apa itu firewall dan cara kerjanya.
Firewall bertindak sebagai perisai yang melindungi sistem dari serangan luar. Beberapa di antaranya adalah firewall stateful, gateway level sirkuit, firewall pemfilteran UDP/ICMP, atau filter lapisan aplikasi.
Firewall dilengkapi dengan seperangkat aturan untuk menyaring lalu lintas masuk dan keluar. Dan tergantung pada jenis Firewall yang Anda gunakan, itu memutuskan apakah IP diizinkan untuk mengakses jaringan atau tidak. Daftar aturan ditentukan untuk sistem tertentu, dan firewall memfilter lalu lintas sesuai aturan.
ConfigServer Firewall (CSF) adalah salah satu firewall open-source yang paling banyak digunakan di server Linux. CSF hadir dengan daftar fitur yang dapat digunakan untuk mengonfigurasi aturan. Oleh karena itu sangat kuat dan mudah digunakan pada saat yang sama.
Prasyarat
Untuk menginstal dan mengkonfigurasi CSF di Debian 11, Anda harus memiliki:
- Server yang menjalankan Debian 11 dan sistem Anda harus terhubung ke internet.
- Akses root ke server.
Memperbarui Sistem Anda
Sebelum menginstal ConfigServer Firewall, Anda harus memperbarui sistem Anda. Jalankan perintah di bawah ini untuk memperbarui sistem Anda.
sudo apt update
Setelah update selesai, jalankan perintah berikut untuk menginstal dependensi yang diperlukan.
sudo apt install libio-socket-inet6-perl libsocket6-perl -y
sudo apt install sendmail dnsutils unzip libio-socket-ssl-perl -y
sudo apt install libcrypt-ssleay-perl git perl iptables libnet-libidn-perl -y
Jika Anda memiliki versi CSF sebelumnya yang terinstal di sistem Anda, jalankan perintah berikut untuk mencopot pemasangannya terlebih dahulu. Karena Debian 11 menggunakan Perl versi baru, penginstalan CSF dapat menyebabkan konflik dengan penginstalan CSF yang ada.
cd /etc/csf && sh uninstall.sh
Jika Anda menggunakan skrip konfigurasi firewall lain seperti UFW, Anda harus mematikannya sebelum melanjutkan.
sudo ufw disable
Menginstal Firewall CSF di Debian 11
Sekarang Anda telah menginstal semua prasyarat yang diperlukan, mari unduh dan instal firewall CSF.
Repositori Debian 11 tidak berisi paket CSF. Oleh karena itu, Anda perlu mengunduh firewall ConfigServer versi terbaru dari situs resminya.
Untuk melakukannya, jalankan perintah berikut.
wget http://download.configserver.com/csf.tgz
Sekarang jalankan perintah di bawah ini untuk mengekstrak file yang diunduh.
sudo tar -xvzf csf.tgz
Setelah Anda mengekstrak file, instal CSF menggunakan perintah berikut.
cd csf && sh install.sh
Setelah instalasi selesai, firewall sekarang harus diinstal. Untuk memulai firewall CSF, jalankan perintah berikut.
sudo systemctl start csf
Jalankan perintah di bawah ini untuk memastikan semuanya baik-baik saja.
perl /usr/local/csf/bin/csftest.pl
Anda akan mendapatkan output seperti yang ditunjukkan di bawah ini. Keluaran ini mengonfirmasi bahwa CSF aktif dan berjalan.
Untuk mengaktifkan firewall CSF untuk memulai saat boot, jalankan perintah berikut.
sudo systemctl enable csf
Anda dapat memeriksa status CSF menggunakan perintah di bawah ini.
sudo systemctl status csf
Output ini mengonfirmasi bahwa CSF aktif dan berjalan. Sekarang mari kita konfigurasikan firewall ini.
Contoh keluaran:
Mengonfigurasi Firewall CSF di Debian 11
Setelah Anda menginstal firewall CSF, aturan default akan aktif yang disertakan dengan file konfigurasi /etc/csf/csf.conf
Anda harus meninjau file konfigurasi ini untuk memastikan bahwa itu dikonfigurasi sesuai kebutuhan Anda. Dalam file ini, Anda dapat melihat semua aturan default yang aktif dari perspektif sistem Anda. Mari kita lihat lebih dekat beberapa di antaranya.
sudo nano /etc/csf/csf.conf
Semakin sedikit jumlah port yang terbuka, semakin aman sistemnya. Tetapi Anda harus selalu membuka beberapa port umum. Anda dapat melihat semua port yang terbuka secara default, dalam file csf.conf seperti yang ditunjukkan di bawah ini.
Seperti yang Anda lihat di file konfigurasi, jika Anda ingin mengizinkan/memblokir port apa pun, Anda harus menambahkan/menghapus nomor port masing-masing dalam daftar.
Misalnya, jika Anda ingin memblokir port 80, port tersebut harus dihapus dari daftar, seperti yang ditunjukkan di bawah ini.
Jika Anda menggunakan IPv6, Anda juga harus memperbaruinya di file konfigurasi karena sebagian besar serangan saat ini dilakukan melalui protokol IPv6. Anda harus mengonfigurasi TCP6_IN, TCP6_OUT seperti yang telah kami konfigurasikan untuk port IPv4 di atas.
Contoh keluaran:
Sekarang mari kita konfigurasikan pengaturan CONNLIMIT. CONNLIMIT adalah fitur keamanan di CSF yang memungkinkan Anda membatasi jumlah koneksi jarak jauh secara bersamaan pada port tertentu. Ini membantu dalam mengurangi risiko serangan DoS/DDoS.
Misalnya, jika Anda ingin membatasi IP apa pun dengan tidak lebih dari 3 koneksi serentak, Anda harus memperbaruinya seperti yang ditunjukkan di bawah ini. Pengaturan ini akan mengizinkan hanya 3 koneksi bersamaan pada port 22 dan 3 koneksi bersamaan pada port 443.
Selanjutnya, mari kita konfigurasikan pengaturan PORTFLOOD. Opsi ini memungkinkan kami untuk mengonfigurasi jumlah maksimum permintaan koneksi yang diizinkan pada port dalam jangka waktu tertentu.
Misalnya, jika Anda ingin memblokir IP apa pun jika lebih dari 3 koneksi dibuat pada port 443 menggunakan protokol TCP dalam waktu 60 detik, Anda harus memperbaruinya seperti yang ditunjukkan di bawah ini. Blok akan otomatis dihapus setelah jangka waktu 60 detik berakhir sejak koneksi terakhir.
Fitur paling dasar dari firewall apa pun adalah memblokir dan mengizinkan alamat IP. Anda dapat menambahkan alamat IP yang ingin Anda blokir dengan menambahkannya secara manual di file csf.deny atau Anda dapat menambahkan seluruh rentang IP di file csf.deny.
Misalnya, Anda dapat memblokir semua rentang IP 192.168.1.0/24.
Atau
Anda dapat memblokir satu IP 192.168.2.0 dengan menambahkannya di file csf.deny seperti yang ditunjukkan di bawah ini.
Buka file csf.deny dengan perintah berikut.
sudo nano /etc/csf/csf.deny
Tambahkan baris berikut ke bagian bawah file. Satu baris pada satu waktu.
192.168.2.0
192.168.1.0/24
Contoh keluaran:
Setelah selesai, simpan dan tutup file dengan menekan CTRL+X , K , dan Masuk .
Kebalikan dari file csf.deny, file csf.allow digunakan untuk mengecualikan IP atau rentang IP dari semua filter. Perhatikan bahwa meskipun Anda telah menambahkan IP ke file csf.deny, alamat IP yang diblokir tetap diizinkan untuk mengakses server Anda dengan menambahkannya di file csf.allow.
sudo nano /etc/csf/csf.allow
CSF menawarkan berbagai opsi untuk menyiapkan firewall Anda sendiri, yang berada di luar cakupan tutorial ini. Anda dapat melihat dokumentasi ConfigServer tentang pengaturan dan cara kerjanya.
Setelah Anda selesai memperbarui semua pengaturan yang diperlukan, simpan dan tutup file csf.conf dengan menekan CTRL+X , K , dan Masuk .
CSF juga menawarkan fitur mengabaikan alamat IP dari filter apa pun. Tidak seperti mengizinkan alamat IP dalam file csf.allow, Anda tidak dapat mengabaikan alamat IP jika tercantum dalam file csf.deny.
sudo nano /etc/csf/csf.ignore
Sekarang setelah Anda mengonfigurasi semua pengaturan di file csf.conf, sekarang saatnya memperbarui aturan untuk menerapkan perubahan.
Untuk melakukannya, jalankan perintah berikut.
sudo csf -r
Setelah eksekusi perintah di atas selesai, Anda akan dapat melihat pesan seperti yang ditunjukkan pada tangkapan layar berikut. Jika tidak ada pesan kesalahan yang ditampilkan, selamat! Konfigurasi firewall server Anda sekarang telah diperbarui dan siap digunakan.
Kesimpulan
Dalam tutorial ini, Anda telah mempelajari cara menginstal ConfigServer Security &Firewall (CSF) di server Debian 11. Anda juga telah mempelajari cara membuat aturan firewall, menambahkan IP ke daftar yang diizinkan dan yang diblokir menggunakan file konfigurasi CSF.
Jika Anda mengalami masalah, Anda selalu dapat merujuk dokumentasi ConfigServer Firewall untuk informasi lebih lanjut.