Vorherige Seite | Nächste Seite Inhalt

NetBSD Sicherheitsvorkehrungen und -anwendungen: Zusätzliche Sicherheitsprodukte


Auch wenn NetBSD out-of-the-box mit einer Reihe fortschrittlicher Netzwerkfähigkeiten ausgestattet ist, so könnten Sie eventuell auch andere Software installieren wollen. Auf dieser Seite schauen wir uns einmal solche andere Software an.

Portsentry (zurück)

'portsentry' ist ein tolles Werkzeug. Kurz gesagt überwacht es Ihr System auf Portscans und Verbindungs-Versuche und initiiert dann verschiedene Aktionen, um den Angreifer abzuwehren. Eine Schwäche von portsentry besteht darin, dass es immer erst einen Verbindungs-Versuch benötigt, um herauszufinden, ob die Verbindung von einem "feindlichen" Host aus aufgebaut wurde. Ist der erste Versuch erfolgreich, hilft Ihnen daher portsentry nicht weiter.

Installation von Portsentry

Portsentry kann einfach durch die NetBSD Paketsammlung (pkgsrc) heruntergeladen und installiert werden:

cd /usr/pkgsrc/security/portsentry
make && make install

Konfiguration von Portsentry

Unter NetBSD hat portsentry seine Konfigurationsdatei hier:
/usr/pkg/etc/portsentry.conf

Port Konfigurationen

In der Konfigurationsdatei sind drei verschieden Port-Sets enthalten. Davon müssen dann je eines für TCP und eines für UDP ausgewählt werden und der Kommentar am Anfang der Zeile entfernt werden. Standardgemäss nutzen wir das "mittlere" Set, so dass das Ganze dann in etwa so aussehen sollte:

# Wenn Sie so richtig pingelig sind, entfernen Sie den Kommentar hier
#TCP_PORTS="1,7,9,11,15,70,79,80,109,110,111,119,138,139,143,512,513,514,515,540,
635,1080,1524,2000,2001,4000,4001,5742,6000,6001,6667,12345,12346,20034,30303,32
771,32772,32773,32774,31337,40421,40425,49724,54320"
#UDP_PORTS="1,7,9,66,67,68,69,111,137,138,161,162,474,513,517,518,635,640,641,66
6,700,2049,32770,32771,32772,32773,32774,31337,54321"
#
# Nutzen Sie diese, wenn Sie bloss wissen wollen, was so vor sich geht
TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000,5742,6667,12345,12346,
20034,31337,32771,32772,32773,32774,40421,49724,54320"
UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,32770,32771,32772,32773,32774,31
337,54321"
#
# Nutezen Sie diese für's Gröbste
#TCP_PORTS="1,11,15,110,111,143,540,635,1080,524,2000,12345,12346,20034,32771,32
772,32773,32774,49724,54320"
#UDP_PORTS="1,7,9,69,161,162,513,640,700,32770,32771,32772,32773,32774,31337,543
21"

Fortgeschrittene Konfiguration

Der Konfigurationsparameter 'ADVANCED_PORTS_TCP' bezeichnet die Nummer der Ports, die portsentry überwachen soll; alle Ports die geringer sind als der angegeben Wert, werden so überwacht.

ADVANCED_PORTS_TCP="1023"
ADVANCED_PORTS_UDP="1023"

Des Weiteren können Sie portsentry in diesem Teil sagen, welche Verbindungen ignoriert werden können (wie z. B. NetBIOS Services):

# Default TCP ident und NetBIOS Service
ADVANCED_EXCLUDE_TCP="113,139"
# Default UDP route (RIP), NetBIOS, bootp broadcasts.
ADVANCED_EXCLUDE_UDP="520,138,137,67"

Konfigurationsdateien

Hier bestimmen Sie, wo die Konfigurationsdateien auf Ihrem System zu finden sind:

# Hosts die zu ignorieren sind
IGNORE_FILE="/usr/pkg/etc/portsentry.ignore"
# Laufende Liste Böser Buben
HISTORY_FILE="/usr/pkg/etc/portsentry.history"
# Liste der Bösen Buben in dieser Session
BLOCKED_FILE="/usr/pkg/etc/portsentry.blocked"

Antwortaktions Optionen

Dies ist recht einfach, folgen Sie einfach den Anweisungen in der Datei:

# 0 = UDP/TCP Scans werden NICHT geblockt.
# 1 = UDP/TCP Scans werden geblockt.
# 2 = Ausführung eines anderen Befehls (KILL_RUN_CMD)

BLOCK_UDP="1"
BLOCK_TCP="1"

'Dropping Routes'

Dies ist die 'kill route' option - die für NetBSD ist bereits aktiviert:

# Generic BSD (BSDI, OpenBSD, NetBSD, FreeBSD)
KILL_ROUTE="/sbin/route add $TARGET$ 333.444.555.666"

