Hetzner - DokuWiki

Security Firewall
('''Konfigurationshilfen''': Link zu ExarKun's IPTables Generator aktuallisiert)
 
Zeile 1: Zeile 1:
[[Category:Dedizierte_Server]]
+
{{Languages|Security Firewall}}
='''Konfigurationshilfen'''=
+
 
Falls eine Firewall trotz allem notwendig ist helfen folgende Links bei der Konfiguration:<br>
+
== Konfigurationshilfen ==
*ExarKun's IPTables Generator: http://www.tobias-bauer.de/node/19
+
 
* Harry's iptables-Generator: http://www.harry.homelinux.org/modules.php?name=iptables_Generator
+
Falls eine Firewall trotz allem notwendig ist helfen folgende Links bei der Konfiguration:
* FireHOL, the iptables stateful packet filtering firewall builder: http://firehol.sourceforge.net/
+
 
<br>
+
*ExarKun's IPTables Generator: [https://www.tobias-bauer.de/iptables.html https://www.tobias-bauer.de/iptables.html]
 +
*FireHOL, the iptables stateful packet filtering firewall builder: [http://firehol.org/ http://firehol.org/]
 +
 
 +
== Tips und Tricks ==
 +
 
 +
=== Automatischer Fallback ===
 +
 
 +
Um sich beim Aktivieren der Firewall mit fehlerhaften Einstellungen nicht auszusperren, empfiehlt sich ein "automatischer Fallback":
 +
 
 +
./firewall start&&sleep 60&&./firewall stop
 +
 
 +
Dadurch wird die Firewall erstmal nur für 60 Sekunden gestartet und man kann das ganze mal testen.
 +
 
 +
Falls bereits eine IPTables-Konfiguration besteht:
 +
 
 +
iptables-save > /tmp/savediptables
 +
 
 +
und dann mit
 +
 
 +
at now + 5min
 +
iptables-restore < /tmp/savediptables
 +
 
 +
<Strg>+<D>
 +
 
 +
Dies sichert die IP-Tables-Konfiguration und stellt die Originalkonfiguration nach 5 Minuten wieder her.
 +
 
 +
=== Sperren einer einzelnen "bösen" IP-Adresse bzw. eines Netzblocks ===
 +
 
 +
Per iptables-Filter lässt sich leicht eine einzelne IP-Adresse blocken:
 +
 
 +
iptables -I INPUT -s <böse_IP> -j DROP
 +
 
 +
Es kann auch ein ganzer IP-Adressbereich geblockt werden, z.B.
 +
 
 +
iptables -I INPUT -s <böse_Subnetz/range> -j DROP
 +
 
 +
Das Blockieren macht bei dynamischen Einwahl-IP's des Angreifers/Störers natürlich wenig Sinn.
 +
 
 +
=== Auflisten von IP-Adressen von SSH-Scans ===
  
='''Tips und Tricks'''=
 
=='''Automatischer Fallback'''==
 
Um sich beim Aktivieren der Firewall mit fehlerhaften Einstellungen nicht auszusperren, empfiehlt sich ein "automatischer Fallback": ''(von Brain aus dem Forum)''
 
  ./firewall start&&sleep 60&&./firewall stop
 
Dadurch wird die Firewall erstmal nur f&uuml;r 60 Sekunden gestartet und man kann das ganze mal testen.<br>
 
<br>
 
Falls bereits eine IPTables-Konfiguration besteht: ''(von Fronti aus dem Forum)''<br>
 
  iptables-save > /tmp/savediptables
 
und dann mit<br>
 
  at now + 5min
 
  iptables-restore < /tmp/savediptables
 
 
 
  <Strg>+<D>
 
Dies sichert die IP-Tables-Konfiguration und stellt die Originalkonfiguration nach 5 Minuten wieder her.<br>
 
<br>
 
=='''Sperren einer einzelnen "b&ouml;sen" IP-Adresse bzw. eines Netzblocks'''==
 
per iptables-Filter l&auml;sst sich leicht eine einzelne IP-Adresse blocken: ''von Nick und Deltaflyer aus dem Forum''<br>
 
  iptables -I INPUT -s ''b&ouml;se_IP'' -j DROP
 
Es kann auch ein ganzer IP-Adressbereich geblockt werden, z.B.<br>
 
  iptables -I INPUT -s 213.133.99.0/24 -j DROP
 
Das Blockieren macht bei dynamischen Einwahl-IP's des Angreifers/St&ouml;rers nat&uuml;rlich wenig Sinn.<br>
 
<br>
 
=='''Auflisten von IP-Adressen von SSH-Scans'''==
 
 
Wie man (bei Debian) herausbekommt, welche IPs es wie oft versucht haben, mit welchen Benutzernamen per ssh reinzukommen:
 
Wie man (bei Debian) herausbekommt, welche IPs es wie oft versucht haben, mit welchen Benutzernamen per ssh reinzukommen:
  
  #!/bin/bash
+
#!/bin/bash
  # Erst mal das Datum wegschneiden, da dort zwei blanks sein koennen
+
# Erst mal das Datum wegschneiden, da dort zwei blanks sein koennen
  grep Illegal | cut -b8-99 >tmp1
+
grep Illegal | cut -b8-99 >tmp1
  echo "Probierte Usernamen:"
+
echo "Probierte Usernamen:"
  cat tmp1 | cut -d' ' -f6 | sort | uniq -c | sort -n
+
cat tmp1 | cut -d' ' -f6 | sort | uniq -c | sort -n
  echo "IPs:"
+
echo "IPs:"
  cat tmp1 | cut -d' ' -f8 | sort | uniq -c | sort -n
+
cat tmp1 | cut -d' ' -f8 | sort | uniq -c | sort -n
  echo "Ende"
+
echo "Ende"
  
 
Die obigen Zeilen einfach in eine Datei schreiben ("checklogs"?) und mit chmod +x checklogs ausführbar machen. Dann die Logs drüberlaufen lassen:
 
Die obigen Zeilen einfach in eine Datei schreiben ("checklogs"?) und mit chmod +x checklogs ausführbar machen. Dann die Logs drüberlaufen lassen:
  
  cat /var/log/auth.log | ./checklogs
+
cat /var/log/auth.log | ./checklogs
 +
 
 +
[[Kategorie:Dedizierte Server]]
 +
[[Kategorie:Dedi-Überwachung, Sicherung und Wartung]]

Aktuelle Version vom 23. Oktober 2013, 08:51 Uhr

Inhaltsverzeichnis

Konfigurationshilfen

Falls eine Firewall trotz allem notwendig ist helfen folgende Links bei der Konfiguration:

Tips und Tricks

Automatischer Fallback

Um sich beim Aktivieren der Firewall mit fehlerhaften Einstellungen nicht auszusperren, empfiehlt sich ein "automatischer Fallback":

./firewall start&&sleep 60&&./firewall stop

Dadurch wird die Firewall erstmal nur für 60 Sekunden gestartet und man kann das ganze mal testen.

Falls bereits eine IPTables-Konfiguration besteht:

iptables-save > /tmp/savediptables

und dann mit

at now + 5min
iptables-restore < /tmp/savediptables
<Strg>+<D>

Dies sichert die IP-Tables-Konfiguration und stellt die Originalkonfiguration nach 5 Minuten wieder her.

Sperren einer einzelnen "bösen" IP-Adresse bzw. eines Netzblocks

Per iptables-Filter lässt sich leicht eine einzelne IP-Adresse blocken:

iptables -I INPUT -s  -j DROP

Es kann auch ein ganzer IP-Adressbereich geblockt werden, z.B.

iptables -I INPUT -s <böse_Subnetz/range> -j DROP

Das Blockieren macht bei dynamischen Einwahl-IP's des Angreifers/Störers natürlich wenig Sinn.

Auflisten von IP-Adressen von SSH-Scans

Wie man (bei Debian) herausbekommt, welche IPs es wie oft versucht haben, mit welchen Benutzernamen per ssh reinzukommen:

#!/bin/bash
# Erst mal das Datum wegschneiden, da dort zwei blanks sein koennen
grep Illegal | cut -b8-99 >tmp1
echo "Probierte Usernamen:"
cat tmp1 | cut -d' ' -f6 | sort | uniq -c | sort -n
echo "IPs:"
cat tmp1 | cut -d' ' -f8 | sort | uniq -c | sort -n
echo "Ende"

Die obigen Zeilen einfach in eine Datei schreiben ("checklogs"?) und mit chmod +x checklogs ausführbar machen. Dann die Logs drüberlaufen lassen:

cat /var/log/auth.log | ./checklogs


© 2020. Hetzner Online GmbH. Alle Rechte vorbehalten.