Sicheres Netzwerk und Nmap

Tutorial - Portscanner und Ports

Seine erste Berührung mit Informatik erfolgte an einem C64 samt Floppy VC 1541. Von Anfang an nutzte er diesen faszinierenden Heimcomputer nicht nur zum Daddeln, sondern auch für die Basic-Programmierung. Unter anderem half er seinen damals etwas müden Kopfrechnen-Fähigkeiten auf die Sprünge, indem er ein Programm schrieb, das immer zwei zufällig ausgewählte Zahlen zur Multiplikation stellte. Im Hintergrund lief ein Timer. Nur wenn er das Ergebnis innerhalb des vorgegebenen Zeitraums, der leider manchmal zu knapp bemessen war, richtig eintippte, bekam er einen Punkt gutgeschrieben. Seine Highscore-Ergebnisse waren durchwachsen, seine Programmierkenntnisse dafür umso besser. Der Lehrstuhl, an dem er als studentische Hilfskraft angestellt war, gehörte seinerzeit zu den Vorreitern in Sachen IT. Man übersetzte damals die griechischen Inschriften der antiken Stadt Hierapolis – heute ist dieses türkische Pamukkale bekannt durch seine Kalksinter-Terrassen. Die wissenschaftlich korrekt erfassten und kommentierten Inschriften bearbeiteten Dirscherl und Kollegen zunächst in Wordperfect. Anschließend landeten die Texte in einer Datenbank, die auf CD gepresst und für sündhaft viel Geld weltweit verkauft wurde. Über dieses epigraphische Datenbankprojekt, diverse C-Programmierereien auf Unix-Systemen und seine ersten Experimente mit Linux landete er schließlich professionell bei der IT. Seit den späten 1990-ern nutzt er Linux als Produktivsystem, seit Anfang der 2000-er Jahre ist Linux sein hauptsächliches OS. Nach vielen Jahren mit Suse Linux und Open Suse und zwischendurch Ausflügen zu Red Hat und Debian landete er bei Ubuntu und erledigt damit alle Arbeiten. Linux und C ist er bis heute treu geblieben – nach einem Ausflug zu PHP und MySQL. Mittlerweile bastelt er auch mit Arduino. Bei pcwelt.de betreut er vor allem Business-IT-Themen und hat den Auto & Technik-Bereich von Null beginnend aufgebaut. Seine Tests der Infotainmentsysteme in modernen Fahrzeugen gehören zu den ausführlichsten Tests, die man dazu überhaupt finden kann. Daneben schreibt er zudem fast täglich aktuelle Meldungen aus der IT-Welt.
Port? Portscanner? Nmap? Wir bringen Licht ins Dunkel und zeigen wie Sie mit Nmap Sicherheitslecks entdecken und Angriffe abwehren.

Jeder Rechner im Internet hat offene Ports. Diese werden zur Kommunikation per Internet benötigt. Sie stellen Türen mit einer eindeutigen Kennung der Anwendung dar. Hacker dringen meist über unverschlossene Ports in fremde Systeme ein. Port-Kenntnisse helfen die Arbeits- und Funktionsweise von Firewalls zu verstehen.

Die Netzwerkprotokolle TCP (Transmission Control Protocol) und UDP (User Datagram Protocol) organisieren den Datenverkehr im World Wide Web. Sie sind verantwortlich, dass jede Application eine Portnummer erhält. Anhand dieser Nummer weiß das Programm, ob das ankommende Datenpaket bei ihm richtig ist. E-Mail-Pakete landen anhand der Kennung beim E-Mail-Client. Dagegen identifiziert der Web-Browser das Datagram, das für ihn bestimmt ist und zeigt es an. Alle anderen Anwendungen lehnen es ab. Ports sind somit Einlasskontrollen und regeln den Internet-Verkehr. Es wird kein Datenpaket von einer Anwendung geöffnet, für die es nicht bestimmt ist.

Sockets: Portnummer und IP-Adresse

TCP und UDP vergeben jedem Datenpaket eine Portnummer und IP-Adresse. Diese Kombination wird dem Inhalt des Datagrams im Datensegment vorangestellt und heißt Socket. Die Verknüpfung hält die Verbindung zwischen zwei Rechnern in beide Richtungen offen, sowohl auf dem Server als auch auf dem Client. Anhand des Codes wissen die Datenpakete wohin sie müssen. Die Anwendung auf dem Zielrechner erkennt mittels Chiffre, ob das Datagram richtig ist.

Jede Application hat bestimmte Ports. Ein POP3-Server wartet mit der Portnummer 110 auf seinen Einsatz. Ein Webserver dagegen "horcht" am Port 80, ob er benötigt wird.

Wenn Sie selbst einen Webserver auf Ihrem PC administrieren, müssen Sie die entsprechenden Portnummern bei der Konfiguration angeben. Üblicherweise ist dies 80. Im Fall, dass zwei Internet-Server gleichzeitig laufen sollen, geben Sie den Port beim Apache HTTP Server in der Konfigurationsdatei an.

Alle Datenpakete kennen anhand der Absender- und Zielportnummern im Kopfbereich ihres Datensegments ihr Ziel. Diese Daten fügen das TCP- und UDP-Protokoll hinzu.

Die Protokolle vergeben stets statische Portnummern an Prozesse von Servern. Clients wiederum erhalten immer eine dynamische Nummer. Die Anfrage an einen Apache-Webserver, Microsoft IIS (Internet Information Services) oder einen anderen HTTP-Server führt mit einer eindeutigen Rechner-Netzwerk-Adresse zu einer statischen IP-Adresse mit Portnummer 80. So wird aus 192.168.1.18 die Adresse 192.168.1.18:80. Fragt dagegen ein Server bei einem Client mit der IP-Adresse 192.168.100.12 an, lautet der dynamisch zugeordnete Socket für die angefragte Internetsite 192.168.100.12:49152.