Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

proxy squid transparent

20 réponses
Avatar
Christophe PEREZ
Bonjour,

J'ai vraiment besoin d'aide car je ne m'en sors pas seul.

Sur mon serveur, en tentant d'installer wwwoffle en plus de squid, je me
rends compte, qu'en fait, j'ai quelque chose de bizarre.
Je ne sais pas si ça vient de squid, bind, ou shorewall, wwwoffle étant
complètement désactivé pour tout ce qui suit.

Je souhaite configurer squid en proxy transparent.
J'ai donc une règle shorewall :
REDIRECT loc 8080 tcp www -
qui à priori correspond à un règle iptables :
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT
--to-ports 8080

Si je suis connecté au net, sans déclarer de proxy dans mon navigateur,
ça fonctionne, ça passe bien par squid (cf les log).

Par contre, si je suis hors connexion, ce n'est pas squid qui répond.
J'ai une popup du navigateur (firebird) qui me dit qu'il ne peut pas
trouver le site. Et les logs de squid ne bougent pas.

Si je configure le navigateur pour passer par le proxy, là, c'est bien
squid qui répond (affichage d'une page de squid indiquant une réponse
nulle à la requête).

Je crois me souvenir avoir déjà eu ce genre de problème à l'époque
d'un changement de noyau, et l'aurais résolu en compilant iptables, ce
que j'ai à nouveau fait avec la version 1.2.9, mais sans résultat.

Dans mon noyau (2.4.25), tout ce qui concerne net_filter est coché en
module, et me donne :
# lsmod | grep ip
ipt_TOS 1016 12 (autoclean)
ipt_MASQUERADE 1432 1 (autoclean)
ipt_LOG 3448 5 (autoclean)
ipt_REDIRECT 792 1 (autoclean)
ipt_REJECT 3576 2 (autoclean)
ipt_TCPMSS 2360 1 (autoclean)
ipt_state 536 79 (autoclean)
iptable_mangle 2136 1 (autoclean)
ip_nat_irc 2224 0 (unused)
ip_nat_ftp 2896 0 (unused)
iptable_nat 17688 3 [ipt_MASQUERADE ipt_REDIRECT ip_nat_irc ip_nat_ftp]
ip_conntrack_irc 3088 1
ip_conntrack_ftp 4112 1
ip_conntrack 21384 2 [ipt_MASQUERADE ipt_REDIRECT ipt_state ip_nat_irc ip_nat_ftp iptable_nat ip_conntrack_irc ip_conntrack_ftp]
iptable_filter 1740 1 (autoclean)
ip_tables 12896 12 [ipt_TOS ipt_MASQUERADE ipt_LOG ipt_REDIRECT ipt_REJECT ipt_TCPMSS ipt_state iptable_mangle iptable_nat iptable_filter]

J'ai refait entièrement ma config squid (bien que ne comprenant pas
grand chose à tout ça), que dalle.

Une nouvelle fois, je me demande si ce n'est pas mon serveur dns qui
foire, mais malheureusement, je n'ai pas eu de réponse à ce sujet dans
mon précédent post.

Franchement, je ne m'en sors pas, et aurais bien besoin d'une épaule
performante et vaillante ;-).
Bien entendu, je reste à disposition pour toute information
complémentaire, je n'ai pas voulu faire trop long ici.

Merci de m'avoir lu.

--
Christophe PEREZ
Écrivez moi sans _faute !

10 réponses

1 2
Avatar
Philippe Delsol
Bonjour,
Bonjour,


J'ai vraiment besoin d'aide car je ne m'en sors pas seul.

Sur mon serveur, en tentant d'installer wwwoffle en plus de squid, je me
rends compte, qu'en fait, j'ai quelque chose de bizarre.
Je ne sais pas si ça vient de squid, bind, ou shorewall, wwwoffle étant
complètement désactivé pour tout ce qui suit.

Je souhaite configurer squid en proxy transparent.
J'ai donc une règle shorewall :
REDIRECT loc 8080 tcp www -
qui à priori correspond à un règle iptables :
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT
--to-ports 8080

