GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie die Config Server Firewall (CSF) unter Rocky Linux 8

CSF, auch "Config Server Firewall" genannt ist eine Stateful Packet Inspection (SPI)-Firewall für Linux-Betriebssysteme. Es bietet grundlegende Firewall-Funktionalität sowie andere Sicherheitsfunktionen, einschließlich Anmeldung, Eindringungs- und Überschwemmungserkennung. Sie können CSF auch mit DirectAdmin, cPanel und Webmin integrieren. Mit CSF können Sie viele Arten von Angriffen wie Port-Scans, SYN-Floods und Login-Brute-Force-Angriffe auf viele Dienste erkennen.

In diesem Beitrag zeigen wir Ihnen, wie Sie die CSF-Firewall auf Rocky Linux 8 installieren und konfigurieren.

Voraussetzungen

  • Ein Server, auf dem Rocky Linux 8 auf der Atlantic.Net Cloud Platform ausgeführt wird
  • Ein auf Ihrem Server konfiguriertes Root-Passwort

Schritt 1 – Atlantic.Net Cloud-Server erstellen

Melden Sie sich zunächst bei Ihrem Atlantic.Net Cloud Server an. Erstellen Sie einen neuen Server und wählen Sie Rocky Linux 8 als Betriebssystem mit mindestens 2 GB RAM. Stellen Sie über SSH eine Verbindung zu Ihrem Cloud-Server her und melden Sie sich mit den oben auf der Seite hervorgehobenen Anmeldeinformationen an.

Sobald Sie sich bei Ihrem Server angemeldet haben, führen Sie den folgenden Befehl aus, um Ihr Basissystem mit den neuesten verfügbaren Paketen zu aktualisieren.

dnf update -y

Schritt 2 – CSF unter Rocky Linux 8 installieren

CSF ist in Perl geschrieben, daher müssen Sie alle erforderlichen Perl-Module auf Ihrem System installieren. Sie können alle mit dem folgenden Befehl installieren:

dnf install @perl perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch -y

Nachdem Sie alle erforderlichen Module installiert haben, laden Sie die neueste Version von CSF mit dem folgenden Befehl herunter:

wget https://download.configserver.com/csf.tgz

Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:

tar xzf csf.tgz

Navigieren Sie als Nächstes zum extrahierten Verzeichnis und installieren Sie CSF mit dem folgenden Befehl:

cd csf
sh install.sh

Sobald CSF installiert ist, erhalten Sie die folgende Ausgabe:

Don't forget to:
1. Configure the following options in the csf configuration to suite your server: TCP_*, UDP_*
2. Restart csf and lfd
3. Set TESTING to 0 once you're happy with the firewall, lfd will not run until you do so

Adding current SSH session IP address to the csf whitelist in csf.allow:
Adding 27.61.171.115 to csf.allow only while in TESTING mode (not iptables ACCEPT)
*WARNING* TESTING mode is enabled - do not forget to disable it in the configuration
'lfd.service' -> '/usr/lib/systemd/system/lfd.service'
'csf.service' -> '/usr/lib/systemd/system/csf.service'
Created symlink /etc/systemd/system/multi-user.target.wants/csf.service → /usr/lib/systemd/system/csf.service.
Created symlink /etc/systemd/system/multi-user.target.wants/lfd.service → /usr/lib/systemd/system/lfd.service.
Created symlink /etc/systemd/system/firewalld.service → /dev/null.
'/etc/csf/csfwebmin.tgz' -> '/usr/local/csf/csfwebmin.tgz'

Installation Completed

Überprüfen Sie als Nächstes, ob alle erforderlichen iptables-Module verfügbar sind.

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

Wenn alles korrekt eingerichtet ist, erhalten Sie folgende Ausgabe:

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

Sie können jetzt die CSF-Version mit dem folgenden Befehl überprüfen:

csf -v

Sie erhalten die folgende Ausgabe:

csf: v14.12 (generic)
*WARNING* TESTING mode is enabled - do not forget to disable it in the configuration

Schritt 3 – CSF konfigurieren

nano /etc/csf/csf.conf

Ändern Sie TESTING =„1“ in TESTING =„0“ und fügen Sie zulässige eingehende und ausgehende Ports gemäß Ihren Anforderungen hinzu:

 
# 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"

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und starten und aktivieren Sie dann die CSF- und LFD-Dienste:

systemctl start csf lfd
systemctl enable csf lfd

Sie können den Status von CSF mit dem folgenden Befehl überprüfen:

systemctl status csf

Sie sollten die folgende Ausgabe sehen:

● csf.service - ConfigServer Firewall & Security - csf
   Loaded: loaded (/usr/lib/systemd/system/csf.service; enabled; vendor preset: disabled)
   Active: active (exited) since Wed 2021-11-17 08:41:05 UTC; 3s ago
  Process: 13236 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
 Main PID: 13236 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 11411)
   Memory: 0B
   CGroup: /system.slice/csf.service

Nov 17 08:41:05 rockylinux csf[13236]: ACCEPT  all opt    in * out lo  ::/0  -> ::/0
Nov 17 08:41:05 rockylinux csf[13236]: LOGDROPOUT  all opt    in * out !lo  ::/0  -> ::/0
Nov 17 08:41:05 rockylinux csf[13236]: LOGDROPIN  all opt    in !lo out *  ::/0  -> ::/0
Nov 17 08:41:05 rockylinux csf[13236]: csf: FASTSTART loading DNS (IPv4)
Nov 17 08:41:05 rockylinux csf[13236]: csf: FASTSTART loading DNS (IPv6)
Nov 17 08:41:05 rockylinux csf[13236]: LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
Nov 17 08:41:05 rockylinux csf[13236]: LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
Nov 17 08:41:05 rockylinux csf[13236]: LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
Nov 17 08:41:05 rockylinux csf[13236]: LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0
Nov 17 08:41:05 rockylinux systemd[1]: Started ConfigServer Firewall & Security - csf.