Es ist darauf hinzuweisen, dass einige auch die Firewall Tabellen von, z. B. dem FreebSD Paketfilter modifizieren können:

# Wenn Sie FreeBSD (oder ein kompatibles BS) nutzen, können Sie
# den eingebauten Firewall nutzen.
#
#KILL_ROUTE="/sbin/ipfw add 1 deny all from $TARGET$:255.255.255.255 to any"

Sollten Sie einen anderen Firewall nutzen, so kann es auch möglich sein, dass Sie ähnliche Optionen nutzen können.

TCP Wrapper

Folgende Zeilen kommen in die Datei /etc/hosts.deny:

#
KILL_HOSTS_DENY="ALL: $TARGET$"

Externe Befehle

Hier können Sie externe Befehle (oder ein Script etc.) aufrufen:

#KILL_RUN_CMD="/some/path/here/script $TARGET$ $PORT$"

Als Beispiel könnten Sie hier auch den Firewall modifizieren.

Der 'Scan Trigger' Wert

Dies ist die Anzahl von Versuchen, die portsentry erlaubt, bevor es den Alarm auslöst. Der vorgegebene Wert ist '0', '1' ist evenfalls recht sicher (und minimiert die Zahl der falschen Alarme).

Port Banner

Dies ist eine Message, die an den Auslöser zurückgeschickt wird. Sofern dieser kein besonders ausführliches Tool benutzt, ended die Nachricht in einer Log-Datei (unter NetBSD wäre dies /var/log/messages).

#PORT_BANNER="** UNAUTHORIZED ACCESS PROHIBITED *** YOUR CONNECTION ATTEMPT HAS
BEEN LOGGED. GO AWAY."

NMAP (zurück)

Das 'nmap' Werkzeug ist ein Portscanner. Sie können einen einzelnen Host, ein Netzwerk oder eine Kombination dieser scannen. 'nmap' ist in der Paketsammlung erhältlich.

Installation von NMAP

Durch pkgsrc:

# cd /usr/pkgsrc/net/nmap
# make && make install

Der Gebrauch von nmap

'nmap' hat eine Menge Optionen - wir werden uns drei Beispiele anschauen:

  1. Einen einzelnen Host scannen
  2. Mehrere Hosts scannen
  3. Einen NetBSD Firewall scannen

Einen einzelnen Host scannen

Für dieses Beispiel nutzen wir ein ziemlich unsicheres System in einem internen Netzwerk:

nmap -P0 172.16.14.12

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )
Interesting ports on marie.ipsosasi.net (172.16.14.12):
(The 1504 ports scanned but not shown below are in state: closed)
Port       State       Service
7/tcp      open        echo                    
9/tcp      open        discard                 
13/tcp     open        daytime                 
19/tcp     open        chargen                 
21/tcp     open        ftp                     
23/tcp     open        telnet                  
37/tcp     open        time                    
111/tcp    open        sunrpc                  
. . .

Mehrere Hosts scannen

So, nun einmal mit mehreren Hosts:

nmap -P0 172.16.14.0/24 >nmap.out

Nachdem 'nmap' fertig (was eine Weile dauern kann) oder unterbrochen worden ist, schauen Sie sich die Datei mit den Informationen an. Hier ist ein Beispiel von dem Netzwerk, das ich gescannt habe:

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )
All 1523 scanned ports on  (172.16.14.0) are: closed
Interesting ports on somename.blah.net (172.16.14.1):
(The 1521 ports scanned but not shown below are in state: filtered)
Port       State       Service
23/tcp     open        telnet                  
68/tcp     closed      bootpc                  

All 1523 scanned ports on somename.blah.net (172.16.14.2) are: closed
Interesting ports on somename.blah.net (172.16.14.3):
(The 1520 ports scanned but not shown below are in state: closed)
Port       State       Service
23/tcp     open        telnet                  
79/tcp     open        finger                  
80/tcp     open        http                    

Interesting ports on somename.blah.net (172.16.14.4):
(The 1513 ports scanned but not shown below are in state: closed)
Port       State       Service
7/tcp      open        echo                    
9/tcp      open        discard                 
19/tcp     open        chargen                 
...

Einen NetBSD Firewall scannen

Nun noch den Firewall:

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )

Interesting ports on  (216.68.250.60):
(The 1522 ports scanned but not shown below are in state: filtered)
Port       State       Service
22/tcp     open        ssh                     

Nmap run completed -- 1 IP address (1 host up) scanned in 772 seconds

Ah, so ist's doch gleich schon viel besser!


Vorherige Seite | Nächste Seite Inhalt

Home page
Zurück zu Dokumentation

(Ihre Meinung) $NetBSD: additional.html,v 1.14 2005/09/28 17:24:43 mishka Exp $
Copyright © 1994-2003 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.