Use iptables para bloquear la conexión local


0

Deseo bloquear todas las conexiones (locales y remotas) a un servicio que se ejecuta en un puerto en particular, digamos el puerto 1000.

He intentado el siguiente comando:

iptables -I INPUT 1 -p tcp --dport 9999 -j DROP

con y sin -i lo, pero aún puedo conectarme al servicio usando

nc localhost 9999.


Resultado de iptables --list:

Chain INPUT (policy DROP)
target     prot opt source               destination         
DROP       tcp  --  anywhere             anywhere             tcp dpt:9999
ACCEPT     all  --  anywhere             anywhere            
DROP       all  --  anywhere             loopback/8          
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
LOG        all  --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: "

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

¿Qué dice esto? iptables --list INPUT
cybernard

El bloqueo lo es una verdadera idea terrible. lo se usa en Nix para la comunicación entre procesos, es mejor dejarlo solo.
MariusMatutiae

@MariusMatutiae: De hecho, deseo evitar que procesos sin privilegios se comuniquen con este. Tengo la intención de forzar toda comunicación con este proceso a través de un socket Unix.
Samir Jindel

En la línea 2, acepta todo en cualquier lugar después de que el resto de sus reglas se ignoran en la cadena de entrada. RELACIONADO, ESTABLECIDO debe ser el primero en la cadena de entrada.
cybernard el

Respuestas:


1

pasando de 127.0.0.1 a lo que pasa adelante

A nivel local puede que tenga que agregar:

iptables -I ADELANTE 1 -p tcp -m tcp --dport 1000 -j DROP


2
No funciona :(.
Samir Jindel

@SamirJindel Obviamente necesitamos ver iptables --list
cybernard

Nota: Si bloquea el puerto 80 para www, apache aún se iniciará, pero no podrá comunicarse con él.
cybernard

Pruébelo sin el -m tcp
cybernard

y mantenga su regla en la cadena INPUT al mismo tiempo,
cybernard

0

Ejecute los siguientes comandos.

iptables -I INPUT -p tcp --dport 1000 -j DROP

servicio iptables guardar

Verifique las reglas de actualizaciones usando iptables -L


Eso es exactamente lo que ya intenté ... sin éxito.
Samir Jindel

Por favor agregue lo mismo en / etc / sysconfig / iptables
Mobin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.