En faisant des recherches, j'ai remarqué que SSH utilise à la fois TCP et UDP. Je comprends parfaitement l'utilisation de TCP, mais UDP semble un peu étrange. Pourquoi devrais-je utiliser un protocole de transport "non fiable" avec une liaison minimale pour un accès sécurisé au shell?
La seule utilisation à laquelle je peux penser est pour SCP, donc la transmission de fichiers (volumineux). Mais encore une fois, le protocole TCP ne serait-il pas plus utile en raison de la poignée de main?
En fait, je n'envisage que d'ouvrir TCP pour SSH, mais ne pas en connaître les conséquences serait très préjudiciable.
MODIFIER
Il s'avère qu'il n'y a pas seulement une thèse sur ssh sur UDP, mais aussi une implémentation à part entière de ssh, appelée mosh . Cependant, le SSH classique n’utilise toujours que le protocole TCP, comme spécifié dans ses RFC .
Réponses:
Je l'ai essayé avec plusieurs connexions SSH de Windows vers Unix et Unix vers Unix et je ne reçois pas un seul paquet UDP sur le port 22. De plus, le serveur n'écoute que sur TCP.
Dans cette thèse, ils ont essayé d'implémenter UDP pour le transport SSH, mais ils ont également mentionné que le protocole par défaut utilise uniquement le protocole TCP: ". OpenSSH utilise TCP de manière cohérente pour toutes ses connexions réseau et donc pour sa fonctionnalité VPN.". La page Wikipedia pourrait indiquer qu'il s'agit d'un protocole UDP, car les développeurs SSH ont demandé initialement des attributions UDP et TCP, mais le RFC associé n'en fait aucune mention.
la source
... Le protocole SSH utilise ou a utilisé 22 / UDP pour le contrôle de tunneling via TCP. Si vous décodez correctement via Wireshark et que vous tunnelisez une connexion via ssh-agent ou via un tunnel à distance ou localement, vous remarquerez que UDP est encapsulé dans les segments TCP.
la source