Estou recebendo erros ao tentar me conectar à minha instância do EC2 usando SSH. Como posso usar o fluxo de trabalho de automação AWSSupport-TroubleshootSSH para solucionar problemas de conexão SSH?

4 minuto de leitura
0

Quando eu faço login na minha instância do Amazon Elastic Compute Cloud (Amazon EC2) via SSH com mensagens detalhadas ativadas, recebo erros, como “Permissão negada” ou “Conexão recusada”. Como posso usar o documento de automação AWSSupport-TroubleshootSSH para solucionar problemas de conexão SSH?

Breve descrição

O AWSSupport-TroubleshootSSH instala a ferramenta Amazon EC2Rescue. Em seguida, ele verifica e corrige alguns problemas que causam erros de conexão remota ao se conectar a uma máquina Linux por meio de SSH. Execute a automação AWSSupport-TroubleshootSSH para reparar automaticamente problemas por sub-rede, buckets do S3 ou perfil do IAM.

Requisitos do sistema para usar o EC2Rescue para Linux

O EC2Rescue para Linux requer uma instância Linux do Amazon EC2 que atenda aos seguintes pré-requisitos:

Sistemas operacionais compatíveis

  • Amazon Linux 2
  • Amazon Linux 2016.09+
  • SLES 12+
  • RHEL 7+
  • Ubuntu 16.04+

Requisitos de software

  • Python 2.7.9+ ou 3.2+

Observação: para saber mais sobre mensagens detalhadas ou solucionar outros tipos de mensagens de erro, consulte Por que não consigo me conectar à minha instância do Linux do Amazon EC2 usando SSH?

Resolução

Antes de começar:

  • copie o ID da instância do Amazon EC2 que você deseja solucionar. Você precisa do ID da instância para executar o documento de automação.
  • (Opcional) Copie o ID de uma sub-rede na mesma zona de disponibilidade da sua instância inacessível do Amazon EC2. A instância do EC2Rescue é instalada nessa sub-rede. Se você não especificar uma sub-rede, o documento de automação criará uma nova VPC temporária em sua conta da AWS. Verifique se sua conta da AWS tem pelo menos uma VPC disponível. Por padrão, você pode criar cinco VPCs em uma região. Se você já criou cinco VPCs na região, a automação falhará sem alterar sua instância do Amazon EC2. Para obter mais informações, consulte VPC e sub-redes.
  • (Opcional) Crie e especifique um perfil do AWS Identity and Access Management (IAM) para automação. Se você não especificar esse perfil, o AWS Systems Manager Automation usará as permissões do usuário que executa esse documento. Para obter mais informações sobre a criação de funções para automação, consulte Usar o IAM para configurar perfis para automação.

Execute a automação AWSSupport-TroubleshootSSH a partir do console do AWS Systems Manager

  1. Abra o console do AWS Systems Manager.
  2. No painel de navegação, escolha Automação.
    Observação: se a página inicial do AWS Systems Manager abrir primeiro, escolha o ícone do menu para abrir o painel de navegação e, em seguida, escolha Automação.
  3. Escolha Executar automação.
  4. Digite AWSSupport-TroubleshootSSH no campo de pesquisa e pressione Enter.
  5. Selecione AWSSupport-TroubleshootSSH nos resultados da pesquisa.
  6. Na lista de documentos, escolha AWSSupport-TroubleshootSSH. O documento é propriedade da Amazon.
  7. Na seção Descrição, verifique se a Versão do documento está definida como Versão padrão no tempo de execução.
  8. Escolha Avançar.
  9. Na seção Executar documento de automação, escolha Execução simples.
  10. Na seção parâmetros de Entrada, insira os seguintes parâmetros:
    Em InstanceID, especifique o ID da instância inacessível. Em Ação, selecione FixAll.
    Em AllowOffline, selecione Verdadeiro.
    Observação: se esse parâmetro for definido como Falso e a instância não for gerenciada pelo Systems Manager, a automação falhará.
    (Opcional) Em SubnetID, especifique uma sub-rede em uma VPC existente na mesma zona de disponibilidade da instância do Amazon EC2 que você especificou. Por padrão, o Systems Manager cria uma nova VPC, mas você pode especificar uma sub-rede em uma VPC existente.
    (Opcional) Em S3BucketName, insira o nome de um bucket para o qual você tem permissões de gravação. Os logs de solução de problemas são enviados para esse bucket, se fornecidos.
    (Opcional) Em AutomationAssumeRole, especifique o perfil do IAM para essa execução. Se nenhum perfil for especificado, o AWS Systems Manager Automation usará as permissões do usuário que executa esse documento.
  11. Escolha Executar.
  12. Para monitorar o progresso da execução, escolha a automação em execução e, em seguida, escolha a guia Etapas. Quando a execução estiver concluída, escolha a guia Descrições e, em seguida, escolha Exibir saída para visualizar os resultados. Para exibir a saída de etapas individuais, escolha a guia Etapas e escolha Exibir saídas ao lado de uma etapa.

Execute a automação AWSSupport-TroubleshootSSH a partir da AWS Command Line Interface (AWS CLI)

aws ssm start-automation-execution --document-name "AWSSupport-TroubleshootSSH" --document-version "\$DEFAULT" --parameters '{"InstanceId":["i-0a241ed9caf16f01e"],"Action":["FixAll"],"AllowOffline":["True"],"SubnetId":["SelectedInstanceSubnet"]}' --region us-east-1

Para obter mais informações sobre a automação AWSSupport-TroubleshootSSH, consulte Remediação inteligente de RDP e SSH com ações da API de automação do AWS Systems Manager.