
Estou aprendendo AWS VPC onde estou atribuindo regras de entrada/saída NACL conforme abaixo: No momento estou fazendo para todos os IPs
Rule # Type Allow/Deny
100 All Traffic Allow
200 SSH Deny
* All Traffic Deny
Outbound
Rule # Type Allow/Deny
100 SSH Deny
200 All Traffic Allow
* All Traffic Deny
Estou me perguntando como meu SSH está funcionando, pois a regra diz que um número menor será avaliado primeiro e, na regra de saída, neguei o SSH. Alguém pode explicar como a regra realmente funciona na AWS?
Responder1
O tráfego SSH de entrada é permitido porque a regra de entrada nº 100 (200 é praticamente ignorada) e a regra de saída não corresponde à conexão SSH já estabelecida...
Baseado emDocumentação da AWS:
As ACLs de rede não têm estado, o que significa que as respostas ao tráfego de entrada permitido estão sujeitas às regras do tráfego de saída (e vice-versa).
- Regra de entrada
Com base no que vejo, acho que você entendeu a ordem errada das regras.
Rule # Type Allow/Deny
100 All Traffic Allow
200 SSH Deny
* All Traffic Deny
Isso simplesmente não faz sentido, pois você está permitindo todo o tráfego com a regra 100, para que a regra 200 não seja utilizada em nenhum momento (o tráfego já será permitido com base na regra 100, portanto, nada "permanecerá" para a regra 200). Acho que mais sentido tem uma ordem diferente (caso você queira negar o serviço ssh:
Rule # Type Allow/Deny
100 SSH Deny
200 All Traffic Allow
* All Traffic Deny
- Saída
Aqui está o tráfego SSH com número de regra inferior:
Rule # Type Allow/Deny
100 SSH Deny
200 All Traffic Allow
* All Traffic Deny
Isto negará o tráfego para SSH e para o resto será permitido...
O tipo SSH é o tráfego com porta TCP/22 - geralmente usada como porta de destino. Caso você entre em contato com o servidor SSH, você está se conectando ao TCP/22, mas sua porta de origem é TCP/X, onde X é "aleatoriamente" (na verdade não, mas para simplificar, digamos aleatoriamente) selecionado, digamos> 10000.
Uma vez que o servidor responde à sua conexão, a porta de destino é "seu" TCP/X, portanto a regra não é necessária para corresponder a esse tráfego ...
O tráfego de saída com destino TCP/22 seria a conexão iniciada no servidor com destino em algum outro dispositivo e ainda não estabelecida a conexão SSH.
Responder2
Você está permitindo todo o tráfego em seu host, mas negando a saída de ssh dele.
Até onde sei, os NACLs não fazem inspeção profunda de pacotes. O que significa que os protocolos são simples apelidos para seusportas atribuídas.
A menos que você esteja fazendo algo realmente bizarro, como tentar fazer sshdeporta 22, sua sessão ssh de entrada deve funcionar bem.