Mit dem Trend weg von der Ausführung von telnetd und FTPD und hin zur Ausführung von SSHD entfernen viele Systemadministratoren die "telnet"- und "FTP"-Dienstzeilen aus der Datei >system>stcp>services.
#Name port Service Alias # ftpdata 20/tcp ftp 21/tcp ftpd telnet 23/tcp telnetd smtp 25/tcp bootps 67/udp bootpd bootpc 68/udp bootp . . . . . . |
Abbildung 1 - Telnet- und FTP-Einträge in der Datei >system>stcp>services
Dies führt zu Problemen, wenn Sie weiterhin Telnet- und/oder FTP-Clients für die Kommunikation mit anderen Hosts verwenden müssen.
telnet 172.16.1.34 telnet: tcp/telnet: unknown service ready 09:30:15 ftp 172.16.1.34 ftp: ftp/tcp: unknown service ready 09:30:26 |
Abbildung 2 - Telnet- und FTP-Client-Fehler aufgrund fehlender Diensteeinträge
Der Grund dafür ist, dass die Telnet- und FTP-Clients die Funktion getservbyname verwenden, um festzustellen, mit welcher Anschlussnummer sie sich verbinden sollen. Diese Funktion liest die Datei services und wenn die Dienstnamen "telnet" und/oder "ftp" nicht in dieser Datei enthalten sind, gibt die Funktion keine Anschlussnummer zurück und die Clients brechen ab.
Mit dem Telnet-Client können Sie diesen Funktionsaufruf umgehen, indem Sie eine Portnummer in der Befehlszeile angeben.
telnet 172.16.1.34 23 Trying... Connected to 172.16.1.23. Escape character is '^]'. login: |
Abbildung 3 - Angabe einer Portnummer für den Telnet-Client
Der FTP-Client verfügt nicht über diese Option.
Die Datei "services" ist lediglich eine flache Datenbank, die die Namen der Dienste den Portnummern und Protokollen zuordnet. Das Entfernen der "telnet"- und "ftp"-Zeilen erhöht die Sicherheit des Moduls nicht effektiv, da das Vorhandensein dieser Zeilen in der Datei nicht bedeutet, dass diese Dienste automatisch ausgeführt werden. Wenn Sie nicht sicher sind, dass keiner Ihrer Benutzer die Telnet- und FTP-Clients jemals benutzen muss, sollten Sie die Einträge in der Datei services beibehalten.