Je travaille sur Solaris et bien que j'utilise les commandes ssh, sftp et su depuis un certain temps maintenant, je n'ai jamais complètement compris comment elles fonctionnent. Veuillez m'expliquer et me diriger vers de bonnes ressources où je peux en savoir plus.
Srikanth
Réponses:
26
Le protocole SSH est défini par ce que les programmes sshet sshdacceptent. (Il existe une norme définie pour cela, mais c'est une chose après coup et est généralement ignoré lorsque l'une des implémentations ajoute de nouvelles fonctionnalités.) Puisqu'il existe plusieurs implémentations de celles-ci (OpenSSH, F-Secure, PuTTY, etc. ), vous constaterez parfois que l'un d'eux ne prend pas en charge le même protocole que les autres. Fondamentalement, il définit la négociation d'authentification et la création d'un flux de données multiplexé. Ce flux peut transporter un ou plusieurs (avec OpenSSH etControlMaster) sessions de terminal et zéro ou plusieurs tunnels (transfert des connexions de socket du local ou du distant vers l'autre côté; le transfert X11 est un cas spécial de transfert à distance). Il définit également des "sous-systèmes" qui peuvent être utilisés sur le flux; les sessions terminales sont le sous-système de base mais d'autres peuvent être définies. sftpen fait partie.
sshl'utilitaire utilise le protocole SSH pour communiquer avec sshdune autre machine. Son fonctionnement dépend de sa version (voir ci-dessus), mais l'essentiel est qu'il essaie de déterminer quelle version du protocole SSH utiliser, puis de sshdnégocier les méthodes d'authentification prises en charge, puis il essaie de vous authentifier à l'aide l'une de ces méthodes (demander le mot de passe de l'utilisateur distant / le mot de passe de la clé privée / la phrase S-Key si nécessaire), et en cas d'authentification réussie, configurez un flux multiplexé avec le sshd.
sshd, comme indiqué ci-dessus, implémente le côté serveur du protocole SSH.
sftpest un (actuellement, le seul standard) sous-système défini dans la plupart des sshdimplémentations. Lorsque le sous-système SFTP est demandé, se sshdconnecte sftp-serverà la session du sous-système; le sftpprogramme lui parle alors, de la même manière que pour ftples transferts de fichiers multiplexés sur le flux au lieu d'utiliser des connexions distinctes comme avec ftp.
sun'a rien à voir avec ssh, sshdou sftp, sauf dans la mesure où il peut y avoir des modules PAM pour organiser le flux multiplexé soit disponible dans l'enveloppe ou exécution du programme par celui - ci.
Merde, bat-moi encore. Réponse bien complète - votée.
Shadur
9
SSH (signifie «Secure SHell») est un protocole réseau décrit dans RFC4251 . sshl'utilitaire est un client SSH qui se connecte au démon SSH et présente "Secure SHell" à l'utilisateur. SFTP est un protocole de type FTP qui fonctionne sur une connexion SSH.
suLa commande n'utilise pas sshou sshden aucune façon, elle vous permet simplement d'exécuter des processus avec différents privilèges.
SSH est un protocole de communication sécurisée sur un réseau non sécurisé. Il permet le chiffrement de bout en bout de toutes les communications de sorte qu'il ne peut pas (de manière faisable) être intercepté et déchiffré.
ssh l'utilitaire est une implémentation du protocole. SFTP est un sous-système de ssh qui utilise le protocole pour le transfert sécurisé des mots de passe et des fichiers.
Jetez un œil au projet OpenSSH . Il contient toutes les informations que vous recherchez.
En bref, le protocole SSH permet la connexion sécurisée (cryptée) entre deux hôtes. L' sshutilitaire est un programme client pour se connecter à un système distant en utilisant le protocole SSH, et il a aussi beaucoup d'autres utilisations, comme le tunneling [inverse] / la redirection de port / ...
sshdc'est le logiciel serveur . Il fournit un démon qui répond aux requêtes SSH entrantes.
sun'a rien à voir avec ssh. Il est utilisé pour changer l'utilisateur actif (l'utilisation la plus fréquente qu'il deviendra root).
Réponses:
Le protocole SSH est défini par ce que les programmes
ssh
etsshd
acceptent. (Il existe une norme définie pour cela, mais c'est une chose après coup et est généralement ignoré lorsque l'une des implémentations ajoute de nouvelles fonctionnalités.) Puisqu'il existe plusieurs implémentations de celles-ci (OpenSSH, F-Secure, PuTTY, etc. ), vous constaterez parfois que l'un d'eux ne prend pas en charge le même protocole que les autres. Fondamentalement, il définit la négociation d'authentification et la création d'un flux de données multiplexé. Ce flux peut transporter un ou plusieurs (avec OpenSSH etControlMaster
) sessions de terminal et zéro ou plusieurs tunnels (transfert des connexions de socket du local ou du distant vers l'autre côté; le transfert X11 est un cas spécial de transfert à distance). Il définit également des "sous-systèmes" qui peuvent être utilisés sur le flux; les sessions terminales sont le sous-système de base mais d'autres peuvent être définies.sftp
en fait partie.ssh
l'utilitaire utilise le protocole SSH pour communiquer avecsshd
une autre machine. Son fonctionnement dépend de sa version (voir ci-dessus), mais l'essentiel est qu'il essaie de déterminer quelle version du protocole SSH utiliser, puis desshd
négocier les méthodes d'authentification prises en charge, puis il essaie de vous authentifier à l'aide l'une de ces méthodes (demander le mot de passe de l'utilisateur distant / le mot de passe de la clé privée / la phrase S-Key si nécessaire), et en cas d'authentification réussie, configurez un flux multiplexé avec lesshd
.sshd
, comme indiqué ci-dessus, implémente le côté serveur du protocole SSH.sftp
est un (actuellement, le seul standard) sous-système défini dans la plupart dessshd
implémentations. Lorsque le sous-système SFTP est demandé, sesshd
connectesftp-server
à la session du sous-système; lesftp
programme lui parle alors, de la même manière que pourftp
les transferts de fichiers multiplexés sur le flux au lieu d'utiliser des connexions distinctes comme avecftp
.su
n'a rien à voir avecssh
,sshd
ousftp
, sauf dans la mesure où il peut y avoir des modules PAM pour organiser le flux multiplexé soit disponible dans l'enveloppe ou exécution du programme par celui - ci.la source
SSH (signifie «Secure SHell») est un protocole réseau décrit dans RFC4251 .
ssh
l'utilitaire est un client SSH qui se connecte au démon SSH et présente "Secure SHell" à l'utilisateur. SFTP est un protocole de type FTP qui fonctionne sur une connexion SSH.su
La commande n'utilise passsh
ousshd
en aucune façon, elle vous permet simplement d'exécuter des processus avec différents privilèges.la source
SSH est un protocole de communication sécurisée sur un réseau non sécurisé. Il permet le chiffrement de bout en bout de toutes les communications de sorte qu'il ne peut pas (de manière faisable) être intercepté et déchiffré.
ssh l'utilitaire est une implémentation du protocole. SFTP est un sous-système de ssh qui utilise le protocole pour le transfert sécurisé des mots de passe et des fichiers.
su n'utilise pas le protocole ssh.
la source
Jetez un œil au projet OpenSSH . Il contient toutes les informations que vous recherchez.
En bref, le protocole SSH permet la connexion sécurisée (cryptée) entre deux hôtes. L'
ssh
utilitaire est un programme client pour se connecter à un système distant en utilisant le protocole SSH, et il a aussi beaucoup d'autres utilisations, comme le tunneling [inverse] / la redirection de port / ...sshd
c'est le logiciel serveur . Il fournit un démon qui répond aux requêtes SSH entrantes.su
n'a rien à voir avec ssh. Il est utilisé pour changer l'utilisateur actif (l'utilisation la plus fréquente qu'il deviendraroot
).la source