Avec la tendance à l'abandon de telnetd et FTPD au profit de SSHD, de nombreux administrateurs système suppriment les lignes de service "telnet" et "FTP" du fichier >system>stcp>services.
#Name port Service Alias#ftpdata 20/tcpftp 21/tcp ftpdtelnet 23/tcp telnetdsmtp 25/tcpbootps 67/udp bootpdbootpc 68/udp bootp. . . . . . |
Figure 1 - Entrées telnet et FTP dans le fichier >system>stcp>services
Cela posera des problèmes si vous devez toujours utiliser les clients telnet et/ou FTP pour communiquer avec d'autres hôtes.
telnet 172.16.1.34telnet: tcp/telnet: unknown serviceready 09:30:15 ftp 172.16.1.34ftp: ftp/tcp: unknown serviceready 09:30:26 |
Figure 2 - Erreurs des clients telnet et FTP causées par des entrées de services erronées
La raison en est que les clients telnet et FTP utilisent la fonction getservbyname pour déterminer le numéro de port auquel ils doivent se connecter. Cette fonction lit le fichier de services et si les noms de services "telnet" et/ou "ftp" ne sont pas dans ce fichier, la fonction ne renvoie pas de numéro de port et les clients se terminent.
Le client telnet vous permet de contourner cet appel de fonction en fournissant un numéro de port sur la ligne de commande.
telnet 172.16.1.34 23Trying...Connected to 172.16.1.23.Escape character is '^]'. login: |
Figure 3 - Fournir un numéro de port au client telnet
Le client FTP ne dispose pas de cette option.
Le fichier de services n'est qu'une base de données en fichier plat mettant en correspondance les noms de services avec les numéros de port et les protocoles. La suppression des lignes "telnet" et "ftp" n'augmente pas efficacement le niveau de sécurité du module, car le fait d'avoir ces lignes dans le fichier ne signifie pas que ces services seront automatiquement exécutés. À moins que vous ne soyez sûr qu'aucun de vos utilisateurs n'aura jamais besoin d'utiliser les clients telnet et FTP, vous devez laisser les entrées dans le fichier des services.
