RESEAU : problème DNS ?

Non, je suis très sérieux. En partant du principe que tu sais écrire des règles iptables,

ça devrait être suffisant…

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE?
non, je me suis trompé je n’ai pas spécifié d’où venaient les paquest

iptables -t nat -A POSTROUTING -s 172.16.10.1/28 -o eth0 -j MASQUERADEc’est mieux je crois non ?
Faut-il indiquer le masque : 255.255.255.0 ?

[quote=“toto69”]iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE?
[/quote]
Cela fait très bien l’affaire dans la grande la grande majorité des cas.
Si tu as un doute, tu peux lister le contenu de la chaîne POSTROUTING avec [mono]iptables --line-numbers -nvx -t nat -L POSTROUTING[/mono] et la vider éventuellement avec un [mono]iptables -t nat -F POSTROUTING[/mono] .

Attention à bien étudier les autres points soulevés ici par PascalHambourg.

Tu sauras si cela marche en faisant un [mono]ping -n -c 4 192.168.1.1[/mono] depuis un de tes clients et que des paquets ICMP sont reçus en retour.


AnonymousCoward

root@serveur-debian:~# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables v1.4.14: can't initialize iptables table `nat': Table does not exist (do you need to insmod?) Perhaps iptables or your kernel needs to be upgraded.
Pourquoi ?

# lsmod | grep ip iptable_filter 12488 0 ip_tables 17010 1 iptable_filter ip6table_filter 12492 0 ip6_tables 17022 1 ip6table_filter x_tables 18076 4 ip6table_filter,ip_tables,iptable_filter,ip6_tables
iptable_filter à 0 c’est pas top ?!

Quelques informations nous aideraient à y avoir plus clair concernant ce soucis de kernel :