Si je suis connecté au net, sans déclarer de proxy dans mon navigateur,
ça fonctionne, ça passe bien par squid (cf les log).

Par contre, si je suis hors connexion, ce n'est pas squid qui répond.
J'ai une popup du navigateur (firebird) qui me dit qu'il ne peut pas
trouver le site. Et les logs de squid ne bougent pas.

Si je configure le navigateur pour passer par le proxy, là, c'est bien
squid qui répond (affichage d'une page de squid indiquant une réponse
nulle à la requête).


Tout ceci me paraît cohérent ...
Par contre il serait judicieux de nous indiquer ce que vous chercher à
faire exactement. Ca devrait aider à trouver la config "qui va bien".

[snip]

Franchement, je ne m'en sors pas, et aurais bien besoin d'une épaule
performante et vaillante ;-).
Bien entendu, je reste à disposition pour toute information
complémentaire, je n'ai pas voulu faire trop long ici.

Merci de m'avoir lu.


Philippe

Avatar
Christophe PEREZ
Le Sat, 08 May 2004 12:31:45 +0200, Philippe Delsol a écrit:

Tout ceci me paraît cohérent ...
Par contre il serait judicieux de nous indiquer ce que vous chercher à
faire exactement. Ca devrait aider à trouver la config "qui va bien".


Bon, et bien ce que je cherche à faire, c'est avoir 1 (plusieurs) proxy
sur mon serveur, de façon à :

1) conserver un contrôle parental (similaire à squidguard, donc squid)
efficace

2) pouvoir surfer hors connexion sur les pages déjà consultées, sans
utiliser le cache du navigateur pour cela puisqu'il serait souhaitable que
ce soit un cache à disposition de tous. (wwwoffle ?)

3) avoir un mode de proxy transparent de façon à ne pas avoir à
configurer des clients.

Squid ne permettant pas le 2, et wwwoffle pas le 1, ou tout au moins pas
de façon aussi simple et efficace que squidguard, j'ai pensé mettre les
2.

Or, un des gros avantages de wwwoffle à mes yeux, et de pouvoir demander
une page en étant hors connexion, qu'elle soit automatiquement
téléchargée à la connexion suivante, et alors désormais disponible hors
connexion.
Mais, pour ce mode de fonctionnement, il faut que même hors connexion, ce
soit bien le proxy (logiciel) qui réponde à une demande d'un client de
part le routage de iptable, ce qui n'est pas le cas chez moi, et je ne
sais pas pourquoi.
Si je configure le navigateur pour passer par le proxy, ça fonctionne, si
je ne le fais pas, malgré la règle iptables, ça ne fonctionne pas, et
je ne vois pas pourquoi.

Merci de vous êtes préoccupé de mon cas presque désespéré ;-).

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Sat, 08 May 2004 16:37:01 -0400, Christophe PEREZ a écrit:

Mais, pour ce mode de fonctionnement, il faut que même hors connexion, ce
soit bien le proxy (logiciel) qui réponde à une demande d'un client de
part le routage de iptable, ce qui n'est pas le cas chez moi, et je ne
sais pas pourquoi.


En fait, après avoir une nouvelle fois regardé, le problème ne
viendrait pas de là et c'est bien pour ça que je remet ça sur le dos du
serveur dns.

En effet, si :
- je suis en connexion,
- j'ouvre mon navigateur,
- j'appelle une page sur le net
- je déconnecte,
- je réactualise cette page,

C'est bien le proxy qui répond.
Mais si je ferme le navigateur, que je le ré-ouvre, et que je rappelle
cette page, j'ai une fenêtre du navigateur (au bout d'une 20aine de
secondes) me disant qu'il ne trouve pas le site.
Cela veut donc bien dire que ce dns n'est pas enregistré dans mon serveur
dns, ou que je n'y fais pas appel correctement non ?
Mais ce que je ne comprends pas c'est que ça ne soit pas le proxy qui me
réponde ça, et que celui-ci ne reçoive aucune requête du client...

