[iptables] allow ping

allow ping [iptables] - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 03-07-2005 à 09:53:42    

Bonjour,
 
 
Je me suis monté un petit server il y a de ca quelques temps et me suis penché sur iptables afin de contrôler les entrées sorties un minimum entre le reseau local et internet.
Voilà déjà quelques temps que je galère avec iptables pour accepter les ping. Voici le script que j'execute actuellement pour mon firewall.
 

# Règles par défaut: on bloque toutes les entrées et on ouvre les sorties
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
 
# Flush (-F) de tables
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -F -t nat
 
# Forward de eth0 (reseau interne) à eth1 (internet).
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
 
# Forward des paquets des connections déjà existantes.
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACC$
 
# On accepte les paquets provenant de connexions existantes.
iptables -A INPUT -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# On autorise toutes les connexions en local (boucle locale et lan)
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
 
# Permet de rerouter les paquets vers le reseau local
iptables -A POSTROUTING -t nat -o eth1 -j MASQUERADE
 
# On refuse les paquets du reseau local sur eth1. (spoofing)
iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j DROP
iptables -A INPUT -i eth1 -s 127.0.0.0/8 -j DROP
 
# On ouvre le port 80 (http).
iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT
 
# On accepte les ping
iptables -A INPUT -i eth1 -p icmp -j ACCEPT
iptables -A OUTPUT -o eth1 -p icmp -j ACCEPT
#iptables -A OUTPUT -p icmp -j ACCEPT
#iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
#iptables -A OUTPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT
#iptables -A INPUT -p icmp -m icmp --icmp-type echo-reply   -j ACCEPT
 
 
iptables -A INPUT -p tcp --destination-port 443 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 8022 -j ACCEPT
 
# DHCPD (local)
iptables -A INPUT -i eth0 -p tcp --sport 68 --dport 67 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 68 --dport 67 -j ACCEPT
 
 
# MPD (local)
iptables -A INPUT -i eth0 -p tcp --dport 6600 -j ACCEPT
 
# NTPD (local)
iptables -A INPUT -i eth0 -p tcp --dport 123 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --dport 123 -j ACCEPT
 
# DNS
iptables -A INPUT -p udp -i eth0 --source-port 53 -j ACCEPT


Comme vous pourvez le constater, j'ai essayé plusieurs règles pour le ping, sans succés (bien plus encore mais écrasé au fur et à mesure)
 
iptables -L -n -v

Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination          
    0     0 ACCEPT     all  --  eth1   *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED  
   19  1215 ACCEPT     all  --  eth0   *       0.0.0.0/0            0.0.0.0/0            
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0            
    0     0 DROP       all  --  eth1   *       192.168.0.0/24       0.0.0.0/0            
    0     0 DROP       all  --  eth1   *       127.0.0.0/8          0.0.0.0/0            
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80  
    0     0 ACCEPT     icmp --  eth1   *       0.0.0.0/0            0.0.0.0/0            
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:443  
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:8022  
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp spt:68 dpt:67  
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp spt:68 dpt:67  
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:6600  
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:123  
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp dpt:123  
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp spt:53  
 
Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination          
    0     0 ACCEPT     all  --  eth0   eth1    0.0.0.0/0            0.0.0.0/0            
    0     0 ACCEPT     all  --  eth1   eth0    0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED  
 
Chain OUTPUT (policy ACCEPT 10 packets, 1318 bytes)
 pkts bytes target     prot opt in     out     source               destination          
    0     0 ACCEPT     icmp --  *      eth1    0.0.0.0/0            0.0.0.0/0    


 

traceroute to ridercrazy.com (82.239.137.246), 64 hops max, 44 byte packets
 1  giga-2.enst.fr (137.194.2.254)  0.231 ms  0.188 ms  0.177 ms
 2  gw-enst-free.enst.fr (137.194.4.253)  0.393 ms  0.337 ms  0.369 ms
 3  gw-free-th2.enst.fr (137.194.4.2)  1.242 ms  1.764 ms  1.406 ms
 4  th2-6k-1-po50.intf.router.proxad.net (212.27.51.201)  1.872 ms  1.401 ms  1.390 ms
 5  lyon-6k-1-po52.intf.router.proxad.net (212.27.51.198)  7.910 ms  8.450 ms  7.471 ms
 6  marseille-6k-1-v804.intf.routers.proxad.net (212.27.50.101)  12.938 ms  12.219 ms  12.140 ms
 7  montpellier-6k-1-v802.intf.routers.proxad.net (212.27.50.93)  14.848 ms  14.570 ms  15.309 ms
 8  fac34-5.dslg.proxad.net (213.228.12.38)  15.582 ms  15.769 ms  15.104 ms
 9  * * *


 
J'aimerais beaucoup y arriver sans avoir à utiliser  

iptables -A INPUT -p tcp --destination-port 25 --syn -j ACCEPT


merci pour votre aide et n'hésitez à me conseiller si vous voyez des incohérences dans mes règles ou autre, je débute ;)


Message édité par RiderCrazy le 03-07-2005 à 09:55:15
Reply

Marsh Posté le 03-07-2005 à 09:53:42   

Reply

Marsh Posté le 03-07-2005 à 12:53:32    

tu dois laisser passer le protocole ICMP
 
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A INPUT  -p icmp  -j ACCEPT

Reply

Marsh Posté le 03-07-2005 à 12:59:42    

Par contre, il me semble qu'il vaut mieux flusher et detruire les regles de iptables en premier. Parce que là, je ne suis pas sûr que tes regles par default (DROP) soient actives :)
Des tutos:
http://christian.caleca.free.fr/netfilter
http://olivieraj.free.fr/fr/linux/ [...] /firewall/

Reply

Marsh Posté le 03-07-2005 à 13:00:06    

déjà fait :/ (pour l'icmp)
 
sinon, pour le flush, ca me paraissait bizarre aussi cet ordre mais je l'ai trouvé dans cet ordre sur internet... j'ai déjà tenté de changer mais ca n'avait rien donné. je réessaye avec les modifs apportés depuis


Message édité par RiderCrazy le 03-07-2005 à 13:01:33
Reply

Marsh Posté le 03-07-2005 à 13:02:59    

quels ping ?
 
"de" ou "vers" ta machine ?
 
quelle interface ?


Message édité par miminou le 03-07-2005 à 13:03:19
Reply

Marsh Posté le 03-07-2005 à 13:03:18    

Toujours pareil...

Reply

Marsh Posté le 03-07-2005 à 13:03:43    

t'as des regles qui serevent a rien
 
t'acceptes tout en local
 
iptables -A INPUT -i eth0 -j ACCEPT  
 
puis tu réaccteptes au compte goutte apres.


---------------
Bitcoin, Magical Thinking, and Political Ideology
Reply

Marsh Posté le 03-07-2005 à 13:04:27    

d'internet vers la machine
j'utilise http://www.tracert.com/cgi-bin/trace.pl pour vérifier

Reply

Marsh Posté le 03-07-2005 à 13:05:25    

farib a écrit :

t'as des regles qui serevent a rien
 
t'acceptes tout en local
 
iptables -A INPUT -i eth0 -j ACCEPT  
 
puis tu réaccteptes au compte goutte apres.


 :jap:

Reply

Marsh Posté le 03-07-2005 à 13:05:38    

fais gaffe aussi que le -A c'est ADD et non le -I de INSERT
 


---------------
Bitcoin, Magical Thinking, and Political Ideology
Reply

Marsh Posté le 03-07-2005 à 13:05:38   

Reply

Marsh Posté le 03-07-2005 à 13:06:55    

iptables -A OUTPUT -p icmp -j ACCEPT
 
ca marche pas ?

Reply

Marsh Posté le 03-07-2005 à 13:09:43    

farib a écrit :

fais gaffe aussi que le -A c'est ADD et non le -I de INSERT


C'est important avec mes règles ?

miminou a écrit :

iptables -A OUTPUT -p icmp -j ACCEPT
 
ca marche pas ?


non
 
edit: enfin, ca marche pas dans le sens ou je ping pas plus....
sinon, j'ai pas d'erreurs :o


Message édité par RiderCrazy le 03-07-2005 à 13:10:38
Reply

Marsh Posté le 03-07-2005 à 13:18:30    

Citation :

Chain INPUT (policy DROP 109 packets, 5264 bytes)
 pkts bytes target     prot opt in     out     source               destination          
   19  1569 ACCEPT     all  --  eth1   *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED  
 1181 69015 ACCEPT     all  --  eth0   *       0.0.0.0/0            0.0.0.0/0            
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0            
    0     0 DROP       all  --  eth1   *       192.168.0.0/24       0.0.0.0/0            
    0     0 DROP       all  --  eth1   *       127.0.0.0/8          0.0.0.0/0            
    2   120 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80  
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:443  
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:8022  
  21  1736 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0          


et

Citation :

Chain OUTPUT (policy ACCEPT 653 packets, 155K bytes)
 pkts bytes target     prot opt in     out     source               destination          
   20  1680 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0  


c'est pourtant clair...
mais ca marche pas... :/

Reply

Marsh Posté le 03-07-2005 à 13:28:06    

Flushe et detruis toutes tes regles et verifie si le ping marche (sans recrée de regles).  
Ensuite, DROP tout par defaut, rajoute les autorisations pour les states RELATED et ESTABLISHED puis le proto icmp

Reply

Marsh Posté le 03-07-2005 à 15:04:39    

Ping ok sans regles...
toujours pareil avec le reste :/

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed