Um Schwachstellen eines Servers auszukundschaften wird dieser meist einem Portscan unterzogen. So kann festgestellt werden, welche Ports offen sind und welche Dienste auf dem Server laufen. Mit Portsentry kann man solche Scans am eigenen Server feststellen und ggf. Gegenmassnahmen ergreifen.

Installation

Wieder installieren wir das Tool aus den Ports:

# cd /usr/ports/security/portsentry/ && make install clean

Konfiguration

Jetzt bearbeiten wir noch die Konfigurationsdatei '/usr/local/etc/portsentry.conf', ein Beispiel findest du hier. Wichtige Parameter sind hier:

  • TCP_PORTS: Enthält eine Liste TCP-Ports, auf denen Portsentry lauscht und bei einem Scan darauf reagiert
  • UDP_PORTS: Äquivalent zu TCP_PORTS aber eben für UDP-Ports
  • RESOLVE_HOST: Wenn der Wert auf 1 steht, wird der Hostname zur IP-Adresse aufgelöst
  • KILL_ROUTE: Befehl der ausgeführt wird, wenn ein Portscan erkannt wurde
  • SCAN_TRIGGER: Anzahl der Scans je IP-Adresse die erkannt werden müssen, um eine Aktion zu starten

Folgende Werte empfehle ich dir:

RESOLVE_HOST="1"
KILL_ROUTE="/sbin/pfctl -t bruteforce -T add $TARGET$
SCAN_TRIGGER="2"

$TARGET$ wird automatisch durch die angreifende IP ersetzt.

portsentry starten

Um den Dienst zu starten, muss noch folgende Zeile in die "/etc/rc.conf" eingetragen werden:

portsentry_enable="YES"

Um den KILL_ROUTE-Befehl nutzen zu können, muss natürlich die Firewall (PF) richtig konfiguriert sein. Sieh dir hierzu das Tutorial Schutz vor Bruteforce-Angriffen an.