Slt à tous,
Voilà quelque temps que j'ai appris à mettre en place des proxy transparents, mais voilà dans aucune des docs que j'ai lues jusqu'à présent on e faisait mention de l'utilisation de deux cates réseaux et à chaque fois que je mettais le proxy dans le réseau, au lieu d'améliorer la connexion, il la dégradait.
A présent je viens de voir une config avec deux cartes réseau et shorewall qui me fait penser que c'est ça la solution à mon probleme mais voilà, elle ne marche pas et je n'y connais rien à shorewall.
Alors si quelqu'un a déja configuré un proxy transparent avec shorewall et 2 cartes reseau, un retour d'expérience serait sympa ou un lien vers un tuto.
merciiiiiii
# que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
Tu a 2 cartes pour doubler la bande passante de ton serveur ?
Tu veux faire du fail-over pour basculer sur la 2nd carte ethernet
si la 1 ere tombe ?
Cela ressemble + à un pb de routage/balance de charge.
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par NeoX . Évalué à 2.
Lan -> carte 1 -> proxy -> carte 2 -> internet (ou passerelle internet)
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
Si non, il faut etre tres vigilant pour ne pas rediriger les requetes web ( 80 ) vers le proxy lui-meme.
Il faut rediriger les requetes des clients à destination du port 80 sauf celles du proxy. ( sinon ça boucle )
La config ip est fonctionnelle ?
Tu utilises iptables, squid ?
Bref, decris ton contexte, si tu veux de l'aide.
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par serval21 . Évalué à 1.
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
- faire fonctionner ta passererelle/routeur nat ip (routage /dns /... )
- que les clients de ton reseau l'utilise celle-ci ( dns / ip / route par default )
- et enfin configurer squid en proxy transparent ( cf doc squid,
5 lignes de conf pour le proxy transparent grand max , mais au préalable le squid doit marcher en proxy non transparent )
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par serval21 . Évalué à 1.
le probleme se situe uniquement au niveau du routage des paquets provenant du réseau local vers Internet via mon proxy et vice-versa.
J'avais pour habitude de configurer un dns cache et un dhcp sur la même machine, ainsi j'obligeais tous les clients du LAN a avoir obligatoirement comme interlocuteur ma machine.
Dans mon ancienne config mes clients arrivent parfaitement à avoir accès à Internet via mon proxy, mais la connexion était ralentie.
A présent je pense mettre en place une seconde carte réseau qui communiquera avec le routeur dans un réseau donné et l'autre carte communiquera avec le LAN dans un autre.
LAN( 192.168.2.0)->proxy-carte1(192.168.2.1)->proxy-carte2(192.168.1.2)->routeur(192.168.1.1)
A présent ce qu'il me faut c'est permettre à mon proxy de faire ce routage
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
Tu as quoi comme connection adsl/xdsl/ t1/e3 ? Quelle est son debit entrant/sortant ?
Connection ralentie ?
- probleme de dns
- debit ( 1 site en particulier / plusieurs )
...
- Mesurer le debit par interface ( mrtg / cacti, ... )
- tester une connection ( iperf, ... )
Dns => commande dig, host
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
As-tu penser à regarder les paquets rejetés ( surtout si tu modifie l'architecture ) ?
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par serval21 . Évalué à 1.
C'est pourquoi je penche plus pour une mauvaise config.
Et en ce qui concerne shorewall suis tt à fait d'accord mais le probleme est que je n'ai jamais eu à utiliser shorewall et ce n'est que maintenant que g commence à bosser sur les firewalls.
C'est pourquoi je suis à la recherche d'un bon tuto de config de squid avec shorewall.
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
tu risques de chercher longtemps.
En ce qui concerne la config de squid le web est une mine d'or.
J'ai configuré le mien en moins de 15 minutes.
Bon courage.
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par serval21 . Évalué à 1.
Ayant beaucoup cherché je pensais que quelqu'un ici avait déja eu à configuré squid avec shorewall ou un autre, ce qui aurait pu au moins m'aiguiller sur la démarche à suivre.
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
cf activer ip forwarding sous linux
cela pourrait aussi etre filtre ( chaine FORWARD iptables )
Si tes interfaces réseaux, tes reseaux ip sont distincts ( netmask ) , les passerelles configurées et utilisées par tes machines clients cela va fonctionner !
Faire des tests peuvent t'aider:
a partir d'un client du réseau:
- pinguer un client de ce meme réseau pour verifier le netmask
- pinguer l'interface de la passerelle cote client ( route par default )
- pinguer l'autre interface de la passerelle ( permet de verifier que le
routage fonctionne )
- enfin pinguer un routeur/ une machine d'un reseau proche ( celui
ou est connectée la 2eme patte de la passerelle )
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par serval21 . Évalué à 0.
/proc/sys/net/ipv4/ip_forward est à 1.
Mais les ping échouent quand j'essaye d'atteindre Internet.
[^] # Re: que cherches-tu a faire ?
Posté par nono14 (site web personnel) . Évalué à 1.
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: que cherches-tu a faire ?
Posté par NeoX . Évalué à 4.
Sur le proxy :
Carte 1 (internet) : 192.168.1.2/24, passerelle 192.168.1.1
Carte 2 (lan) : 192.168.2.1/24, pas de passerelle
pour que le reseau passe de l'un vers l'autre il te faut
ip_forward=1 (ca c'est fait)
1°) desactiver iptables ou shorewall pour verifier que cela fonctionne
2°) regler les filtres FORWARD et OUTPUT pour laisser sortir les infos
3°) activer le proxy et eventuellement faire une redirection du port 80 vers le port du proxy (filtre PREROUTING sur la carte LAN)
ainsi tes clients qui interrogeront internet en port 80 (web) demanderont en fait à la passerelle (192.168.2.1) sur le port 80
qui enverra en fait la demande au logiciel de proxy sur le port de celui-ci (grace à la regle PREROUTING)
le proxy enverra de lui meme sa demande à la vraie passerelle, recuperera la reponse...
# Déjà fait, mais ya longtemps
Posté par benoar . Évalué à 2.
Dans l'ordre, je procèderai comme ça :
- mettre en place la passerelle correctement avec shorewall (qui fait pratiquement tout tout seul) et dnsmasq (qui lui aussi fait quasi tout tout seul) et voir si ça marche (connexion natée normale vers le net)
- mettre en place squid en proxy "normal" et tester le proxy explicitement
- mettre en place la redirection automatique de port pour le proxy transparent (une règle dans shorewall)
Désolé de ne plus avoir d'instructions précises, mais j'avais trouvé assez facilement avec "shorewell transparent proxy" il me semble.
[^] # Re: Déjà fait, mais ya longtemps
Posté par benoar . Évalué à 2.
Pour shorewall :
le fichier interfaces :
loc $LOC_IF detect dhcp,maclist,arp_filter
net $NET_IF detect
(j'utilisais des nom d'if génériques)
pour le masquerading (enfin, le SNAT) le fichier masq :
eth0 172.16.0.0/16 172.30.1.1
faut adapter l'adressage, hein. (172.16.0.0/16 c'est le LAN et 172.16.1.1 l'IP coté LAN de la passerelle)
le fichier policy, si ça t'intéresse :
loc net REJECT $LOG
fw all ACCEPT
net all DROP $LOG
all all REJECT $LOG
et pour le proxy transparent, dans le fichier rules :
REDIRECT:$LOG loc 3128 tcp www - !172.16.1.1
si 3128 c'est le port de squid, et la règle qui bien sûr ne s'applique pas pour la passerelle elle-même ...
J'avais même un script de QoS si tu veux ... parce que pour les "problèmes" de perf, il faudrait en savoir un peu plus sur l'usage de ton proxy (nombre de bécanes, quel connexion au net, quel type d'utilisation (DL massif ...)), etc.
[^] # Re: Déjà fait, mais ya longtemps
Posté par nono14 (site web personnel) . Évalué à 1.
le contexte dans lequel il figurait )
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: Déjà fait, mais ya longtemps
Posté par serval21 . Évalué à 1.
#
Add this entry to your /etc/shorewall/providers file.
#NAME NUMBER MARK DUPLICATE INTERFACE GATEWAY OPTIONS
Squid 1 202 - eth1 [mon_ip_lan_proxy] loose
#
In /etc/shorewall/start add:
iptables -t mangle -A PREROUTING -i eth1 -s ! [mon_ip_lan_proxy] -p tcp --dport 80 -j MARK --set-mark 202
#
In /etc/shorewall/interfaces :
#ZONE INTERFACE BROADCAST OPTIONS
loc eth1 detect routeback
#
Ensuite j'ai exécuté cette commande
iptables -t nat -A PREROUTING -i eth0 -d ! [mon_ip_lan_proxy] -p tcp --dport 80 -j REDIRECT --to-ports 3128
voici le contenu de mes différents fichiers:
-le fichier policy
#SOURCE DEST POLICY LOG LIMIT:BURST
# LEVEL
loc fw ACCEPT
fw net ACCEPT
loc net ACCEPT
net fw ACCEPT
fw loc ACCEPT
net loc ACCEPT
loc all ACCEPT info
net all DROP info
- le fichier zone
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
net ipv4
loc ipv4
-le fichier interfaces
#ZONE INTERFACE BROADCAST OPTIONS
loc eth1 detect routeback
net eth0 detect tcpflags
- le fichier rules
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK
# PORT PORT(S) DEST LIMIT GROUP
#SECTION ESTABLISHED
#SECTION RELATED
SECTION NEW
REDIRECT loc 3128 tcp www
ACCEPT fw net tcp www
j'ai configuré un client avec [mon_ip_lan_proxy] comme passerelle mais le ping vers l'extérieur échoue toujours.
j'ai essayé de voir dans les fichiers de logs de shorewall mais je ne vois que shorewall-init.log
Avez vous une idée d'où peut provenir le probleme??
[^] # Re: Déjà fait, mais ya longtemps
Posté par nono14 (site web personnel) . Évalué à 1.
iptables -L -nv -t mangle
iptables -L -nv -t nat
iptables -L -nv
ifconfig
route -n
cat /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/conf/*/forwarding
Système - Réseau - Sécurité Open Source - Ouvert à de nouvelles opportunités
[^] # Re: Déjà fait, mais ya longtemps
Posté par benoar . Évalué à 3.
[^] # Re: Déjà fait, mais ya longtemps
Posté par benoar . Évalué à 2.
C'est vieux, ça utilise pleins de patchs non-standards au kernel (j'en avait adapté pour le 2.6.18 à l'époque je crois) mais ça marche du tonerre. Tu règles bien tes débits upload/download, tu tweak un ou deux trucs et c'est parti. Alors oui, ça n'est pas de la tarte, mais à l'époque, c'était tout ce qu'il y avait. C'était pour partager une 4Mb ADSL entre une centaine de personne (avec des gros download aussi), et ça marchait bien. Par contre, je filtrais le P2P sinon le modem du provider s'effondrait (pas la passerelle debian, qui n'a jamais dépassé les 10% de CPU je crois, mais vraiment le modem : trop de connexions à NATer).
Sinon, comme je traine dedans en ce moment, tu pourrais peut-être voir de coté d'OpenWrt, qui fournit des scripts de QoS, et en général ils ont une bonne intégration, donc t'auras pas trop à bidouiller. Mais après, c'est une distro minimale, hein, même si tu dois quand même avoir squid.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.