Me gustaría configurar mi VPS de la forma en que SOLO acepta conexiones externas en el puerto 22 (donde escucha sshd) y solicitudes ICMP. Todo lo demás desde el exterior debe ser rechazado. Dentro del servidor, todo debería estar permitido. ¿Las siguientes reglas crean el comportamiento deseado?
iptables -A INPUT --jump ACCEPT --protocol all --source 127.0.0.1
iptables -A INPUT --jump ACCEPT --protocol tcp --dport 22
iptabels -A INPUT --jump ACCEPT --protocol icmp
iptables -A INPUT --jump ACCEPT --match state --state ESTABLISHED,RELATED
iptables -A INPUT --jump REJECT --protocol all
No estoy completamente seguro de si las reglas ACEPTAR "ganarán" en el último RECHAZO general
--source 127.0.0.1
para determinar si un paquete es seguro de aceptar. Ver serverfault.com/a/825231/4131Respuestas:
Estás en lo correcto.
Las reglas se procesarán en orden de línea del archivo. Si hay una coincidencia para una regla, no se procesarán otras reglas para ese paquete IP en su caso.
http://en.wikipedia.org/wiki/Iptables
fuente