Network Hardening

In der heutigen digitalisierten Welt ist Netzwerksicherheit von entscheidender Bedeutung. Cyberangriffe nehmen stetig zu, und sowohl kleine Unternehmen als auch große Organisationen müssen ihre Netzwerke schützen, um Datenverluste und Betriebsstörungen zu vermeiden. Network Hardening bezieht sich auf die Praxis, Netzwerksysteme zu härten und ihre Angriffsflächen zu minimieren. In diesem Blogbeitrag werde ich erläutern, wie man ein Linux-basiertes Netzwerk sichern kann, indem man grundlegende und fortgeschrittene Methoden des Network Hardening anwendet.


1. Firewall-Konfiguration

Die Firewall ist die erste Verteidigungslinie im Netzwerk. Linux-basierte Systeme bieten leistungsstarke Tools wie iptables oder firewalld, die zur Steuerung des ein- und ausgehenden Datenverkehrs verwendet werden können.

  • Iptables:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -P INPUT DROP

In diesem Beispiel wird der eingehende Datenverkehr für SSH (Port 22) und HTTP (Port 80) erlaubt, während der Rest blockiert wird.

Firewalld:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
  • Mit firewalld ist die Verwaltung von Firewall-Regeln ebenfalls einfach und unterstützt Zonen zur Verwaltung unterschiedlicher Netzwerkschnittstellen.

2. SSH-Härtung

SSH (Secure Shell) ist ein häufig genutzter Dienst, der jedoch auch ein beliebtes Ziel für Angreifer darstellt. Ein paar Schritte zur Härtung des SSH-Dienstes:

  • Passwort-Authentifizierung deaktivieren: Passwortbasierte Authentifizierung kann durch Brute-Force-Angriffe gefährdet sein. Es ist besser, auf schlüsselbasierte Authentifizierung umzustellen:
sudo nano /etc/ssh/sshd_config
# Folgende Zeile ändern:
PasswordAuthentication no

Root-Login deaktivieren: Es ist ratsam, den direkten SSH-Zugriff auf den Root-Benutzer zu verbieten:

PermitRootLogin no

Port ändern: Standardmäßig läuft SSH auf Port 22. Das Ändern dieses Ports kann automatisierte Angriffe erschweren:

Port 2222

3. Intrusion Detection und Prävention

Tools wie Fail2Ban oder Snort können eingesetzt werden, um verdächtige Aktivitäten zu überwachen und Angriffe zu verhindern.

  • Fail2Ban: Automatisiert das Blockieren von IP-Adressen nach mehreren fehlgeschlagenen Anmeldeversuchen.
sudo apt install fail2ban
sudo systemctl enable fail2ban

Anschließend kann eine Konfiguration für SSH erstellt werden, um wiederholte Anmeldeversuche zu überwachen und zu blockieren.

Snort: Ein leistungsstarkes Intrusion Detection System (IDS), das Angriffe in Echtzeit erkennt und darauf reagiert.

sudo apt install snort
  • Snort kann den Datenverkehr analysieren und verdächtige Aktivitäten aufspüren, indem es mit Signaturen arbeitet.

4. Netzwerkdienste minimieren

Ein fundamentales Prinzip des Network Hardening ist es, unnötige Dienste zu deaktivieren. Jedes zusätzliche laufende Programm stellt ein potenzielles Angriffsziel dar. Sie können eine Liste aller aktiven Dienste auf einem Linux-Server mit dem folgenden Befehl anzeigen:

sudo systemctl list-units --type=service

Deaktivieren Sie alle Dienste, die nicht benötigt werden, um die Angriffsfläche zu verringern:

sudo systemctl stop [service-name]
sudo systemctl disable [service-name]

5. Updates und Patching

Ein vernachlässigtes System wird schnell zum Ziel von Angriffen. Ständige Aktualisierungen und Sicherheits-Patches sind entscheidend, um neue Schwachstellen zu beheben. Unter Linux können automatische Updates wie folgt eingerichtet werden:

  • Für Debian-basierte Systeme:
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

Für RedHat/CentOS-basierte Systeme:

sudo yum install yum-cron
sudo systemctl enable --now yum-cron

Durch regelmäßige Patches stellen Sie sicher, dass Ihr System vor den neuesten Bedrohungen geschützt ist.


6. Netzwerksegmentierung

Durch Netzwerksegmentierung wird das interne Netzwerk in kleinere Subnetze aufgeteilt. Dies verhindert, dass ein Angreifer bei einem erfolgreichen Angriff auf einen Teil des Netzwerks vollen Zugriff auf das gesamte Netzwerk erhält. Es ist ratsam, unterschiedliche Segmente für sensible Daten, Benutzergeräte und externe Verbindungen zu verwenden. Tools wie VLANs (Virtual Local Area Networks) können hierbei hilfreich sein.


7. Protokollierung und Überwachung

Die Protokollierung ist ein wesentlicher Bestandteil der Netzwerksicherheit. Linux verfügt über das syslog-System, das alle wichtigen Ereignisse aufzeichnet. Es wird empfohlen, ein zentrales Log-Management-System wie Graylog oder ELK Stack (Elasticsearch, Logstash, Kibana) einzurichten, um den Netzwerkverkehr und potenzielle Bedrohungen besser überwachen zu können.


Fazit

Network Hardening auf Linux-Systemen ist eine unverzichtbare Praxis, um Netzwerke vor Angriffen zu schützen. Durch das Implementieren von Firewalls, das Härten von SSH-Zugängen, das Deaktivieren unnötiger Dienste und die Implementierung von Intrusion-Detection-Tools können Sie die Sicherheitslage Ihres Netzwerks erheblich verbessern. Denken Sie daran, dass Netzwerksicherheit ein fortlaufender Prozess ist – regelmäßige Updates und Überprüfungen sind unerlässlich, um gegen neu entstehende Bedrohungen gewappnet zu sein.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert