Prob acces internet + iptables - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 17-05-2004 à 13:59:09
g oublier de preciser certaines choses :  
ma carte eth0 est connecter a mon reseau local (10.0.0.1) 
ma carte eth1 est connecter au routeur (192.168.0.2) 
 
voila le msg d'erreur d'iptables : 
[IPTABLES DROP] : IN = OUT = eth0 src = 10.0.0.1 dst = 80.10.246.129 len=59 ttl=64 proto=udp 
 
Marsh Posté le 17-05-2004 à 14:01:18
tu configures eth1 et tu postes un message d'erreur de eth0 ?
Marsh Posté le 17-05-2004 à 14:07:00
en fait c eth1 qui communique avec le routeur mai iptables empeche la connexion de eth0 (reseau local) avec internet 
par contre le reseau local peu communique avec le routeur (ping concluant) 
en fait tou ce qui vien du net est bloker (voir le mess du dessu) 
pourtan j'ai verifie ma cfg iptable (g meme essaye de le coupe) mai je n'ai pa acces a internet a partir du serveur 
Marsh Posté le 17-05-2004 à 14:18:15
Je repete: tu nous montres un extrait de ta config sur eth1, et le message d'erreur parle de eth0.  
 
Traduction: poste ta config iptables en entier...
Marsh Posté le 17-05-2004 à 14:34:56
bon j ai fai le bourrin dsl un gro copier coller de ma cfg 
donc je recapitule ma structure reseau : 
mon serveur a 2 carte reseau eth0 (10.0.0.1) pour le reseau local et eth1 (192.168.0.2) qui va sur le routeur ADSL (192.168.0.1) 
le reseau local et le serveur ping san prob le routeur mai n'arrive pas a aller + loin 
 
 
config iptables : 
#!/bin/sh 
 
# Activation du forwarding 
echo 1 > /proc/sys/net/ipv4/ip_forward 
 
