Proposition Scénario #8123
Les modifications des listes de proxy doivent être validées avant d’être appliquées
Description
Problème¶
Lorsqu’un utilisateur ajoute un domaine à une liste de squid qui se trouve être un domaine parent d’une entrée déclarée précédemment, squid considère que c’est une erreur.
Pour tester¶
# Se connecter au conteneur proxy # Ajouter l’entrée *@.canonical.com@* au fichier *@/etc/squid/domaines_noauth_user@* root@internet:~# echo '.canonical.com' > /etc/squid/domaines_noauth_user # Vérifier la sortie de la commande *@squid -k parse@* root@internet:~# squid -k parse && echo -e "\nOK\n" || echo -e "\nNOK\n" [...] 2017/09/04 10:52:27| Processing: acl noauth dstdomain "/etc/squid/domaines_noauth_user" 2017/09/04 10:52:27| ERROR: '.archive.canonical.com' is a subdomain of '.canonical.com' 2017/09/04 10:52:27| ERROR: You need to remove '.archive.canonical.com' from the ACL named 'noauth' FATAL: Bungled /etc/squid/common-squid1.conf line 13: acl noauth dstdomain "/etc/squid/domaines_noauth_user" [...] NOK
Il faut noter qu’ajouter un sous-domaine d’un domaine parent prédéclaré ne pose pas de problème :
# Se connecter au conteneur proxy # Vérifier que *@.ubuntu.com@* est bien présent dans *@/etc/squid/domaines_noauth@* root@internet:~# grep '^\.ubuntu\.com' /etc/squid/domaines_noauth .ubuntu.com # Ajouter l’entrée *@.archive.ubuntu.com@* au fichier *@/etc/squid/domaines_noauth_user@* root@internet:~# echo '.archive.ubuntu.com' > /etc/squid/domaines_noauth_user # Vérifier la sortie de la commande *@squid -k parse@* root@internet:~# squid -k parse && echo -e "\nOK\n" || echo -e "\nNOK\n" [...] OK
Solution¶
Valider la configuration lors de chaque ajout d’une entrée dans l’interface ead avant de demander à squid de la prendre en compte :
- L’utilisateur saisie un domaine à ajouter
- ead ajoute l’entrée à la configuration Squid
- ead exécute la commande
squid -k parse
dans le conteneur proxy et vérifie la sortie,0
en cas de succès,1
en cas d’erreur - En cas d’erreur
- La dernière entrée est supprimée du fichier de configuration
- ead analyse la sortie d’erreur de la commande
squid -k parse
afin d’extraire l’information pretinente (préfixe<DATE>| ERROR:
) et l’affiche à l’utilisateur
Demande initiale¶
May 5 17:21:51 pf-amon squid3: Bungled common-squid1.conf line 13: acl noauth dstdomain "/etc/squid3/domaines_noauth" May 5 17:23:44 pf-amon squid3: Bungled common-squid1.conf line 16: acl nocache dstdomain "/etc/squid3/domaines_nocache"
en commentant les lignes 13 16 de common-squid1.conf c'est ok
Demandes liées
Historique
#1 Mis à jour par Luc Bourdot il y a presque 10 ans
- Statut changé de Nouveau à A étudier
- Assigné à mis à developpeurs_eole
- Priorité changé de Normal à Haut
#2 Mis à jour par Luc Bourdot il y a presque 10 ans
- Statut changé de A étudier à Accepté
- Priorité changé de Haut à Normal
Squid verifie les acls pour eviter des recouvrements entre domains et sous-domains et
visiblement les "warnings" des versions précédentes sont devenues des "errors" ce qui bloque le lancement.
Pour l'instant il convient de corriger "à la main" la liste des domaines, par la suite il faut voir si on peut sécuriser la saisie en faisant une validation avec la commande squid -k parse qui permet de verifier la configuration squid.
A faire aussi lors du processus de migration 2.3 vers 2.4
#3 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Temps estimé mis à 3.00 h
Même erreur après tests de migration 2.3 -> 2.4 sur notre établissement pilote :
root@amon:/etc/squid3# service squid3 restart * Restarting Squid HTTP Proxy 3.x squid3 * Creating Squid HTTP Proxy 3.x cache structure 2014/05/20 17:46:39| ERROR: '.eole.ac-dijon.fr' is a subdomain of '.ac-dijon.fr' 2014/05/20 17:46:39| ERROR: because of this '.ac-dijon.fr' is ignored to keep splay tree searching predictable 2014/05/20 17:46:39| ERROR: You should remove '.ac-dijon.fr' from the ACL named 'noauth' FATAL: Bungled common-squid1.conf line 15: acl noauth dstdomain "/etc/squid3/domaines_noauth_user" Squid Cache (Version 3.1.20): Terminated abnormally.
#4 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Projet changé de Amon à eole-proxy
#5 Mis à jour par Daniel Dehennin il y a plus de 8 ans
- Assigné à
developpeurs_eolesupprimé
#6 Mis à jour par Joël Cuissinat il y a presque 7 ans
- Lié à Tâche #20125: L'ajout d'un domaine à proxy_noauth déjà présent dans proxy_noauth_auto empèche le démarrage de squid3.2 ajouté
#7 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Tracker changé de Anomalie à Demande
- Sujet changé de squid ne demarre pas à Avec des exceptions sur des domaines qui se recouvrent, squid ne demarre pas
- Statut changé de Accepté à En attente d'informations
C'est toujours le cas sur EOLE 2.6.2 (squid 3.5.12) ! Est-ce qu'on peut se permettre de ne rien faire ?
root@amon:~# echo -e ".eole.ac-dijon.fr\n.ac-dijon.fr" > /etc/squid/domaines_noauth_user root@amon:~# service squid restart root@amon:~# service squid status ● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; bad; vendor preset: enabled) Active: active (exited) since jeu. 2017-07-27 14:30:25 CEST; 14s ago Docs: man:systemd-sysv-generator(8) Process: 21043 ExecStop=/etc/init.d/squid stop (code=exited, status=0/SUCCESS) Process: 21064 ExecStart=/etc/init.d/squid start (code=exited, status=0/SUCCESS) juil. 27 14:30:25 amon squid[21064]: Page faults with physical i/o: 0 juil. 27 14:30:25 amon squid[21064]: 2017/07/27 14:30:25| ERROR: '.eole.ac-dijon.fr' is a subdomain of 'eole.ac-dijon.fr' juil. 27 14:30:25 amon squid[21064]: 2017/07/27 14:30:25| ERROR: You need to remove '.eole.ac-dijon.fr' from the ACL named 'noauth' juil. 27 14:30:25 amon squid[21064]: FATAL: Bungled /etc/squid/common-squid1.conf line 13: acl noauth dstdomain "/etc/squid/domaines_noauth_user" juil. 27 14:30:25 amon squid[21064]: Squid Cache (Version 3.5.12): Terminated abnormally. juil. 27 14:30:25 amon squid[21064]: CPU Usage: 0.004 seconds = 0.004 user + 0.000 sys juil. 27 14:30:25 amon squid[21064]: Maximum Resident Size: 45920 KB juil. 27 14:30:25 amon squid[21064]: Page faults with physical i/o: 0 juil. 27 14:30:25 amon squid[21064]: ...fail! juil. 27 14:30:25 amon systemd[1]: Started LSB: Squid HTTP Proxy version 3.x.
#8 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Statut changé de En attente d'informations à Nouveau
#9 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Assigné à mis à Daniel Dehennin
#10 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Tracker changé de Demande à Proposition Scénario
- Sujet changé de Avec des exceptions sur des domaines qui se recouvrent, squid ne demarre pas à Les modifications des listes de proxy doivent être validées avant d’être appliquées
- Description mis à jour (diff)
- Assigné à
Daniel Dehenninsupprimé
#11 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Catégorie mis à Version majeure
#12 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Description mis à jour (diff)
#13 Mis à jour par Gilles Grandgérard il y a environ 6 ans
- Tracker changé de Proposition Scénario à Scénario
- Release mis à EOLE 2.7.0
#14 Mis à jour par Gilles Grandgérard il y a environ 6 ans
- Release changé de EOLE 2.7.0 à EOLE 2.7.1
#15 Mis à jour par Joël Cuissinat il y a plus de 4 ans
- Release
EOLE 2.7.1supprimé
#16 Mis à jour par Joël Cuissinat il y a plus d'un an
- Tracker changé de Scénario à Proposition Scénario
- Statut changé de Nouveau à Classée sans suite