Pengantar
CSF adalah firewall Stateful Packet Inspection (SPI), aplikasi Login/Deteksi Intrusi dan Keamanan untuk server Linux.
t terdiri dari firewall itu sendiri (CSF) yang komprehensif, lugas, mudah, dan fleksibel untuk dikonfigurasi.
Ia juga memiliki Login Failure Daemon (LFD) yang melengkapi CSF dengan sempurna. LFD ini berjalan sepanjang waktu dan secara berkala (setiap X detik) memindai entri file log terbaru untuk upaya login terhadap server Anda yang terus-menerus gagal dalam waktu singkat. Upaya semacam itu sering disebut "Serangan brute-force" dan proses daemon merespons dengan sangat cepat terhadap pola tersebut dan memblokir IP yang menyinggung dengan cepat.
Instal CSF di CentOS 8
Seperti yang diharapkan, CSF tidak tersedia di repositori CentOS resmi. Namun, dimungkinkan untuk menginstalnya karena sangat terkait dengan Perl dan bahasa ini didukung di CentOS 8.
Jadi, buka sesi terminal dan perbarui CentOS 8
sudo dnf install
Pada akhirnya, instal Perl modul dasar dan alat lain yang akan kita gunakan nanti seperti vim
sudo dnf install @perl curl tar vim
Di akhir instalasi, Anda harus menginstal modul Perl tambahan lainnya di CentOS 8
sudo dnf install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch perl-GDGraph
Anda dapat memverifikasi instalasi Perl dengan menjalankan perintah:
[root@unixcop ~]# perl -v
This is perl 5, version 26, subversion 3 (v5.26.3) built for x86_64-linux-thread-multi
(with 55 registered patches, see perl -V for more detail)
Copyright 1987-2018, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
[root@unixcop ~]#
Sekarang Anda dapat mengunduh CSF menggunakan perintah curl
[root@unixcop ~]# curl -O https://download.configserver.com/csf.tgz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2244k 100 2244k 0 0 655k 0 0:00:03 0:00:03 --:--:-- 655k
[root@unixcop ~]#
Seperti yang Anda lihat, ini cukup ringan. Sekarang buka ritsletingnya.
tar xvfz csf.tgz
Jadi Akses folder yang dihasilkan, dan di dalamnya, jalankan skrip instalasi yang disebut instal .sh
cd csf
sudo sh install.sh
Ini akan memulai proses instalasi dan konfigurasi default akan diterapkan.
Mengonfigurasi CSF di CentOS 8
Saat diinstal, CFS menerapkan beberapa pengaturan default yang sangat baik, namun, masing-masing dari kita memiliki beberapa penyesuaian yang harus dilakukan.
Berkasnya adalah /etc/csf/csf.conf yang harus dicadangkan sebelum mengedit untuk memastikannya.
sudo vim /etc/csf/csf.conf
Dan dalam file ini, Anda akan menemukan banyak parameter yang terdokumentasi dengan baik. Dan salah satu bagian terpenting adalah yang mencantumkan port terbuka untuk koneksi masuk dan keluar.
Dalam file yang sama ini Anda dapat mengaktifkan atau menonaktifkan CSF dengan mengubah nilai berikut:
TESTING = "1"
Untuk
TESTING = "0"
Dengan cara ini Anda menunjukkan kepada program bahwa program siap untuk dimulai.
Simpan perubahan dan tutup file.
Sekarang Anda dapat memulai layanan CSF.
sudo systemctl enable --now csf
Juga disarankan untuk memeriksa status layanan untuk melihat apakah itu berjalan dengan benar.
[root@unixcop csf]# sudo systemctl enable --now csf
[root@unixcop csf]# sudo systemctl status csf
● csf.service - ConfigServer Firewall & Security - csf
Loaded: loaded (/usr/lib/systemd/system/csf.service; enabled; vendor preset: disabled)
Active: active (exited) since Mon 2021-07-26 17:43:04 EET; 17s ago
Process: 20176 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
Main PID: 20176 (code=exited, status=0/SUCCESS)
Jul 26 17:43:03 unixcop csf[20176]: ACCEPT all opt in * out lo ::/0 -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPOUT all opt in * out !lo ::/0 -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPIN all opt in !lo out * ::/0 -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv4)
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv6)
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT all opt -- in * out !lo 0.0.0.0/0 -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT all opt -- in !lo out * 0.0.0.0/0 -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT all opt in * out !lo ::/0 -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT all opt in !lo out * ::/0 -> ::/0
Jul 26 17:43:04 unixcop systemd[1]: Started ConfigServer Firewall & Security - csf.
[root@unixcop csf]#
Anda juga dapat memeriksa port yang terbuka saat CSF berjalan.
[root@unixcop csf]# sudo csf -p
Ports listening for external connections and the executables running behind them:
Port/Proto Open Conn PID/User Command Line Executable
22/tcp 4/6 1 (910/root) /usr/sbin/sshd -D -oCiphers=aes256-g... /usr/sbin/sshd
323/udp -/- - (853/chrony) /usr/sbin/chronyd /usr/sbin/chronyd
[root@unixcop csf]#
Aktifkan UI di CSF Firewall di CentOS
CSF Firewall hadir dengan UI mandiri. Ini dinonaktifkan secara default. Pada CentOS, instal persyaratan berikut yum install Perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket6
yum install perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket
Edit file konfigurasi CSF
vim /etc/csf/csf.conf
Ganti UI =“0” dengan UI =“1”
Ubah pengaturan berikut sesuai kebutuhan.
UI_PORT = "6666"
UI_USER = "username"
UI_PASS = "password"
Secara Default, hanya IP yang masuk daftar putih yang dapat mengakses UI, untuk memasukkan IP Anda ke daftar putih, jalankan
echo "YOUR_IP_ADDR" >> /etc/csf/ui/ui.allow
Jika Anda ingin mengizinkan CSF UI dari semua alamat IP, setel UI_ALLOW ke 0 di csf.conf
UI_ALLOW = "0"
CSF menggunakan SSL yang ditandatangani sendiri, jika Anda memiliki sertifikat SSL, Anda dapat menggunakannya. Sertifikat SSL tersedia di folder
/etc/csf/ui/
Untuk menggunakan LetsEncrypt Free SSL certificate untuk CSF UI, saya menyetel symlink ke ssl cert.
cd /etc/csf/ui
mv server.key server.key.old
mv server.crt server.crt.old
ln -s /etc/letsencrypt/live/DOMAIN/fullchain.pem server.crt
ln -s /etc/letsencrypt/live/DOMAIN/privkey.pem server.key
Sekarang mulai ulang CSF dan LDF
systemctl restart lfd
systemctl restart csf
Ini akan meminta otentikasi pengguna terlebih dahulu. Setelah berhasil login, Anda akan menemukan layar seperti di bawah ini.
Kesimpulan
Jadi, Anda telah mempelajari cara menginstal Config Server Firewall di CentOS 8 Seperti yang Anda lihat, prosesnya tidak rumit tetapi memerlukan beberapa langkah tambahan untuk menyelesaikan prosesnya.