# Pas de spoofing 
if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ] 
then 
  for filtre in /proc/sys/net/ipv4/conf/*/rp_filter 
  do 
    echo 1 > $filtre 
  done 
fi 
 
# pas d'icmp (ping) 
  echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 
  echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts 
 
#chargement des modules 
modprobe ip_tables 
modprobe ip_nat_ftp 
modprobe iptable_filter 
modprobe iptable_nat 
 
# vider les règles existantes 
  iptables -F  
  iptables -X 
   
# Enregistrement des logs et refuser tous les paquets 
 iptables -N LOG_DROP 
 iptables -A LOG_DROP -j LOG --log-prefix '[IPTABLES DROP] : ' 
 iptables -A LOG_DROP -j DROP 
  
#enregistrement des logs et accepter les paquets 
 iptables -N LOG_ACCEPT 
 iptables -A LOG_ACCEPT -j LOG --log-prefix '[IPTABLES ACCEPT] : ' 
 iptables -A LOG_ACCEPT -j ACCEPT 
     
# on interdit tout 
iptables -P INPUT DROP 
iptables -P OUTPUT DROP 
iptables -P FORWARD DROP 
 
#on autorise tout sur la machine local (lo) 
iptables -A INPUT -i lo -j ACCEPT 
iptables -A OUTPUT -o lo -j ACCEPT 
 
# On accepte le trafic sur le réseau local 
iptables -A INPUT -s 10.0.0.0/8 -d 10.0.0.0/8 -j ACCEPT 
iptables -A OUTPUT -s 10.0.0.0/8 -d 10.0.0.0/8 -j ACCEPT 
iptables -A FORWARD -s 10.0.0.0/8 -d 10.0.0.0/8 -j ACCEPT 
 
# on accepte la resulution de noms (dns) 
iptables -A INPUT -i eth1 --protocol udp --source-port 53 -j ACCEPT 
iptables -A OUTPUT -o eth1 --protocol udp --destination-port 53 -j ACCEPT 
 
iptables -A INPUT -i eth1 --protocol tcp --source-port 53 -j ACCEPT 
iptables -A OUTPUT -o eth1 --protocol tcp --destination-port 53 -j ACCEPT 
 
# Proxy transparent,tout ce qui va vers le port 80 est rerouté sur le 3128 
# Penser à modifer squid.conf 
##iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128 
 
 
#iptables -t nat -A PREROUTING  -s 10.0.0.0/255.0.0.0 -p tcp -m tcp --dport 80 -j REDIRECT --to-port 3128 
 
 
# On rejete tout ce qui est Netbios 
iptables -N NETBIOS 
iptables -A INPUT -p udp --sport 137:139 -j NETBIOS 
iptables -A NETBIOS -j LOG --log-prefix '[IPTABLES NETBIOS]' 
iptables -A NETBIOS -j DROP 
 
 
 
# on accepte le web  
iptables -A OUTPUT -o eth1 -m state --state NEW,ESTABLISHED -p tcp --dport 80 -j ACCEPT 
iptables -A INPUT -i eth1 -m state --state ESTABLISHED -p tcp --sport 80 -j ACCEPT 
#iptables -A INPUT -s 80.15.27.195 -m state --state NEW,ESTABLISHED -p tcp --sport 80 -j ACCEPT 
 
 
iptables -A OUTPUT -o eth1 -m state --state NEW,ESTABLISHED -j ACCEPT 
iptables -A INPUT -i eth1 -m state --state ESTABLISHED -j ACCEPT 
#iptables -A INPUT -i eth1 -m state --state NEW,ESTABLISHED -j ACCEPT 
 
 
 
#on autorise le LAN à aller sur le web 
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT 
iptables -A FORWARD -o eth0 -i eth1 -j ACCEPT 
 
# Masquerade d'adresses 
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE 
 
 
#vers les logs 
iptables -A INPUT -j LOG_DROP 
iptables -A OUTPUT -j LOG_DROP 
iptables -A FORWARD -j LOG_DROP 
 
echo -e "\n Config IpTables Terminée \n" 
 
Marsh Posté le 17-05-2004 à 15:04:38
J'arrive toujours pas à comprendre ton problèmes. Tu ne peux pas te connecter à Internet depuis la machine firewall ? Dans ce cas, que viens faire un log de eth0 (ton reseau local) dans cette histoire ? 
 
Quand tu dis que tu "coupes" le firewall, penses tu à remettre les policies à ACCEPT ? (c'est mieux pour faire des tests). 
 
Marsh Posté le 17-05-2004 à 15:07:33
moi non plus jarrive pas a comprendre pkoi il me blok des paquet de eth0 alor que c eth1 qui doit avoir acces au net  
 
ce que j'enten par coupe le firewall c : cd /etc/rc.d/init.d ./iptables stop
Marsh Posté le 17-05-2004 à 15:09:25
le pire c ke javai acces au net avant a partir du serveur et que depuis peu je n'y ai plus acces (alor ke g n'ai rien touche a ce nivo )
Marsh Posté le 17-05-2004 à 15:18:11
Apres avoir coupé le firewall, rétabli les regles par défaut à ACCEPT. ( # iptables -P INPUT ACCEPT etc..) 
 
Pour en etre sur: 
#iptables -L 
et tout est à accept. 
 
Puis tu charges les regles une à une. Quand ca marche plus, t'as trouvé d'ou vient le probleme.
Marsh Posté le 17-05-2004 à 13:50:10
Bonjour,
j'ai un probleme pour acceder a internet avec mon serveur Linux (redhat 8.0).
Le serveur est relier a un routeur adsl et les 2 communique sans probleme. Par contre, le serveur n a plus acces a internet car iptables rejette tou ce qui provient de mon serveur DNS.
je ne c po pkoi il me fai ca car j'avai acces a internet a partir du serveur et je n'ai po modifier ma cfg iptables. Ma cfg iptables est bien configurer pour accepter les requete dns :
iptables -A INPUT -i eth1 --protocol udp --source-port 53 -j ACCEPT
iptables -A OUTPUT -0 eth1 --protocol udp --destination-port 53 -j ACCEPT
iptables -A INPUT -i eth1 --protocol tcp --source-port 53 -j ACCEPT
iptables -A OUTPUT -0 eth1 --protocol tcp --destination-port 53 -j ACCEPT
merci de votre aide