Pular para o conteúdo principal

SSH

Conceitos

  • Utilizado para acesso remoto, tal qual o TELNET, mas de forma segura.
  • Autenticação e chaves assimétricas na conexão.
  • Atua na porta 22 - TCP.
  • Atualmente na versão SSH2.
  • Modelo de túnel seguro utilizado por outros serviços como Sftp.

Primeira etapa: Utiliza o par de chaves público/privada.

Segunda etapa: Ocorre a troca da chave de sessão(simétrica).

  • Cada sessão é uma chave de sessão diferente.
  • Os comandos circulam por essa sessão.

Geração de chave RSA

Para gerar um par de chaves (privada e pública):

ssh-keygen -t rsa -b 4096 -C "marcio@yahoo.com"

Para copiar a chave pública para um servidor:

ssh-copy-id marcio@servidor

Ou manualmente:

cat ~/.ssh/id_rsa.pub | ssh usuario@servidor "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Principais opções:

-t → Tipo da chave (ex.: rsa, ed25519).
-b → Tamanho da chave (ex.: 2048, 4096 bits).
-C → Comentário identificador.
-f → Define o nome/ caminho do arquivo gerado.

A chave pública (id_rsa.pub) pode ser adicionada ao servidor no arquivo ~/.ssh/authorized_keys para login sem senha.

Quando a autenticação ocorre sem senha, significa que a chave pública do cliente foi previamente adicionada ao arquivo ~/.ssh/authorized_keys no servidor. Assim, ao tentar se conectar, o cliente prova sua identidade usando a chave privada, e o servidor a valida com a chave pública armazenada, permitindo o acesso sem necessidade de senha.

SSH

O arquivo ~/.ssh/known_hosts armazena as chaves públicas dos servidores aos quais o usuário já se conectou via SSH.
Ele é usado para verificar a autenticidade do servidor em conexões futuras, prevenindo ataques de Man-in-the-Middle (MITM).
Se a chave de um servidor mudar, o SSH alerta o usuário antes de permitir a conexão.

login

ssh kaleb@ip_da_maquina

Ferramentas: PuTTy