Comme vous pouvez le constater, rien n'est bien clair dans ma tête, et
plus je fais des essais, plus ça s'assombri ;-)

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Sat, 08 May 2004 17:01:14 -0400, Christophe PEREZ a écrit:

Cela veut donc bien dire
que ce dns n'est pas enregistré dans mon serveur dns, ou que je n'y fais
pas appel correctement non ?


Et pour le confirmer :

serveur connecté au net, client :
$ dig voila.fr.

; <<>> DiG 9.2.2 <<>> voila.fr.
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22742
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 2

;; QUESTION SECTION:
;voila.fr. IN A

;; ANSWER SECTION:
voila.fr. 3568 IN A 195.101.94.80

;; AUTHORITY SECTION:
voila.fr. 3568 IN NS ns1.x-echo.com.
voila.fr. 3568 IN NS ns1.bavoila.net.
voila.fr. 3568 IN NS ns2.bavoila.net.
voila.fr. 3568 IN NS ns.x-echo.com.

;; ADDITIONAL SECTION:
ns1.bavoila.net. 87272 IN A 193.252.118.130
ns2.bavoila.net. 87272 IN A 193.252.122.34

;; Query time: 2 msec
;; SERVER: 192.168.0.100#53(192.168.0.100)
;; WHEN: Sat May 8 17:12:09 2004
;; MSG SIZE rcvd: 166

serveur déconnecté du net, client :
$ dig voila.fr.

; <<>> DiG 9.2.2 <<>> voila.fr.
;; global options: printcmd
;; connection timed out; no servers could be reached

Si vous me confirmez que c'est bien un fonctionnement anormal de mon
serveur dns (anormal au sens ou il ne fait pas ce que JE soujaite ;-) ),
nous pourrons poursuivre sur le fil :

Date: Thu, 06 May 2004 00:52:39 -0400
Message-ID:
Subject: config BIND

que j'avais lancé pour ça.

Merci.

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Sat, 08 May 2004 18:28:02 -0400, Christophe PEREZ a écrit:

Cela veut donc bien dire
que ce dns n'est pas enregistré dans mon serveur dns, ou que je n'y
fais pas appel correctement non ?



Et je suis la plus grosse des tâches !

Il est évident qu'avec :
zone "wanadoo.fr" {
type forward;
forward only;
forwarders { 80.10.246.2; 80.10.246.129; };
};

mon serveur DNS cherchait tout le temps les dns de wanadoo pour chaque
requête (enfin, c'est comme ça que je comprends)
C'est ça que de faire des choses sans comprendre, on m'avait fait mettre
ça dans mes dns lorsque je ne parvenais pas à envoyer mes mails avec
postfix.
J'ai donc remis [l'ip du smtp.wanadoo.fr] dans la config de mon postfix au
lieu de [smtp.wanadoo.fr]
Et tout a l'air de fonctionner pour le mieux.

Mais, même si je fais un monologue, quelqu'un aurait-il une réponse à
ces questions précédemment posées :
1) A quoi sert donc le paramètre "offline_mod" de squid ?


2) Et, s'il n'est pas possible de consulter ces pages qui sont dans le
cache hors connexion, à quoi sert donc squid (mise à part que dans mon
cas, il m'est utile puisque j'utilise SquidGuard couplé avec) ?

et surtout :

3) Le wwwoffle doit être avant ou après squid ?

wwwoffle passant la requête à squid ou l'inverse ?

Moi, j'ai mis wwwoffle en premier en me disant que squid, avec squidguard,
ne me sert qu'en connexion.

--
Christophe PEREZ
Écrivez moi sans _faute !


Avatar
g.patel
On Sat, 08 May 2004 19:00:51 -0400, Christophe PEREZ
wrote:

(...)
2) Et, s'il n'est pas possible de consulter ces pages qui sont dans le
cache hors connexion, à quoi sert donc squid (mise à part que dans mon
cas, il m'est utile puisque j'utilise SquidGuard couplé avec) ?


