
Eu tenho um EC2 com sub-rede pública e o tráfego está fluindo pelo gateway da Internet.
Agora, tenho um requisito como bloquear todo o tráfego de saída no EC2.
Tentei restringir o tráfego nas Network ACL's.
Eu permiti a porta ssh com 22 e o número da regra como 100.
Em seguida, bloqueei todo o tráfego com a opção de negação e a regra número 200.
Fiz a alteração acima nas regras de saída das ACLs de rede anexadas ao VPC.
Mas depois de aplicar isso no EC2, não consigo fazer ssh também. O login não está acontecendo.
Como faço para conseguir isso? Quero bloquear todo o tráfego de saída, mas o ssh deve acontecer.
Responder1
As ACLs de rede na AWS não têm estado, portanto, você precisa gerenciar o tráfego de entrada e de saída. Ao bloquear todo o tráfego diferente de 22, você bloqueou todas as conexões de saída, a menos que seu cliente SSH esteja usando a porta de saída 22 (o que é improvável).
Dehttps://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html#nacl-basics:
NACLs não têm estado, o que significa que as informações sobre o tráfego enviado ou recebido anteriormente não são salvas. Se, por exemplo, você criar uma regra NACL para permitir tráfego de entrada específico para uma sub-rede, as respostas a esse tráfego não serão permitidas automaticamente. Isso contrasta com a forma como os grupos de segurança funcionam. Os grupos de segurança têm estado, o que significa que as informações sobre o tráfego enviado ou recebido anteriormente são salvas. Se, por exemplo, um grupo de segurança permitir tráfego de entrada para uma instância do EC2, as respostas serão automaticamente permitidas, independentemente das regras do grupo de segurança de saída.
Em vez disso, você deve examinar os grupos de segurança, que têm estado e, portanto, permitirão o trecho de resposta de saída de uma conexão de entrada. Você pode usar isso para bloquear todas as entradas, exceto 22, e todas as saídas (quando iniciadas no EC2).
Além disso: se você só precisa de SSH neste EC2 e nenhum outro tráfego de entrada, você deverealmenteveja o Session Manager (parte do Systems Manager). Isso usa um agente no EC2 para fornecer acesso shell sem expor o tráfego à Internet, apenas serviços AWS via NAT. Portanto, não são necessárias portas de entrada!https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html