Começar por uma comparação reproduzível
Um job fictício de fecho usa o alias batch. O operador liga-se com outro nome e conclui que a mesma chave devia funcionar. A comparação precisa de argumentos, ficheiros de configuração, conta local e valores efetivos. Define uma tabela com HostName, User, Port, IdentityFile, IdentityAgent e eventual ProxyJump. O objetivo é localizar diferenças que precedem uma tentativa de autenticação. Usa nomes e caminhos de exercício ao partilhar a análise. Um ficheiro que contém User deploy não demonstra que esse valor foi escolhido, sobretudo quando existem regras gerais e Includes anteriores.
Observar precedência e acumulação
No laboratório, ssh -G -F sobre um ficheiro controlado mostra User ops quando a regra geral surge primeiro e User deploy quando a específica passa para a frente. Acrescentar -l operator produz operator. Ao mesmo tempo, os dois IdentityFile continuam presentes porque esta diretiva acumula entradas. IdentitiesOnly yes não transforma a lista numa identidade única. O exercício compara valores impressos, sem abrir sessão. O runner desativa o agente, não usa a configuração pessoal e não inclui Match exec ou canonicalização que exija consulta de rede.
Distinguir destino, bastion e referência de confiança
O alias batch do laboratório aponta para 192.0.2.27 na porta 2222 e usa HostKeyAlias batch-id. O IP e a porta definem o destino de rede; o alias de chave altera o nome usado na consulta de confiança. Não são campos intercambiáveis. Se o acesso usar um bastion, avalia também o alias desse salto: as opções do destino não se aplicam geralmente ao jump host. Um erro de autenticação no bastion não deve levar diretamente a rodar a chave da conta final. Explica a sequência de identidades e contas antes de escolher a mitigação.
Tratar Include e Match como parte da execução
Os ficheiros correspondentes a um wildcard Include são processados por ordem lexical. Um default num ficheiro 10-default.conf pode obter User antes da regra em 20-batch.conf. Corrige a ordem ou o âmbito segundo a intenção e volta a observar. Não generalizes o laboratório controlado para ficheiros recebidos sem revisão: Match exec pode executar um comando local durante a avaliação. Não abrir sessão remota não significa que qualquer configuração seja passiva. Para reproduzir um incidente, usa apenas configuração compreendida e autorizada e conserva os argumentos que produziram a saída analisada.
Versão e decisão operacional
O cliente executado nesta revisão é OpenSSH 10.3p1 com LibreSSL 3.3.6. As notas oficiais consultadas identificam OpenSSH 10.5p1, publicado em 11 de agosto de 2026, e a opção nova ssh -Z para mostrar a ordem das chaves. Essa opção não foi executada no laboratório. Regista versão instalada e requisito de cada procedimento, sem assumir que o manual atual descreve todas as capacidades do executor. Resumo: compara valores efetivos, distingue opções acumuladas e confirma cada salto. A autenticação real e a política do destino continuam a precisar de validação autorizada.
Trocar a ordem dos blocos mudou User; os dois IdentityFile permaneceram na lista.
Armadilhas comuns
Última regra como vencedora; IdentitiesOnly como uma só chave; -G como prova de autenticação.
Tópicos relacionados: Ligação SSH e identidade do servidor · Autenticação por chave e conta remota · Configuração efetiva e reprodução de falhas
A configuração avaliada define a tentativa; o sucesso remoto exige evidência adicional.
Referência: ssh_config(5) · OpenSSH concepts and OpenBSD-current manuals consulted 2026-09-29; distribution defaults vary