Par exemple, le résultat de ces commandes, bien évidement sur debian-serveur :

  • [mono]uname -a[/mono]
  • [mono]find /lib/modules/uname -r/kernel/net/ipv4/netfilter[/mono] (le ` avec AltGr + 7)
  • [mono]dpkg -l | grep linux-image[/mono]


AnonymousCoward

root@serveur-debian:~# uname -a Linux serveur-debian 3.10.1-fb-aufs #4 SMP Tue Aug 27 07:36:51 UTC 2013 i686 GNU/Linux

root@serveur-debian:~# find /lib/modules/`uname -r`/kernel/net/ipv4/netfilter /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/arpt_mangle.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ipt_CLUSTERIP.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ip_tables.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ipt_ULOG.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ipt_ah.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/arptable_filter.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/iptable_security.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/arp_tables.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ipt_ECN.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/ipt_REJECT.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/nf_conntrack_ipv4.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/iptable_mangle.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/nf_defrag_ipv4.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/iptable_filter.ko /lib/modules/3.10.1-fb-aufs/kernel/net/ipv4/netfilter/iptable_raw.ko

root@serveur-debian:~# dpkg -l | grep linux-image ii linux-image-3.10.1-fb-aufs 3.10.1-fb-aufs i386 Linux kernel binary image for version 3.10.1-fb-aufs ii linux-image-3.2.0-4-686-pae 3.2.60-1+deb7u3 i386 Linux 3.2 for modern PCs ii linux-image-686-pae 3.2+46 i386 Linux for modern PCs (meta-package)

Egalement

Apparemment le NAT n’a pas été activé lors de la compilation de ce noyau.

[code]root@serveur-debian:~# grep NF_NAT /boot/config-$(uname -r)

CONFIG_NF_NAT_IPV4 is not set

CONFIG_NF_NAT_IPV6 is not set[/code]

francois@portos:~$ uname -r 3.10.1-fb-aufs francois@portos:~$ grep NF_NAT /boot/config-$(uname -r) CONFIG_NF_NAT=m CONFIG_NF_NAT_NEEDED=y CONFIG_NF_NAT_PROTO_DCCP=m CONFIG_NF_NAT_PROTO_UDPLITE=m CONFIG_NF_NAT_PROTO_SCTP=m CONFIG_NF_NAT_AMANDA=m CONFIG_NF_NAT_FTP=m CONFIG_NF_NAT_IRC=m CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_IPV4=m CONFIG_NF_NAT_SNMP_BASIC=m CONFIG_NF_NAT_PROTO_GRE=m CONFIG_NF_NAT_PPTP=m CONFIG_NF_NAT_H323=m CONFIG_NF_NAT_IPV6=m francois@portos:~$ Reinstalle le noyau, tu as du prendre une première version où le module n’y était pas. (Pas compris pourquoi, je prends les options des noyaux debian plus qques unes)

flute tu es en 32 bits on dirait.

Tu peux installer éventuellement le noyau linux-image-3.15.6-fb-aufs qui contient les modules nécessaires tout en ne retrouvant pas les pbms du 3.2.0 francois@cerbere:/tmp/gre/boot$ grep NF_NAT * config-3.15.6-fb-aufs:CONFIG_NF_NAT=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_NEEDED=y config-3.15.6-fb-aufs:CONFIG_NF_NAT_PROTO_DCCP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_PROTO_UDPLITE=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_PROTO_SCTP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_AMANDA=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_FTP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_IRC=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_SIP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_TFTP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_IPV4=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_SNMP_BASIC=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_PROTO_GRE=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_PPTP=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_H323=m config-3.15.6-fb-aufs:CONFIG_NF_NAT_IPV6=m

De la même version ? Les options peuvent changer d’une version à l’autre, et nécessiter une mise à jour du .config. Par exemple lors de l’introduction du NAT IPv6, l’option CONFIG_NF_NAT qui activait le NAT IPv4 est devenue CONFIG_NF_NAT_IPV4.

apt-get update apt-get install linux-headers-3.15.6-fb-aufs linux-image-linux-image-3.15.6-fb-aufs

update-grub
shutdown -r now
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

[code]root@serveur-debian:~# ping -n -c 4 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_req=1 ttl=64 time=2.29 ms
64 bytes from 192.168.1.1: icmp_req=2 ttl=64 time=2.34 ms
64 bytes from 192.168.1.1: icmp_req=3 ttl=64 time=2.24 ms
64 bytes from 192.168.1.1: icmp_req=4 ttl=64 time=2.25 ms

— 192.168.1.1 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 2.245/2.286/2.345/0.039 ms[/code]
C’est tout bon :041 et …seven ne me casse plus les pieds avec son p’tit panneau jaune triangulaire :laughing:
Merci à tous comme quoi, derrière un p’tit problème (synchro nuage gmail smartphone) se cachait un gros problème !!
Faut que je trouve le temps pour résumer tout çà dans un post. :slightly_smiling:

De la même version ? Les options peuvent changer d’une version à l’autre, et nécessiter une mise à jour du .config. Par exemple lors de l’introduction du NAT IPv6, l’option CONFIG_NF_NAT qui activait le NAT IPv4 est devenue CONFIG_NF_NAT_IPV4.[/quote]
Oui mais je fais attention (par un diff). Vu le nombre d’options désormais, c’est facile d’en rater… Quand je pense aux 2.0.3x où l’ensemble des onglets d’option tenait sur un écran et où il s’agissait de choisir entre modules ou pas modules et NE2000 ou 3COM…

Maintenant que son debian-serveur marche correctement en tant que routeur, vous pensez qu’on lui explique que le proxy squid est complètement accessoire pour quelqu’un qui se connecte chez lui à moins qu’il ne mette en place un filtrage avec netfilter/iptables ?


AnonymousCoward

Ça dépend de l’usage de ce proxy, selon si c’est pour du filtrage ou simplement du cache.

[quote=“AnonymousCoward”]Maintenant que son debian-serveur marche correctement en tant que routeur, vous pensez qu’on lui explique que le proxy squid est complètement accessoire pour quelqu’un qui se connecte chez lui à moins qu’il ne mette en place un filtrage avec netfilter/iptables ?


AnonymousCoward[/quote]
C’est quoi encore ces histoires :017 :017

Essaye avec un de tes clients en tentant de télécharger une page web genre http://www.perdu.com/ (pas de HTTPS) en désactivant le passage par le proxy.

Ensuite, si le premier test a marché, exécute la commande [mono]iptables -t filter -I FORWARD 1 --in-interface br0 --protocol tcp --dport 80 -j REJECT[/mono] sur debian-serveur et refait le même test pour une page web en HTTP, toujours proxy désactivé.
([mono]iptables -D FORWARD 1[/mono] à faire une fois, après le test, pour effacer la règle)

Normalement, le premier test fonctionne et le second échoue.


AnonymousCoward

D’accord tu marques un point. Je comprends que ta règle rejette (REJECT) l’accès au net via le port 80 (dport 80) sur l’interface br0 ; cette requête a été redirigée en entrée (in) via l’interface br0 (br0)
comme après FORWARD tu as mis 1 : cela signifie qu’elle est en premier dans la liste des règles de filtrage et donc qu’elle s’applique avant les autres ; du coup concrètement la requête sort sur le net mais ne revient pas car le port 80 est “bloqué” ; c’est cà :smiley: ?
Je sais cela, pascalhambourg m’en avait parlé me semble-t-il. Mais dansguardian fonctionne avec squid pas sans squid ! Ou j’ai pas tout compris. Or je veux ce contrôle.

Au commencement…il y a la nécessité d’installer un cotrôle parental ; ensuite le choix de l’application qui gère ce contrôle (dansguardian) ; puis comment faire fonctionner dansguardian (il faut un proxy) ; puis le choix du proxy (squid fait cache pas tinyproxy) ; il m’a donc fallu installer tout cela ;
Par contre je ne sais toujours pas comment filtrer les accès aux web aux “invités” enfants : je ne peux pas bidouiller leurs portables ou tablettes ; or la copine de ma fille vient avec sa tablettes :unamused: :unamused:
Je pensais donc à un filtrage par adresses mac dans iptables du style la même règle que la tienne pour tous et ensuite laisser passer uniquement les adresses mac renseignées dans iptables. Je pense que c’est possible. Squid et dansguardian prennent la relève. Donc contrôle parental blindé dans ce cas.
Mais il reste les invités adultes…???Un filtrage par adresses mac en amont sur iptables ne les laissera même pas accéder à squid et dansguardian :open_mouth: :017

Non.
s/requête/paquet/
s/redirigée/reçu/
Qu’est-ce que c’est que cette manie de voir des redirections là où il n’y en a pas ?
Est-ce à cause du nom de la chaine FORWARD qui est traduit à tort par “rediriger” ?

Non plus. Le paquet est rejeté donc ne sort pas. Même dans le cas contraire, il ne reviendrait pas. C’est un autre paquet, avec des caractéristiques différentes qui serait reçu en réponse.

Proxy transparent interceptant les connexions HTTP au lieu de les rejeter ou bloquer.[quote=“toto69”]Je pensais donc à un filtrage par adresses mac[/quote]
Faisable à condition de connaître toutes les adresses MAC à laisser passer ou à intercepter.

Oui, d'où veux-tu que je sorte çà !
[code]Proxy transparent interceptant les connexions HTTP au lieu de les rejeter ou bloquer.[/code]
Définitivement rejeté car trop de problèmes de cetificats avec le https.
[code]Faisable à condition de connaître toutes les adresses MAC à laisser passer ou à intercepter.[/code]
Je le fais déjà via squid. Avec iptables y a t il un intérêt supplémentaire ?

Oui, d’où veux-tu que je sorte çà !

Définitivement rejeté car trop de problèmes de cetificats avec le https.

Je le fais déjà via squid. Avec iptables y a t il un intérêt supplémentaire ?