6 votes

IPtables bloque le port 8080 mais pas pour localhost

Actuellement, j'ai une application qui s'exécute sur le serveur 8080 et qui est gérée par le mod_proxy.

    <Location /hudson>
            Order allow,deny
            Allow from all
            ProxyPass http://localhost:8080/hudson
            ProxyPassReverse http://localhost:8080/hudson
    </Location>

J'ai besoin de bloquer TCP 8080 mais pas pour le localhost, comment faire avec IPtables ?

15voto

Dangph Points 5561

Cela pourrait fonctionner :

iptables -A INPUT ! -s 127.0.0.1 -p tcp -m tcp --dport 8080 -j DROP

7voto

Joshua D'Alton Points 418

Vous pouvez essayer ce qui suit :

// accept all tcp on port 8080 from localhost  
iptables -I INPUT 1 -i lo -p tcp --dport 8080 -j ACCEPT  

[...] all your other rules  
// drop all other packets  
iptables -A INPUT -j DROP  

Si vous souhaitez autoriser également une (ou plusieurs) IP externe/autre, vous pouvez utiliser ceci :

// accept tcp on port 8080 from allowed_ip  
iptables -I INPUT 3 -i eth0 -p tcp --dport 8080 -s allowed_ip -j ACCEPT

Faites-moi savoir comment ça se passe :)

1voto

Sonamor Points 212

Une autre approche : dans le serveur à l'écoute 8080, lier seulement à localhost : Pour apache, cela ressemble à ce qui suit :

Listen 127.0.0.1:8080
<VirtualHost 127.0.0.1:8080>
...
</VirtualHost>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X