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/tcp ftp 21/tcp ftpd telnet 23/tcp telnetd smtp 25/tcp bootps 67/udp bootpd bootpc 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.34 telnet: tcp/telnet: unknown service ready 09:30:15 ftp 172.16.1.34 ftp: ftp/tcp: unknown service ready 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 23 Trying... 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.