SEC06-BP03 Reduzir o gerenciamento manual e o acesso interativo - AWS Well-Architected Framework

SEC06-BP03 Reduzir o gerenciamento manual e o acesso interativo

Use a automação para realizar tarefas de implantação, configuração, manutenção e investigação sempre que possível. Considere usar o acesso manual aos recursos de computação em casos de procedimentos de emergência ou em ambientes seguros (sandbox) quando a automação não estiver disponível.

Resultado desejado: scripts programáticos e documentos de automação (runbooks) capturam ações autorizadas em seus recursos de computação. Esses runbooks são iniciados automaticamente, por meio de sistemas de detecção de alterações, ou manualmente, quando a avaliação humana é necessária. O acesso direto aos recursos de computação só é disponibilizado em situações de emergência quando a automação não está disponível. Todas as atividades manuais são registradas em log e incorporadas a um processo de análise para melhorar continuamente os recursos de automação.

Antipadrões comuns:

  • Usar o acesso interativo a instâncias do Amazon EC2 com protocolos como SSH ou RDP.

  • Manter logins de usuários individuais, como /etc/passwd ou usuários locais do Windows.

  • Compartilhar uma senha ou chave privada para acessar uma instância entre vários usuários.

  • Instalar software e criar ou atualizar manualmente arquivos de configuração.

  • Atualizar ou corrigir manualmente o software.

  • Fazer login em uma instância para solucionar problemas.

Benefícios do estabelecimento desta prática recomendada: a realização de ações com automação ajuda a reduzir o risco operacional de alterações indesejadas e configurações incorretas. A remoção do uso do Secure Shell (SSH) e do Remote Desktop Protocol (RDP) para acesso interativo reduz o escopo do acesso aos seus recursos de computação. Isso elimina um caminho comum para ações não autorizadas. Capturar suas tarefas de gerenciamento de recursos de computação em documentos de automação e scripts programáticos oferece um mecanismo para definir e auditar todo o escopo das atividades autorizadas em um nível de detalhe refinado.

Nível de exposição a riscos se esta prática recomendada não for estabelecida: médio

Orientações para a implementação

Fazer login em uma instância é uma abordagem clássica para administração do sistema. Após a instalação do sistema operacional do servidor, os usuários normalmente fazem login manualmente para configurar o sistema e instalar o software desejado. Durante o ciclo de vida do servidor, os usuários podem fazer login para realizar atualizações de software, aplicar patches, alterar configurações e solucionar problemas.

No entanto, o acesso manual apresenta vários riscos. Ele exige um servidor que escute as solicitações, como um serviço SSH ou RDP, e possa fornecer um possível caminho para o acesso não autorizado. Também aumenta o risco de erro humano associado à execução de etapas manuais. Isso pode resultar em incidentes de workload, corrupção ou destruição de dados ou outros problemas de segurança. O acesso humano também exige proteções contra o compartilhamento de credenciais, criando uma sobrecarga adicional de gerenciamento. 

Para mitigar esses riscos, você pode implementar uma solução de acesso remoto baseada em agente, como o AWS Systems Manager. O AWS Systems Manager Agent (SSM Agent) inicia um canal criptografado e, portanto, não depende da escuta de solicitações iniciadas externamente. Considere configurar o SSM Agent para estabelecer esse canal em um endpoint da VPC.

O Systems Manager oferece controle refinado sobre como você pode interagir com as instâncias gerenciadas. Você define as automações a serem executadas, quem pode executá-las e quando elas podem ser executadas. O Systems Manager pode aplicar patches, instalar software e fazer alterações na configuração sem acesso interativo à instância. O Systems Manager também pode fornecer acesso a um shell remoto e registrar em log cada comando invocado, bem como a respectiva saída, durante a sessão para logs e ao Amazon S3. O AWS CloudTrail registra invocações de APIs do Systems Manager para inspeção.

Etapas da implementação

  1. Instale o AWS Systems Manager Agent (SSM Agent) nas instâncias do Amazon EC2. Verifique se o SSM Agent está incluso e foi iniciado automaticamente como parte da configuração básica da AMI.

  2. Verifique se os perfis do IAM associados aos perfis de instância do EC2 incluem a política gerenciada do IAM AmazonSSMManagedInstanceCore.

  3. Desabilite o SSH, o RDP e outros serviços de acesso remoto em execução nas instâncias. Você pode fazer isso executando scripts configurados na seção de dados do usuário dos seus modelos de lançamento ou criando AMIs personalizadas com ferramentas como o EC2 Image Builder.

  4. Verifique se as regras de entrada do grupo de segurança aplicáveis às instâncias do EC2 não permitem acesso na porta 22/tcp (SSH) ou na porta 3389/tcp (RDP). Implemente a detecção e o alerta de grupos de segurança configurados incorretamente usando serviços como o AWS Config.

  5. Defina automações, runbooks e comandos de execução apropriados no Systems Manager. Use políticas do IAM para definir quem pode realizar essas ações e as condições sob as quais elas são permitidas. Teste essas automações minuciosamente em um ambiente que não seja de produção. Invoque essas automações quando necessário, em vez de acessar a instância de forma interativa.

  6. Use o AWS Systems Manager Session Manager para fornecer acesso interativo às instâncias quando necessário. Ative o registro em log de atividades da sessão para manter uma trilha de auditoria no Amazon CloudWatch Logs ou no Amazon S3

Recursos

Práticas recomendadas relacionadas:

Exemplos relacionados:

Ferramentas relacionadas:

Vídeos relacionados: