Serveur proxy http - squid

Résolu/Fermé
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 - 24 janv. 2008 à 15:42
 wal - 11 mars 2012 à 15:02
Bonjour à tous,

Je vais vous exposer mon problème en détail, et j'espère qu'ensemble on arrivera à ce "projet". Grâce à ce soucis, j'aimerais créer un réel tutoriel complet afin qu'il reserve encore à d'autres. Créer un pseudo groupe de travail pour que dans une semaine le tuto soit opérationnel.

J'ai un serveur Debian, sous lequel on m'a demandé de créer un serveur proxy http à cause de connections abusives sur des sites prOns (porns). Pour cela, j'ai installé squid. Enfin ... à part avoir fais un :

#apt-get install squid

Le reste, j'ai tenté avec plusieurs tutoriels trouvés sur google de configurer # /etc/squid/squid.conf

mais bon rien ne marche.

Configuration matériel :

2 carte réseaux : une qui recoit le net (10/100) via un routeur (enfin 2 pour etre exacte - vu qu'on récupère le signal depuis un routeur qui ne m'appartien pas, le deuxième est là au cas où on recoit une nouvelle connection --BREF DETAIL j'peux supprimer un routeur) l'autre (10/100/1000) qui est connecté aux SWITCH's.

-- Première question : quel est le paramétrage que je puisse mettre à eth1 (celle reliée au routeur) et à eth0 (celle reliée aux switchs)
Pour l'instant, eth1 est en dhcp et eth0 en static, mais une fois sur deux on arrive à ping vers l'extérieur genre www.google.fr

-- Deuxième question : dois je installé un serveur DHCP sur le serveur pour qu'il puisse redistribuer des IP's aux switchs ?

-- Troisième question : avez vous suivi des tuto qui marchent et qui tiennent la route pour configurer squid.conf ?

-- Quatrième question : quelle est exactement la configuration que je dois apporter client internet du genre firefox (ubuntu).

Si vous avez déjà suivi des tuto, merci de m'en faire part, j'essayerais et je ferais quelque chose d'unique.

En tout cas, merci d'avance.

33 réponses

J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
27 janv. 2008 à 22:17
Hello !

J'me suis dis, ayé le seul qui me répond il est mourru, plus de réponses :|

Donc, ok pour le serveur mail, je suppose postfix (je verrais pour trouver un tuto à moins que tu sois déjà passé par là ?), pour les mdp/logins et le blocage de sites y'a squidGuard, à tester et appronfondir avec différents tutoriaux ...

Pour OpenDNS, je peux donc aussi interdire l'accès à des sites, d'après ce que j'ai lu (...???), et donc rajouter les DNS serveurs à mon serveur (...???) pour la connection internet ... Je testerais surement demain après midi, là j'suis au boulot (encore)

Pour le domaine, j'vais m'expliquer ... Je ne travail pas dans l'informatique, je n'ai aucun diplome dans l'informatique, ce n'est qu'un pur hobby que j'apprécie énormément, c'est donc pour ça, qu'étant Sapeur Pompier Volontaire (depuis 8 ans) que je fais économiser à notre centre surement beaucoup d'argent en évitant de laisser faire par une société de professionnelle ce genre de serveur qui est en constante évolution. Le nom de domaine va surement etre financé anuellement étant donné une probablement construction d'un site personnalisé avec Forum, utilisateurs/mot de passes (encore ces log/mdp !! :s) ... Mais pour ça je verrais encore, étant donné qu'on est derrière un routeur dont je n'ai aucun accès ... J'dois donc négocier pour qu'il me redirige les ports qui vont bien :D

En espérant que tu comprennes à présent pourquoi je galère pas mal à faire tout ça !

Encore et encore MERCI à toi ! (aux autres aussi, même s'ils ne disent rien :x)
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
28 janv. 2008 à 09:27
Pour OpenDNS, je peux donc aussi interdire l'accès à des sites, d'après ce que j'ai lu (...???)

Yes... tu peux bloquer facilement des domaines précis (genre hotmail, youtube... ce que tu veux).


et donc rajouter les DNS serveurs à mon serveur

Ta boite utilise déjà sûrement des serveurs DNS.
Ces serveurs DNS peuvent être configurés pour utiliser OpenDNS pour la résolution des adresses externes à la boite.

Ou bien tu peux utiliser opendns uniquement dans Squid si tu veux filtrer des choses précises (ce qui rend le filtrage des sites adultes ultra-simples).

L'avantage d'OpenDNS, c'est qu'il n'y a aucun logiciel à installer pour mettre en place le filtrage.



En espérant que tu comprennes à présent pourquoi je galère pas mal à faire tout ça !

Pas de problème, je comprend :-)
0
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
31 janv. 2008 à 15:20
Hello !
Des news pour ce *$*$$$$%%%!!!!!*$$ serveur proxy ...

Comme vous pouvez le constatez, il commence à me rendre, nerveux ! Après l'avoir configurer (normalement) pour accéder au net avec authentification, je n'arrive pas à avoir la fenetre qui va bien avec le login/mdp à rentrer. Je reste sur une page : Access Denied, le mail que j'ai mis pour contacter l'admin... donc forcément tout ce qui est OpenDNS ou autre logiciels pour bloquer des domains ou autres, pas testé encore étant donné que j'me prends la tete avec ca déjà... :s

Quelqu'un est déjà passé par là ? Pourrait il me faire part de son /etc/squid/squid.conf pour que je puisse le comparer au mien et voir ce qui va ou pas ? (désolé je n'ai pas le mien sous la main, je posterais ce soir à nouveau pour le mettre en ligne)

