O que é SSH - o protocolo e o que é ssh - o utilitário?

15

O que é SSH - o protocolo?
O que é ssh- o utilitário unix e como ele funciona?

Como o protocolo SSH está relacionado ao SFTP?

O que é sshd?

O comando suusa sshou sshd?

Srikanth
fonte
Trabalho no Solaris e, apesar de já usar os comandos ssh, sftp e su há algum tempo, nunca entendi completamente como eles funcionam. Por favor, explique e me aponte para alguns bons recursos, onde eu posso aprender mais.
Srikanth

Respostas:

26

O protocolo SSH é definido pelo que os programas sshe sshdaceitam. (Existe um padrão definido para isso, mas é uma coisa posterior ao fato e é geralmente ignorado quando uma das implementações adiciona novos recursos.) Como existem várias implementações (OpenSSH, F-Secure, PuTTY etc.). ) ocasionalmente, você descobrirá que um deles não suporta o mesmo protocolo que os outros. Basicamente, ele define negociação de autenticação e criação de um fluxo de dados multiplexado. Esse fluxo pode transportar um ou mais (com OpenSSH eControlMaster) sessões de terminal e zero ou mais túneis (conexões de soquete de encaminhamento local ou remoto para o outro lado; o encaminhamento X11 é um caso especial de encaminhamento remoto). Ele também define "subsistemas" que podem ser usados ​​no fluxo; sessões de terminal são o subsistema básico, mas outras podem ser definidas. sftpé um desses.

ssho utilitário usa o protocolo SSH para conversar sshdem outra máquina. Como funciona depende de qual versão é (veja acima), mas o essencial é que ele tenta descobrir qual versão do protocolo SSH usar, depois sshdnegocia os métodos de autenticação suportados e tenta autenticar você usando um desses métodos (solicitando senha de usuário remoto / chave privada paasword / frase S-Key, conforme necessário) e, na autenticação bem-sucedida, configura um fluxo multiplexado com o sshd.

sshd, como dito acima, implementa o lado do servidor do protocolo SSH.

sftpé um subsistema (atualmente, o único padrão) definido na maioria das sshdimplementações. Quando o subsistema SFTP é solicitado, ele se sshdconecta sftp-serverà sessão do subsistema; o sftpprograma então fala com ele, da mesma forma que ftpcom transferências de arquivos multiplexadas no fluxo, em vez de usar conexões separadas como com ftp.

sunão tem nada a ver com ssh, sshdou sftp, a não ser na medida em que pode haver módulos PAM para organizar o fluxo multiplexado a estar disponível dentro do shell ou programa executado por ele.

geekosaur
fonte
Porra, me derrote de novo. Resposta bem abrangente - votada.
precisa saber é o seguinte
9

SSH (significa "Secure SHell") é um protocolo de rede descrito em RFC4251 . sshO utilitário é um cliente SSH que se conecta ao daemon SSH e apresenta "Secure SHell" ao usuário. SFTP é um protocolo semelhante ao FTP, que funciona através da conexão SSH.

suO comando não usa sshou sshdde qualquer forma, apenas permite executar processos com privilégios diferentes.

gelraen
fonte
6

SSH é um protocolo para comunicação segura através de uma rede insegura. Ele permite a criptografia de ponta a ponta de toda a comunicação, de forma que ela não possa (viável) ser interceptada e descriptografada.

ssh o utilitário é uma implementação do protocolo. SFTP é um subsistema do ssh que usa o protocolo para senha segura e transferência de arquivos.

su não usa o protocolo ssh.


fonte
5

Dê uma olhada no projeto OpenSSH . Tem todas as informações que você está procurando.

Resumidamente, o protocolo SSH permite a conexão segura (criptografada) entre dois hosts. O sshutilitário é um programa cliente para efetuar login em um sistema remoto usando o protocolo SSH, e também possui muitos outros usos, como tunelamento [reverso] / encaminhamento de porta / ...

sshdé o software do servidor . Ele fornece um daemon que responde às solicitações SSH recebidas.

sunão tem nada a ver com ssh. É usado para alterar o usuário ativo (o uso mais frequente que deve se tornar root).

Mr Shunz
fonte