je crois que squid a été écrit avant tout pour des systèmes
qui n'ont pas la notion de 'hors connexion' :-). Son utilité première
était d'etre un cache partagé des accès en ligne sur un réseau
local ayant un accès permanent à Internet. C'est vrai que pour
un réseau local constitué d'un serveur/passerelle et d'une station,
son utilité de cache n'est pas évidente.

Gérard Patel

Avatar
Christophe PEREZ
Le Sun, 09 May 2004 04:45:03 +0000, gerard patel a écrit:

je crois que squid a été écrit avant tout pour des systèmes qui n'ont
pas la notion de 'hors connexion' :-). Son utilité première était
d'etre un cache partagé des accès en ligne sur un réseau local ayant un
accès permanent à Internet. C'est vrai que pour un réseau local
constitué d'un serveur/passerelle et d'une station, son utilité de cache
n'est pas évidente.


Donc nous sommes bien d'accord, que s'il n'y avait squidguard, je pourrais
le virer sans scrupule.
Surtout que franchement, c'est assez usine à gaz à configurer ce truc ;-)

PS : je croyais que mon truc fonctionnait, mais 2 heures après les essais
positifs, sans rien changer à la config (juste le temps de me restaurer),
ça ne fonctionnait plus. Le serveur dns ne connaissait plus ces noms.

Depuis, je parcours toutes les docs que je trouve sur le sujet, et je
crois me rendre compte que bind non plus n'est pas fait pour les gens
comme moi.
C'est dingue, non pas que l'on n'ait pas pensé à moi, mais que tout un
tas de softs de cache en tout genre, ne soient surtout utiles que lorsque
l'on a une connexion permanente.
D'ailleurs, je ne comprends même pas (plus) l'intérêt de wwwoffle si le
fait que la requête ne puisse pas être résolue par le dns, lui passe à
côté...
Je patauge, je patauge...

Ceci dit, merci Gérard pour ta participation, tu m'as trouvé bien seul
dans mon fil :-))

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Annie D.
Christophe PEREZ wrote:

Sur mon serveur, en tentant d'installer wwwoffle en plus de squid, je me
rends compte, qu'en fait, j'ai quelque chose de bizarre.
Je ne sais pas si ça vient de squid, bind, ou shorewall, wwwoffle étant
complètement désactivé pour tout ce qui suit.


Que ce soit clair : je ne connais rien à aucun de ces logiciels. Mais ce
n'est pas ça qui va me retenir de donner mon avis.

Je souhaite configurer squid en proxy transparent.

Si je suis connecté au net, sans déclarer de proxy dans mon navigateur,
ça fonctionne, ça passe bien par squid (cf les log).

Par contre, si je suis hors connexion, ce n'est pas squid qui répond.
J'ai une popup du navigateur (firebird) qui me dit qu'il ne peut pas
trouver le site. Et les logs de squid ne bougent pas.

Si je configure le navigateur pour passer par le proxy, là, c'est bien
squid qui répond (affichage d'une page de squid indiquant une réponse
nulle à la requête).


Comme Philippe, ça me paraît cohérent comme comportement, mais il serait
intéressant d'avoir un message d'erreur plus explicite du navigateur.

En mode proxy transparent (navigateur configuré sans proxy) :
Le navigateur fait une requête DNS au serveur DNS pour résoudre le nom
de domaine de l'URL. Si la requête DNS échoue hors connexion, le
navigateur ne va pas plus loin, pas de requête HTTP, le proxy web n'est
pas impliqué.

En mode proxy explicite (navigateur configuré avec proxy) :
Le navigateur ne fait pas de requête DNS et fait directement la requête
HTTP au proxy web. Si celui-ci a la page correspondante dans son cache,
il la sert.

Une nouvelle fois, je me demande si ce n'est pas mon serveur dns qui
foire