Merci
0
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
31 janv. 2008 à 16:51
Hey, RE !

Voici comme prévu mon squid.conf :

http_port 192.168.10.1:8080
dns_nameservers 194.2.0.50
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
cache_mem 16 MB
#maximum_object_size 15 MB
#redirect_program /usr/bin/squidGuard
#redirect_children 4
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
cache_dir ufs /var/spool/squid 200 16 256
access_log /var/log/squid/access.log squid
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl sph src 192.168.10.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl Safe_ports port 22 # SSH
acl Safe_ports port 1863 # MSN
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access allow localhost
#http_access allow sph
http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname sph-server
cache_mgr joelkomo@gmail.com,alex.rapior@gmail.com
coredump_dir /var/spool/squid
extension_methods REPORT MERGE MKACTIVITY CHECKOUT

# Authentification by aRAPIOR && jKOMOROWSKI #
#auth_param negotiate program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param negotiate children 5
#auth_param negotiate keep_alive on
#auth_param ntlm program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param ntlm children 5
#auth_param ntlm keep_alive on
#auth_param digest program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param digest children 5
#auth_param digest realm sph-server
#auth_param digest nonce_garbage_interval 5 minutes
#auth_param digest nonce_max_duration 30 minutes
#auth_param digest nonce_max_count 50
auth_param basic program /usr/lib/squid/ncsa_auth /etc/webmin/squid/users
auth_param basic children 5
auth_param basic realm sph-server
auth_param basic credentialsttl 12 hours
acl utilisateurs proxy_auth REQUIRED
#acl utilisateurs proxy_auth %LOGIN
http_access allow utilisateurs

Bon, y'a quelques trucs que j'ai modifier encore au dernier moment, ne trouvant pas, j'crois que j'ai fais un peu du tout et du n'importe quoi ..

Votre avis SVP ?

Merci !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
31 janv. 2008 à 22:33
Hello !

Eh ben c'est bon, j'y suis enfin arrivé ! c'est : N I Q U E L !!

J'avais en fait créer mon fichier users et tout avec la commande htpasswd mais dans le squid.conf j'avais une erreur de "!" qu'il me manquait devant users, je mettrais mon squid.conf très bientot.

Encore merci, j'fais un peu l'monologue là, mais j'pense que ca va servire à d'autres qui voudront installer squid !

bOnne nUit :)
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
31 janv. 2008 à 22:34
Ce genre de message n'est jamais inutile !
Merci du retour. :-)
0
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
1 févr. 2008 à 20:57
Hello voici, comme promis mon squid.conf qui risque d'évoluer au niveau des ports, ce genre de choses, simplement :

http_port 192.168.10.1:8080
dns_nameservers 194.2.0.50
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
cache_mem 16 MB
#maximum_object_size 15 MB
#redirect_program /usr/bin/squidGuard
#redirect_children 4
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
cache_dir ufs /var/spool/squid 200 16 256
access_log /var/log/squid/access.log squid
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl sph src 192.168.10.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl Safe_ports port 22 # SSH
acl Safe_ports port 1863 # MSN
acl purge method PURGE
acl CONNECT method CONNECT
http_reply_access allow all
icp_access allow all
visible_hostname sph-server
cache_mgr joelkomo@gmail.com,alex.rapior@gmail.com
coredump_dir /var/spool/squid
extension_methods REPORT MERGE MKACTIVITY CHECKOUT

# Authentification by aRAPIOR && jKOMOROWSKI #
#auth_param negotiate program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param negotiate children 5
#auth_param negotiate keep_alive on
#auth_param ntlm program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param ntlm children 5
#auth_param ntlm keep_alive on
#auth_param digest program /usr/lib/squid/ncsa_auth /etc/squid/utilisateurs.pwd
#auth_param digest children 5
#auth_param digest realm sph-server
#auth_param digest nonce_garbage_interval 5 minutes
#auth_param digest nonce_max_duration 30 minutes
#auth_param digest nonce_max_count 50
auth_param basic program /usr/lib/squid/ncsa_auth /etc/webmin/squid/users
auth_param basic credentialsttl 12 hour
acl users proxy_auth REQUIRED
http_access allow localhost
http_access deny !Safe_ports
http_access allow purge localhost
http_access allow !users
http_access deny purge
http_access deny manager
http_access allow sph
http_access allow manager localhost
http_access deny all
#acl utilisateurs proxy_auth %LOGIN

