Quiero que iptables filtre solo una interfaz, eth0, que se enfrenta a WAN. ¿Cómo se puede hacer esto? Y quiero mantener abiertos los puertos ftp y ssh en eth0.
¡¡¡ADVERTENCIA!!! Haga "iptables -P ..." antes de "iptables -F". Si sus reglas actuales están configuradas para eliminar el tráfico de forma predeterminada, ejecutar -F lo bloqueará de su caja. Es por eso que mantener la política predeterminada para permitir y agregar específicamente una regla para descartar todo el resto del tráfico es la mejor práctica.
Coops
8
Algo como esto debería hacer el trabajo:
iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
Bastante acertado (aunque quizás sea un poco más agradable que "Dejar TODO" en la interfaz WAN, ¿eh?) - Escriba reglas para filtrar la interfaz que desea filtrar, y ACCEPTtodo lo demás en las otras interfaces.
voretaq7
4
La opción de especificar una interfaz en la regla de iptables es -i, por ejemplo: -i eth0.
Es muy simple cuando haces una iptablesregla, entonces tienes que especificar la interfaz. La opción para especificar la tarjeta LAN en la que iptablesdebería funcionar es-i
La última regla es rechazar cualquier otro paquete que no coincida con las 2 primeras reglas. Todas las reglas iptablesse ejecutan en el orden dado, por lo que la regla para rechazar paquetes es siempre la última.
Respuestas:
Entonces, para todas las interfaces, excepto una, desea aceptar todo el tráfico, y en eth0 desea eliminar todo el tráfico entrante, excepto ftp y ssh.
Primero, podríamos establecer una política de aceptar todo el tráfico por defecto.
Entonces, podríamos restablecer las reglas de su firewall.
Ahora podríamos decir que queremos permitir el tráfico entrante en eth0 que es parte de una conexión que ya permitimos.
También que queremos permitir conexiones ssh entrantes en eth0.
Pero que cualquier otra cosa entrante en eth0 debería descartarse.
Para obtener un poco más de profundidad, vea esta entrada wiki de CentOS .
FTP es más complicado que ssh ya que puede usar un puerto aleatorio, así que mira esta pregunta anterior .
fuente
Algo como esto debería hacer el trabajo:
fuente
ACCEPT
todo lo demás en las otras interfaces.La opción de especificar una interfaz en la regla de iptables es
-i
, por ejemplo:-i eth0
.fuente
Es muy simple cuando haces una
iptables
regla, entonces tienes que especificar la interfaz. La opción para especificar la tarjeta LAN en la queiptables
debería funcionar es-i
Seguir las reglas puede darte un buen ejemplo
La última regla es rechazar cualquier otro paquete que no coincida con las 2 primeras reglas. Todas las reglas
iptables
se ejecutan en el orden dado, por lo que la regla para rechazar paquetes es siempre la última.fuente