
Estoy aprendiendo AWS VPC donde asigno reglas de entrada/salida de NACL como se muestra a continuación: En este momento lo estoy haciendo para todas las IP
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
Me pregunto cómo funciona mi SSH, ya que la regla dice que primero se evaluará el número menor y, en la regla de salida, he negado SSH. ¿Alguien puede explicar cómo funciona realmente la regla en AWS?
Respuesta1
El tráfico SSH entrante está permitido porque la regla entrante n.º 100 (prácticamente se ignora la 200) y la regla saliente no coinciden con la conexión SSH ya establecida...
Residencia enDocumentación de AWS:
Las ACL de red no tienen estado, lo que significa que las respuestas al tráfico entrante permitido están sujetas a las reglas para el tráfico saliente (y viceversa).
- regla entrante
Según lo que veo, creo que tienes un orden incorrecto de las reglas.
Rule # Type Allow/Deny
100 All Traffic Allow
200 SSH Deny
* All Traffic Deny
Esto simplemente no tiene sentido ya que está permitiendo todo el tráfico con la regla 100, por lo que la regla 200 no se utilizará en ningún momento (el tráfico ya se permitirá según la regla 100, por lo que no "permanecerá" nada para la regla 200). Creo que tiene más sentido tener un orden diferente (en caso de que quieras denegar el servicio ssh:
Rule # Type Allow/Deny
100 SSH Deny
200 All Traffic Allow
* All Traffic Deny
- saliente
Aquí está el tráfico SSH con un número de regla inferior:
Rule # Type Allow/Deny
100 SSH Deny
200 All Traffic Allow
* All Traffic Deny
Esto negará el tráfico para SSH y para el resto se permitirá...
El tipo SSH es tráfico con el puerto TCP/22; normalmente se utiliza como puerto de destino. En caso de que se comunique con el servidor SSH, se está conectando a TCP/22 pero su puerto de origen es TCP/X, donde X está seleccionado "al azar" (en realidad no, pero para simplificar, digamos al azar), digamos >10000.
Una vez que el servidor responde a su conexión, el puerto de destino es "su" TCP/X, por lo que la regla no es necesaria para coincidir con este tráfico...
El tráfico saliente con destino TCP/22 sería la conexión que se inicia en el servidor con destino en algún otro dispositivo y que aún no ha establecido una conexión SSH.
Respuesta2
Está permitiendo que todo el tráfico ingrese a su host, pero negando la salida ssh desde él.
Hasta donde yo sé, las NACL no realizan una inspección profunda de paquetes. Lo que significa que los protocolos son simples alias de suspuertos asignados.
A menos que estés haciendo algo realmente extraño como intentar hacer sshdepuerto 22, su sesión ssh entrante debería estar bien.