FTP deaktivieren

FTP deaktivieren

Ich richte einen neuen Debian-Server ein und brauche kein FTP, deshalb möchte ich es entfernen. Laut netstat -tap hört FTP nichts ab. Wenn ich jedoch extern einen Portscan (nmap) durchführe, heißt es, der FTP-Port sei offen (21). inetd startet nichts, xinetd ist nicht auf dem System.

Was soll ich machen?

Ergebnis des Netstat-Tap

obu1:/etc/pam.d# netstat -tap
Aktive Internetverbindungen (Server und hergestellt)
Proto Recv-Q Send-Q Lokale Adresse Fremde Adresse Status PID/Programmname
tcp 0 0 *:225 *:* LISTEN 2237/sbadm
tcp6 0 0 *:ssh *:* LISTEN 2399/sshd
tcp6 0 448 obu1.hostname.:ssh rrcs-XXX-XXX-XXX-XXX:56721 ESTABLISHED 16639/sshd: Benutzername

NMap von nicht-lokal

Nmap 4.90RC1 ( http://nmap.org ) wird am 13.07.2009 um 10:47 Uhr Eastern Daylight Time gestartet.
Interessante Ports auf obu1.hostname (IP-Adresse):
Nicht dargestellt: 972 geschlossene Ports, 26 gefilterte Ports
Hafenstaatsdienst
21/tcp öffnen ftp
22/tcp ssh öffnen

Nmap fertig: 1 IP-Adresse (1 Host aktiv) in 3,60 Sekunden gescannt

Antwort1

Sie sollten wissen, dass Windows XP (und wahrscheinlich auch andere Versionen) über einen internen Wrapper für FTP-Verbindungen verfügt (der Zweck besteht darin, die erfolgreiche Ausführung des PORT-Befehls auch hinter einer Firewall oder einem Router zu ermöglichen).

Dieser Wrapper fängt alle Verbindungen zu jedem Host auf Port 21 ab, sodass er sie überwachen und versuchen kann, den eingehenden Port eines vom Client ausgegebenen PORT-Befehls zu öffnen.

Dieser Wrapper hat außerdem einen Nebeneffekt: Da er jede Verbindung zu Port 21 abfängt, sendet er ein Signal an die Software, dass die Verbindung hergestellt wurde. Diese betrachtet die Verbindung als hergestellt, aber tatsächlich wird die Verbindung nur zum internen Wrapper von Windows hergestellt.

Der Wrapper versucht dann, die Verbindung zum realen Host zu öffnen. Wenn dabei ein Timeout auftritt, sendet er ein Signal an die Software, dass die Verbindung verloren gegangen ist. Die Software erkennt die Verbindung als verloren.

Zusammengefasst geht die Software davon aus, dass eine Verbindung erfolgreich hergestellt und dann verloren wurde, obwohl keine echte Verbindung hergestellt wurde.

In Ihrem Fall passiert also Folgendes: Sie führen nmap aus. Nmap versucht, über Port 21 eine Verbindung zu Ihrem Server herzustellen. Der Wrapper von Windows fängt die Verbindung ab. Nmap „denkt“, dass es mit Ihrem Server verbunden ist (aber es ist nur mit dem Wrapper verbunden) und meldet den Port als geöffnet.

Sie können dies bestätigen, indem Sie in eine Befehlszeile Folgendes eingeben:

ftp 4.3.2.1

Sie werden sehen: C:>ftp 4.3.2.1

Verbunden mit 4.3.2.1.

Verbindung vom fremden Host geschlossen.

Sie können jede gültige IP-Adresse ausprobieren. FTP stellt immer eine Verbindung her und trennt sie kurz darauf. Dabei sollte die Meldung „Verbindungszeit abgelaufen“ angezeigt werden.

Ich habe nie eine Dokumentation darüber gesehen. Nach vielen Untersuchungen entdeckte ich dieses seltsame Verhalten und fand nach weiteren Untersuchungen heraus, warum es hier ist.

Nun, die Schlussfolgerung aus dieser (großen) Antwort ist, dass der Port 21 Ihres Servers definitiv geschlossen ist, wie netstat meldet, und nmap sich durch dieses Verhalten täuschen lässt.

Antwort2

apt-get entfernen --purge ftp

Ersetzen Sie ftp durch den Namen des Pakets. Ich bin mir nicht sicher, was es genau ist, aber meines Wissens sollte dieser Befehl funktionieren.

apt-get sauber

Dadurch wird Ihr var-Verzeichnis nach einer Deinstallation bereinigt.

Antwort3

Verwenden Sie einen der folgenden Befehle, um herauszufinden, welches Programm tatsächlich auf Port 21 lauscht.

netstat -lp

lsof -i :21

Dies sollte Ihnen dabei helfen, herauszufinden, welches konkrete Paket entfernt oder neu konfiguriert werden muss.

Antwort4

Sind Sie sicher, dass Sie die richtige IP scannen? netstat zeigt Port 225 und 22, nmap zeigt 21 und 22 ... entweder scannen Sie die falsche IP, dazwischen gibt es eine Firewall, die etwas tut, oder vielleicht gibt es einige iptables-Regeln auf Ihrem Server, die Pakete umleiten. Ich würde sagen, überprüfen Sie „iptables -L -n“, um sicherzustellen, dass dort nichts mit FTP zu tun hat.

verwandte Informationen