Sie können auch die offenen Ports überprüfen, wenn CSF ausgeführt wird, indem Sie den folgenden Befehl verwenden:

csf -p

Beispielausgabe:

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     (709/root)           /usr/sbin/sshd -D -oCiphers=aes256-g... /usr/sbin/sshd
80/tcp     4/6  -     (8954/root)          /usr/sbin/httpd -DFOREGROUND            /usr/sbin/httpd
80/tcp     4/6  -     (8957/apache)        /usr/sbin/httpd -DFOREGROUND            /usr/sbin/httpd
80/tcp     4/6  -     (8958/apache)        /usr/sbin/httpd -DFOREGROUND            /usr/sbin/httpd
80/tcp     4/6  -     (8959/apache)        /usr/sbin/httpd -DFOREGROUND            /usr/sbin/httpd
80/tcp     4/6  -     (9172/apache)        /usr/sbin/httpd -DFOREGROUND            /usr/sbin/httpd
323/udp    -/-  -     (552/chrony)         /usr/sbin/chronyd                       /usr/sbin/chronyd

Schritt 4 – Verwendung von CSF

Führen Sie den folgenden Befehl aus, um alle CSF-Regeln zu leeren:

csf -f

Um die CSF-Firewall neu zu laden, führen Sie den folgenden Befehl aus:

csf -r

Führen Sie den folgenden Befehl aus, um eingehende Verbindungen von der bestimmten IP zuzulassen:

csf -a remote-ip-address

Führen Sie den folgenden Befehl aus, um Verbindungen von der bestimmten IP abzulehnen:

csf -d remote-ip-address

Sie können auch die csf.deny bearbeiten und csf.allow Datei, um die Liste der erlaubten und verweigerten IPs auf der Firewall zu definieren.

Schritt 5 – CSF-Benutzeroberfläche aktivieren

CSF bietet auch eine webbasierte Schnittstelle zur Verwaltung der Firewall. Es ist standardmäßig deaktiviert.

Installieren Sie vor dem Aktivieren der CSF-Benutzeroberfläche die erforderlichen Module mit dem folgenden Befehl:

dnf install perl-IO-Socket-SSL perl-Net-SSLeay perl-IO-Socket-INET6 perl-Socket -y

Als nächstes bearbeiten Sie die CSF-Konfigurationsdatei:

nano /etc/csf/csf.conf

Aktivieren Sie die Benutzeroberfläche, definieren Sie den Listening-Port und legen Sie den Admin-Benutzernamen und das Passwort wie unten gezeigt fest:

# 1 to enable, 0 to disable web ui 
UI = "1"

# Set port for web UI. The default port is 6666, but
# I change this to 1025 to easy access. Default port create some issue
# with popular chrome and firefox browser (in my case) 

UI_PORT = "8080"

# Leave blank to bind to all IP addresses on the server 
UI_IP = ""

# Set username for authetnication 
UI_USER = "admin"

# Set a strong password for authetnication 
UI_PASS = "securepassword"

UI_ALLOW = "0"

Speichern und schließen Sie die Datei und starten Sie dann den CSF- und LFD-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart lfd
systemctl restart csf

Schritt 6 – Greifen Sie auf die CSF-Benutzeroberfläche zu

Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL https://your-server-ip:8080 auf die CSF-Benutzeroberfläche zu . Sie sollten die CSF-Anmeldeseite sehen:

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden Taste. Sie sollten die CSF-Weboberfläche auf dem folgenden Bildschirm sehen:

Schritt 7 – CSF-Firewall entfernen

Wenn Sie die CSF-Firewall vollständig von Ihrem Server entfernen möchten, führen Sie einfach das folgende Skript aus:

bash /etc/csf/uninstall.sh

Dadurch wird die CSF-Firewall mit allen Dateien, Verzeichnissen und Regeln entfernt, die von CSF erstellt wurden.

Schlussfolgerung

In der obigen Anleitung haben wir erklärt, wie man CSF und CSF UI auf Rocky Linux 8 installiert. Wir haben auch erklärt, wie man bestimmte IP-Adressen mit CSF sperrt und entbannt. Sie können jetzt CSF auf Ihrem Server implementieren und ihn vor verschiedenen Arten von Angriffen schützen. Probieren Sie es auf Ihrem VPS von Atlantic.Net aus!


Linux
  1. So installieren Sie die Config Server Firewall (CSF) unter Debian 11

  2. So installieren und konfigurieren Sie die CSF-Firewall unter Linux

  3. So installieren Sie Python 3.10 auf Rocky Linux 8

  4. Wie installiere ich die ConfigServer Firewall in Linux VPS?

  5. So installieren Sie den Virtualisierungs-Linux-Server

So installieren Sie Webmin unter Rocky Linux 8

So installieren Sie den LEMP-Stack unter Rocky Linux 8

So installieren Sie die neueste Nginx Mainline unter Rocky Linux 8

So installieren und konfigurieren Sie die CSF-Firewall für Linux

So installieren Sie Jenkins unter Rocky Linux 8

So installieren Sie Nginx unter Rocky Linux 9