C'est ce que je dirais aussi au vu des éléments que vous avez fournis.
Pour que le proxy transparent fonctionne hors connexion, il faut que le
serveur DNS local ait un cache permanent. Je ne sais pas si Bind peut le
faire ni si votre configuration de Bind le fait. En recherchant un proxy
DNS simple, j'avais vu Pdnsd qui est un proxy DNS avec cache permanent.
Peut-être est-ce ce qu'il vous faut.

Avatar
Christophe PEREZ
Le Sun, 09 May 2004 16:02:39 +0200, Annie D. a écrit:

Que ce soit clair : je ne connais rien à aucun de ces logiciels. Mais ce
n'est pas ça qui va me retenir de donner mon avis.


;-)

Comme Philippe, ça me paraît cohérent comme comportement, mais il
serait intéressant d'avoir un message d'erreur plus explicite du
navigateur.


Inutile à mon sens, la suite suffit ;-)

En mode proxy transparent (navigateur configuré sans proxy) : Le
navigateur fait une requête DNS au serveur DNS pour résoudre le nom de
domaine de l'URL. Si la requête DNS échoue hors connexion, le navigateur
ne va pas plus loin, pas de requête HTTP, le proxy web n'est pas
impliqué.


Ben voilà ! Tout est dit.

En mode proxy explicite (navigateur configuré avec proxy) : Le navigateur
ne fait pas de requête DNS et fait directement la requête HTTP au proxy
web. Si celui-ci a la page correspondante dans son cache, il la sert.


Ah....
Il faut donc choisir, boire.. euh.. non, proxy transparent ou proxy
accessible ;-)


Une nouvelle fois, je me demande si ce n'est pas mon serveur dns qui
foire


C'est ce que je dirais aussi au vu des éléments que vous avez fournis.
Pour que le proxy transparent fonctionne hors connexion, il faut que le
serveur DNS local ait un cache permanent. Je ne sais pas si Bind peut le
faire ni si votre configuration de Bind le fait.


C'est exactement ça le problème à mon avis aussi. C'est ce cache de
bind (en passant tous les détails de ma mauvaise config précédente) qui
se vide, soit parce qu'il est impossible de faire autrement (j'ai lu pas
mal de chose sur le sujet sur le net, mais toujours en englais, et je ne
suis pas sûr d'avoir tout cerner), soit parce qu'il est mal configuré
chez moi...

En recherchant un proxy
DNS simple, j'avais vu Pdnsd qui est un proxy DNS avec cache permanent.


Aie... après le temps investi avec bind... pfff

Peut-être est-ce ce qu'il vous faut.


Merci beaucoup, je vais étudier ça, et reste très intéressé par
d'autres avis. Non pas que celui-ci ne me conviennent pas, bien au
contraire, mais que peut-être que d'autres qui connaissent bien ces
softs, auront enfin compris mon problème au regard de cette réponse et
pourront enfin me donner leur sentiment.

--
Christophe PEREZ
Écrivez moi sans _faute !


Avatar
TiChou
Dans le message <news:,
*Christophe PEREZ* tapota sur f.c.o.l.configuration :

Cela veut donc bien dire
que ce dns n'est pas enregistré dans mon serveur dns, ou que je n'y
fais pas appel correctement non ?



Et je suis la plus grosse des tâches !


Non.

Il est évident qu'avec :
zone "wanadoo.fr" {
type forward;
forward only;
forwarders { 80.10.246.2; 80.10.246.129; };
};

mon serveur DNS cherchait tout le temps les dns de wanadoo pour chaque
requête (enfin, c'est comme ça que je comprends)


Non. Votre serveur DNS fait les requetes sur les DNS de Wanadoo seulement
pour les machines appartenant au domaine wanadoo.fr. Donc dans votre exemple
précédent, ce n'est pas les DNS de Wanadoo qui sont intérogés par votre
serveur DNS pour résoudre la machine voila.fr.

Pour vos autres questions, je laisse les autres continuer à vous répondre.

--
TiChou



1 2