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 comoid_rsaouid_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.
- O servidor envia um pacote de dados aleatórios cifrados.
- A Private Key utiliza algoritmos complexos para “assinar” ou decifrar esse pacote localmente.
- 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:
- Gerar um novo par de chaves.
- Remover a Chave Pública correspondente à chave privada perdida de todos os ficheiros
authorized_keysnos 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.