Vous n'êtes pas identifié(e).
Pages : 1
après quelques tests, tout semble fonctionner, squid reçoit les requêtes http et squidguard filtre.
du coup il y a pas mal de trucs que je comprend pas dans le tuto?
il propose ca coté iptable:
pourquoi faire du DNAT sur l'interface du LAN (eth1) pour tout rediriger vers eth0, puis ensuite rediriger le port 80 au niveau d'eth0 vers le port du proxy?
et ensuite, pourquoi utiliser la table mangle pour dropper les ports 3128 et 3129? il suffit de les bloquer au niveau firewall, non?
possible d'avoir une explication?
Dernière modification par winproof (12-10-2016 15:32:17)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
Mint 18 // essai de débian + Cinnamon pour migration. Développeur du temps libre...
config : Portable Core I7 // 4Go Ram // SSD256Go // cg Intel HD3000 (on ne peut pas tout avoir) // wi-fi Alpha AWUS036H <- marche trop fort !
Enfin : OpenBSD 6.0 + XFCE
Hors ligne
et pas
(d'ailleur, avec squid3 il faut utiliser "intercept", pas "transparent"
donc pour moi, la règle
permet bien d'avoir le proxy transparent pour le réseau A
mais pour avoir le proxy transparent sur le reseau B, il suffirait d'avoir
inutile de faire du DNAT de eth1 vers eth0, non?
Dernière modification par winproof (12-10-2016 23:57:23)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
elle a activé dans le noyau le trafic eth0 => eth1 dans sysctl.conf
et autorisé le trafic
elle a créé un wiki "pare-feu pour une passerelle" pour compléter le filtrage (qui est null avec les 2 regles au dessus qui laisse tout passer)
ensuite elle parle de squid (d'ailleurs elle precise => Si vous avez suivi “iptables:un pare-feu pour une passerelle” et installé ce script, passez directement au pre-requis Table de routage
tu peut tester je pense , sur eth1 le filtrage de squid sans avoir fait le pare-feu pour la passerelle (juste les 2 regles au dessus)
si tu veut un acces de eth1 vers eth0 (donc avoir le net pour les clients du reseau B oui il te faut ces regles )
enfin je le vois comme ça , mais je suis pas trés fort en réseau (j ai testé squid il y a pas mal de temps )
ps: elle précise aussi quelle a un serveur dns local sur le reseau B (donc sur eth1) et peut etre un dhcp donc avec les regles du pare-feu qui vont bien
de tete , elle a céé au moin 4 wiki , dhcp , client et passerelle pare-feu et squid , peut etre pour le dns (faut chercher par le nom du redacteur )
en général elle teste en réel et ses tutos sont trés détaillés ( a toi de voir si tu zape certaines parties )
voila je pourrai pas t'aider beaucoup plus
Nota: pour ta remarque du #4
ça commence ici :
si tu veut utiliser squid autrement tu adapte , mais elle parle d un sous réseau (donc plusieurs clients ) sur une passerelle , du cache , mais faut comprendre ce qui passe par eth1 passe par eth0
son wiki est sous forme de TP , tu passe par diverses étapes pour arriver au résultat final , pour apprendre c'est mieux et toucher du doigt les divers problemes.
ça vaut peut etre le coup de tester , poser les questions puis adapter aprés en fonction de ce que tu désire
Dernière modification par anonyme (13-10-2016 11:17:54)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
pourquoi faire du DNAT sur l'interface du LAN (eth1) pour tout rediriger vers eth0
Ton interprétation de la première règle iptables est erronée. Je la remets pour mémoire.
DNAT ne redirige pas vers une interface mais vers une adresse et/ou un port. Le paquet est redirigé vers une interface seulement si la nouvelle adresse de destination est distante et routée par cette interface. Ici, l'adresse de destination cible 192.168.0.1 appartient à la machine elle-même, peu importe l'interface, donc le paquet n'est pas redirigé vers eth0 mais délivré au processus local qui a ouvert le port cible 3129 sur cette adresse ou toutes les adresses locales, en l'occurrence squid.
pourquoi utiliser la table mangle pour dropper les ports 3128 et 3129? il suffit de les bloquer au niveau firewall, non?
C'est précisément ce que font ces règles.
Mais si on bloquait ces paquets comme on le fait habituellement dans la chaîne INPUT de la table "filter" qui est parcourue après la chaîne PREROUTING de la table "nat", on bloquerait aussi les paquets redirigés par la règle DNAT ou REDIRECT. En mettant la règle dans la chaîne PREROUTING de la table "mangle" qui est parcourue avant, on ne bloque que les paquets qui ont été reçus directement à destination du port 3128/3129, et non ceux qui ont été reçus à destination du port 80 puis redirigés.
il écoute bien sur le port 3129, mais il n'est pas bindé sur une interface précise, il écoute donc a la fois sur eth0 et eth1, non?
1) Ne pas confondre adresse et interface.
2) Oui, et alors ? Si on utilise DNAT au lieu de REDIRECT (ce qui est parfaitement respectable), il faut bien mettre une adresse cible, même si le port cible n'est pas lié à une adresse locale particulière.
Mais tu as raison sur le fond : ce tutoriel contient des incohérences.
- Les paquets HTTP reçus du réseau A par eth0 sont aussi redirigés vers le port local transparent de squid alors que le proxy transparent n'est censé être utilisé que par les machines du réseau B connecté à eth1.
- Squid est configuré pour écouter aussi en mode non transparent sur le port 3128 mais les règles iptables bloquent les paquets entrants vers ce port par les deux interfaces.
- La section "Table de routage" est au mieux inutile et au pire erronée.
Dernière modification par raleur (13-10-2016 20:06:28)
Il vaut mieux montrer que raconter.
Hors ligne
Dernière modification par winproof (14-10-2016 00:49:33)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Il vaut mieux montrer que raconter.
Hors ligne
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Dernière modification par winproof (14-10-2016 14:16:56)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
Dernière modification par winproof (14-10-2016 14:59:06)
Minute existentielle : "Si nous ne sommes pas sensés grignoter la nuit, pourquoi y a-t-il une lumière dans le frigo?"
Hors ligne
Hors ligne
Ce qui revient au même que le sujet abordé plus haut sauf que le Squid et la passerelle/pare-feu sont dissociés.
Cette solution proposée sur wiki.squid-cache.org fonctionne parfaitement mais je n'arrive pas à comprendre pourquoi un simple DNAT sur la passerelle ne fonctionne pas.
A cause du routage asymétrique que cette architecture implique. Lorsque le proxy transparent est dans le même LAN que les clients, le routage du client vers le proxy est le suivant :
client -> routeur (DNAT) -> proxy
Et le routage du proxy vers le client est le suivant :
proxy -> client
En effet le proxy est dans le même LAN que le client donc par défaut il leur envoie les paquets directement sans passer par le routeur.
Or le NAT ne fonctionne correctement qu'avec du routage symétrique car il faut que les paquets retour repassent pas le routeur qui a fait le NAT sur les paquets aller pour faire l'opération inverse. Il existe néanmoins divers moyens pour rendre le routage symétrique et faire passer les paquets retour par le routeur :
- faire du SNAT (NAT source) sur les connexions redirigées par le routeur vers le proxy, mais le proxy ne verra pas l'adresse source réelle du client
- router tous les paquets émis par le proxy via le routeur, même ceux destinés aux adresses du LAN
- router seulement les paquets émis par le proxy avec comme port source le port transparent via le routeur
A noter que même avec ces moyens, les clients HTTP 1.0 (n'utilisant pas l'en-tête "Host" pour indiquer le site) ne fonctionneront pas car l'adresse IP de destination originelle est masquée au proxy par le DNAT. Losque le DNAT ou le REDIRECT est fait sur le proxy lui-même, squid peut retrouver l'adresse IP originelle dans la table d'état du NAT locale.
Il vaut mieux montrer que raconter.
Hors ligne
Hors ligne
Il vaut mieux montrer que raconter.
Hors ligne
Dernière modification par numa (01-11-2016 18:48:52)
Hors ligne
Pages : 1