Salutation, j'utilise Squid 2.6stable sur mon réseau depuis pas mal de temps déjà en mode authentification.
Pour un projet, j'ai voulu installer squid en mode transparent. J'ai donc suivi les manip glanés sur le net, config de netfilter et squid.
Premier problème, lorsque j'ai rajouté les lignes:
httpd_accel_port 80
httpd_accel_host virtual
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
En redémarrant squid il me met le message d'erreur:
Line xxxx unrecognized httpd_accel_port 80' et pareil pour les 3 autres
Apperament ces lignes servent à activer le mode transparent..
Voici mes règles netfilter:
modprobe iptable_nat
modprobe ip_nat_ftp
modprobe ip_nat_irc
echo 1 (signe supérieur a ) /proc/sys/net/ipv4/ip_forward
iptables -t filter -F
iptables -t filter -X
iptables -t nat -F
iptables -t nat -X
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t filter -A OUTPUT -o lo -s 0.0.0.0/0 -d 0.0.0.0/8 -j ACCEPT
iptables -t filter -A INPUT -i lo -s 0.0.0.0/0 -d 0.0.0.0/8 -j ACCEPT
iptables -t filter -A OUTPUT -o eth0 -s 192.168.6.0/24 -d 192.168.6.0/24 -j \
ACCEPT
iptables -t filter -A INPUT -i eth0 -s 192.168.6.0/24 -d 192.168.6.0/24 -j \
ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1 -s 192.168.6.0/24 -d 0.0.0.0/0 \
-m state --state ! INVALID -j ACCEPT
iptables -t filter -A FORWARD -i eth1 -o eth0 -s 0.0.0.0/0 -d 192.168.6.0/24 \
-m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A OUTPUT -o eth1 -s 192.168.1.135 -d 0.0.0.0/0 -p all \
-m state --state ! invalid -j ACCEPT
iptables -t filter -A INPUT -i eth1 -s 0.0.0.0/0 -d 192.168.1.135 -p all \
-m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.6.0/24 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -s 192.168.6.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
A noter que le reseau 6.0 est du coté eth0 et représente mon reseau privé et le reseau 1.0 du coté eth1 est celui ou est le routeur. Il n'y a aucun problème de connexion lorsque je remplace la derniere ligne de mon script firewall par:
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.6.0/24 -j MASQUERADE.
Bref, en cherchant www.google.fr en redirigeant le port 80 sur le port 3128, j'ai une page d'erreur qui s'affiche sur mon navigateur du style:
Invalid request
some aspect of the HTTP request is invalid. Possible Problems:
-Missing or unknown request method
-missing url
-missing http identifier (http/1.0)
-content-length missing for POST or PUT request
-illegal character in hostname; underscores are not allowed
Cette page étant signée par squid, je pense que la redirection à été bien faite, cependant squid coince quelque par alors qu'il fonctionne parfaitement en mode non transparent.
Si quelqu'un à déja eu ce problème, peut être pourra t'il m'éclairer sur ces points.
Merci
# ps
Posté par ba_slayer03 . Évalué à 1.
# Version récente de SQUID ?
Posté par Olivier (site web personnel) . Évalué à 2.
d'après http://www.deckle.co.za/squid-users-guide/Transparent_Cachin(...) , les options que tu indiques sont valables pour les anciennes versions de SQUID. A partir du 2.6, il faut utiliser à la place:
http_port 192.168.6.xxx:3128 transparent
Cordialement,
[^] # Re: Version récente de SQUID ?
Posté par ba_slayer03 . Évalué à 1.
merci beaucoup Olivier
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.