No sistema de criptografia assimétrica do SSH, a Private Key (Chave Privada) é o componente mais sensível e importante do par de chaves. Enquanto a chave pública é a “fechadura” instalada nos servidores, a chave privada é a “chave mestra” física que permanece exclusivamente com o utilizador. Ela é utilizada para criar assinaturas digitais que provam a identidade do utilizador perante o servidor, sem nunca revelar o seu conteúdo durante a transmissão.

1. Natureza e Sigilo Absoluto

A característica técnica fundamental da Private Key é que ela nunca deve sair do computador de origem. Ao contrário de uma palavra-passe, que é enviada (mesmo que cifrada) para o servidor validar, a chave privada nunca viaja pela rede.

  • Armazenamento Local: Geralmente guardada na pasta oculta ~/.ssh/ com nomes como id_rsa ou id_ed25519.
  • Identidade Digital: Perder a chave privada é o equivalente a perder a sua identidade digital no ecossistema de servidores da empresa; qualquer pessoa com acesso a este ficheiro pode fingir ser você.

2. O Papel na Autenticação (A “Assinatura”)

A chave privada não “abre” a ligação de forma direta; ela resolve um desafio matemático.

  1. O servidor envia um pacote de dados aleatórios cifrados.
  2. A Private Key utiliza algoritmos complexos para “assinar” ou decifrar esse pacote localmente.
  3. O resultado é enviado de volta. O servidor usa a chave pública para confirmar que apenas a chave privada correspondente poderia ter gerado aquela assinatura específica.

3. Proteção por Passphrase (Criptografia em Repouso)

Como a chave privada é um ficheiro no disco, ela é vulnerável se o computador for roubado ou invadido. Para mitigar isto, utiliza-se uma Passphrase:

  • Cifragem do Ficheiro: A chave privada é guardada no disco cifrada por uma frase secreta definida pelo utilizador.
  • Desbloqueio em Memória: Quando o utilizador executa o SSH, ele introduz a passphrase para “desbloquear” a chave na memória RAM. O ficheiro no disco continua protegido.
  • Diferença de Password: A passphrase protege a chave localmente, enquanto a password do servidor protege a conta remotamente.

4. Gestão de Permissões (O Erro de Segurança)

O software cliente SSH possui uma proteção interna rigorosa para a Private Key. Devido à sua importância, o SSH recusa-se a utilizar chaves que tenham permissões de leitura para outros utilizadores do sistema.

  • Permissão Correta: Deve ser 600 (leitura e escrita apenas para o dono).
  • Erro Comum: Se tentar usar uma chave com permissão 644 (leitura pública), o SSH emitirá o aviso: “Permissions for ‘id_rsa’ are too open. It is required that your private key files are NOT accessible by others.”

5. O SSH Agent (Facilitador de Uso)

Para evitar que o utilizador tenha de digitar a passphrase da Private Key em cada comando ssh ou scp, utiliza-se o ssh-agent:

  • O agente é um processo que guarda a chave privada já desencriptada na memória RAM.
  • O utilizador “adiciona” a chave uma vez (ssh-add) e, a partir daí, o agente negoceia as assinaturas com os servidores de forma automática e segura.

6. Revogação em Caso de Compromisso

Se houver a suspeita de que uma Private Key foi copiada ou exposta (ex: portátil perdido ou servidor de backups comprometido), o procedimento de segurança é imediato:

  1. Gerar um novo par de chaves.
  2. Remover a Chave Pública correspondente à chave privada perdida de todos os ficheiros authorized_keys nos servidores. Uma vez removida a chave pública, a chave privada roubada torna-se inútil, pois não haverá mais uma “fechadura” compatível para validar as suas assinaturas.