biensure ce ne change pas, les lignes marquées d'un # sont en "commentaires", donc ne sont pas pris en compte par le .conf, pour mon erreur c'etait la ligne :
http_access allow !users

Voilà, en espérant aider encore bien d'autres users à vouloir mettre en place un serveur proxy !

A bientot, et encore merci ! (surtout à toi Seb !)

Je reposterais en cas de soucis pour d'autres aventures, comme squidguard ... par exemple :D


Bisounours ! :p
0
Procédure installation SQUID SQUIDGUARD sous CentOS sur www.mlmd.fr
0
jean06800 Messages postés 2 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 15 mai 2008
15 mai 2008 à 22:54
Hello,
En deux mots , 2 choses à faire :
- Contrôle au niveau de l'URL ==> tu configures ton proxy, en particulier SquidGuard (port 3128 je crois),
- Tu ajoutes un filtre supplémentaire avec un flitre supplémentaire au niveau du contenu des pages ==> DansGuardian (port 8080).
Regardes sur le net, tu devrais trouver la marche à suivre (services à installer, fichiers de config, etc...).
Au niveau de ton browser Web, fais pointer sur ton serveur proxy/DansGuardian c'est à dire adresse + port 8080.
Ca marche d'enfer.
A+
0
Hello, pour les mails il faut un serveur pop, je n'ai pas creusé ce problème étant donné que pour moi l'affaire est classée pour l'instant, l'utilisateur en question passe en HTTP. Pour le FTP, pas regardé encore vu que je ne suis pas concerné pour le moment ... Mais il faudra que je regarde un jour ou l'autre ... Si jamais, merci de poster une solution ici ..... ;)

Merci, bon dimanche :)
0
J0K0 Messages postés 163 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 19 juillet 2019 17
10 août 2008 à 21:06
RE,
je crois que mon squid.conf n'a pas changé ... Par contre as tu bien installé un serveur apache ??? Je sais que c'est pour un serveur http, mais nous avons besoin de la commande htpasswd pour faire un add user au proxy .... j'm'étais fais un petit tuto perso, j'essayerais de te filer ca rapidement ..... Et aussi, que j'y pense il faut ajouter webmin à la configuration graphique ......

Je te dirais mon tuto perso que j'ai fais, ensuite tu verrais bien :)
0
Bonjour,

Voila je dois configure un serveur de Bench WItBe et Iplabel, nous allons mettre un proxy/cache.
sur l'os débian.
Je voudrais avoir des conseil pour la conf et les services a lancé

Merci d'avance
0
bonjour à tous.
j'ai eu à travailler sur le même projet.
en fait, pour y arriver, vous deviez suivre les étape suivantes:

1er étape:
supposons que eth0 de votre machine est côté WAN et eth1 côté LAN. vous n'êtes pas obligés de fixer une adresse à votre eht0 mais plutôt à votre eht1 (192.168.11.1)
il faudra d'abord permettre au LAN de se connecter à Internet via la machine qui fera office de proxy en configurant un NAT suivant la commande:

[root@lan ~]# echo 1 > /proc/sys/net/ipv4/ip_forward

[root@lan ~]#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

2ème étape
configurer un serveur DHCP pour faciliter la connexion des postes du LAN. si le paquet DHCP n'est pas encore Installé, et que vous êtes sur une distribution CentOs ce qui est mon cas, vous pouvez utiliser votre CD et taper les commance:
[root@lan ~/CentOS]#rpm -ivh dhcp*
[root@lan ~]#cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf
[root@lan ~]#vi /etc/dhcpd.conf

une fois édité, remplacer l'adresse réseau par défaut par la votre c'est à dire 192.168.11.0 et masque 255.255.255.0, et mettre l'adresse de eth1 sur toutes les autres lignes (192.168.11.1) c'est a dire il est dhcp, dns et autre.

3ème étape (configuration de squid)

[root@lan ~]#vi /etc/squid/squid.conf

acl CONNECT method CONNECT
# ligne 590

acl lan src 192.168.11.0/24
http_access allow localhost
# ligne 637:

http_access allow lan

http_access deny all
# ligne 922: change

http_port
8080
# ligne 2794: add

header_access Referer deny all
header_access X-Forwarded-For deny all
header_access Via deny all
header_access Cache-Control deny all
# ligne 3008:

visible_hostname nom_machine
# ligne 4280:

forwarded_for off

[root@lan ~]#/etc/rc.d/init.d/squid start

Starting squid: [ OK ]

[root@lan ~]#chkconfig squid on

j'espère vous avoir aidé.
0