Website-Suche

Installieren und konfigurieren Sie ConfigServer Security & Firewall (CSF) unter Linux


Wenn Sie sich irgendwo Stellenausschreibungen im IT-Bereich ansehen, werden Sie feststellen, dass eine stetige Nachfrage nach Sicherheitsexperten besteht. Dies bedeutet nicht nur, dass Cybersicherheit ein interessantes, sondern auch ein sehr lukratives Studienfach ist.

Vor diesem Hintergrund erklären wir in diesem Artikel, wie Sie ConfigServer Security & Firewall (auch kurz CSF genannt), eine vollständige Sicherheitssuite für, installieren und konfigurieren Linux und teilen Sie einige typische Anwendungsfälle mit. Anschließend können Sie CSF als Firewall und System zur Erkennung von Eindringlingen/Anmeldefehlern verwenden, um die Server, für die Sie verantwortlich sind, abzusichern.

Fangen wir ohne Umschweife an.

CSF unter Linux installieren und konfigurieren

Bitte beachten Sie zunächst, dass Perl und libwww eine Voraussetzung für die Installation von CSF auf einer der unterstützten Distributionen (RHEL) sind > und CentOS, openSUSE, Debian und Ubuntu). Da es standardmäßig verfügbar sein sollte, ist von Ihrer Seite keine Aktion erforderlich, es sei denn, einer der folgenden Schritte gibt einen schwerwiegenden Fehler zurück (in diesem Fall verwenden Sie das Paketverwaltungssystem, um die fehlenden Abhängigkeiten zu installieren).

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

Schritt 1 – CSF herunterladen

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

Schritt 2 – Extrahieren Sie den CSF-Tarball

tar xzf csf.tgz
cd csf

Schritt 3 – Führen Sie das CSF-Installationsskript aus

In diesem Teil des Prozesses wird überprüft, ob alle Abhängigkeiten installiert sind, die erforderlichen Verzeichnisstrukturen und Dateien für die Weboberfläche erstellt, aktuell offene Ports erkannt und Sie daran erinnert, csf und lfd< neu zu starten-Daemons, nachdem Sie mit der Erstkonfiguration fertig sind.

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

Die erwartete Ausgabe des obigen Befehls lautet wie folgt:

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

Schritt 4: Firewall deaktivieren und CSF konfigurieren

Deaktivieren Sie firewalld, wenn Sie CSF ausführen, und konfigurieren Sie es.

systemctl stop firewalld
systemctl disable firewalld

Ändern Sie TESTING="1" in TESTING="0" (andernfalls kann der lfd-Daemon nicht gestartet werden) und listen Sie die zulässigen eingehenden und ausgehenden Daten auf Ports als durch Kommas getrennte Liste (TCP_IN bzw. TCP_OUT) in /etc/csf/csf.conf, wie in der folgenden Ausgabe gezeigt :

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"

Wenn Sie mit der Konfiguration zufrieden sind, speichern Sie die Änderungen und kehren Sie zur Befehlszeile zurück.

Schritt 5 – CSF neu starten und testen

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

An diesem Punkt können wir mit der Einrichtung von Firewall- und Einbruchserkennungsregeln beginnen, wie im Folgenden erläutert.

Einrichten von CSF- und Intrusion Detection-Regeln

Zunächst sollten Sie die aktuellen Firewall-Regeln wie folgt überprüfen:

csf -l

Sie können sie auch stoppen oder neu laden mit:

csf -f
csf -r

jeweils. Denken Sie daran, sich diese Optionen zu merken – Sie werden sie im weiteren Verlauf benötigen, insbesondere um sie nach dem Vornehmen von Änderungen und dem Neustart von csf und lfd zu überprüfen.

Beispiel 1 – IP-Adressen zulassen und verbieten

Um eingehende Verbindungen von 192.168.0.10 zuzulassen.

csf -a 192.168.0.10

Ebenso können Sie Verbindungen ablehnen, die von 192.168.0.11 stammen.

csf -d 192.168.0.11

Sie können jede der oben genannten Regeln entfernen, wenn Sie dies wünschen.

csf -ar 192.168.0.10
csf -dr 192.168.0.11

Beachten Sie, dass die Verwendung von -ar oder -dr oben vorhandene Zulassungs- und Verweigerungsregeln entfernt, die einer bestimmten IP-Adresse zugeordnet sind.

Beispiel 2 – Eingehende Verbindungen nach Quelle einschränken

Abhängig vom Verwendungszweck Ihres Servers möchten Sie möglicherweise eingehende Verbindungen auf Portbasis auf eine sichere Anzahl beschränken. Öffnen Sie dazu /etc/csf/csf.conf und suchen Sie nach CONNLIMIT. Sie können mehrere Ports angeben; Verbindungspaare durch Kommas getrennt. Zum Beispiel,

CONNLIMIT = "22;2,80;10"

lässt nur 2 und 10 eingehende Verbindungen von derselben Quelle zu den TCP-Ports 22 bzw. 80 zu.

Beispiel 3 – Versenden von Benachrichtigungen per E-Mail

Es gibt mehrere Alarmtypen, die Sie auswählen können. Suchen Sie nach EMAIL_ALERT-Einstellungen in /etc/csf/csf.conf und stellen Sie sicher, dass sie auf "1" gesetzt sind, um die zugehörige Warnung zu erhalten. Zum Beispiel,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

bewirkt, dass jedes Mal, wenn sich jemand erfolgreich über SSH anmeldet oder mit dem Befehl su zu einem anderen Konto wechselt, eine Warnung an die in LF_ALERT_TO angegebene Adresse gesendet wird.

CSF-Konfigurationsoptionen und Verwendung

Die folgenden Optionen werden zum Ändern und Steuern der CSF-Konfiguration verwendet. Alle Konfigurationsdateien von csf befinden sich im Verzeichnis /etc/csf. Wenn Sie eine der folgenden Dateien ändern, müssen Sie den CSF-Daemon neu starten, um die Änderungen zu übernehmen.

  • csf.conf: Die Hauptkonfigurationsdatei zur Steuerung von CSF.
  • csf.allow: Die Liste der zulässigen IPs und CIDR-Adressen auf der Firewall.
  • csf.deny: Die Liste der verweigerten IPs und CIDR-Adressen auf der Firewall.
  • csf.ignore: Die Liste der ignorierten IPs und CIDR-Adressen in der Firewall.
  • csf.*ignore: Die Liste verschiedener Ignorierdateien von Benutzern und IPs.

Entfernen Sie die CSF-Firewall

Wenn Sie die CSF-Firewall vollständig entfernen möchten, führen Sie einfach das folgende Skript aus, das sich im Verzeichnis /etc/csf/uninstall.sh befindet.

/etc/csf/uninstall.sh

Der obige Befehl löscht die CSF-Firewall vollständig mit allen Dateien und Ordnern.

Zusammenfassung

In diesem Artikel haben wir erklärt, wie Sie CSF als Firewall- und Intrusion-Detection-System installieren, konfigurieren und verwenden. Bitte beachten Sie, dass weitere Funktionen in csf.conf beschrieben sind.

Wenn Sie beispielsweise im Webhosting-Geschäft tätig sind, können Sie CSF in Verwaltungslösungen wie Cpanel, WHM oder das bekannte Webmin integrieren.

Haben Sie Fragen oder Kommentare zu diesem Artikel? Senden Sie uns gerne eine Nachricht über das untenstehende Formular. Wir freuen uns von Ihnen zu hören!