Project

General

Profile

Scénario #32499

installMinion : exclure les accès http://salt du proxy

Added by Daniel Dehennin 8 months ago. Updated 7 months ago.

Status:
Terminé (Sprint)
Priority:
Normal
Assigned To:
-
Category:
-
Start date:
04/22/2021
Due date:
06/04/2021
% Done:

100%

Story points:
-
Remaining (hours):
0.00 hour
Velocity based estimate:
Release:
Release relationship:
Auto

Description

Problème

Amonecole 2.8.1

Il n’est pas possible d’intégrer un poste GNU/Linux sur Amonecole 2.8.1

  • Téléchargement de l’outil installMinion.sh ⮕ OK
    root@pcubuntumate:~# wget salt/joineole/installMinion.sh
    --2021-05-12 17:30:28--  http://salt/joineole/installMinion.sh
    Résolution de salt (salt)… 10.3.2.5
    Connexion à salt (salt)|10.3.2.5|:80… connecté.
    requête HTTP transmise, en attente de la réponse… 200 OK
    Taille : 3227 (3,2K) [application/octet-stream]
    Enregistre : «installMinion.sh»
    
    installMinion.sh                               100%[=================================================================================================>]   3,15K  --.-KB/s    ds 0s      
    
    2021-05-12 17:30:28 (315 MB/s) - «installMinion.sh» enregistré [3227/3227]
    
  • Export des variables d’environnement http_proxy et https_proxy pour les téléchargement depuis Internet :
    root@pcubuntumate:~# export http_proxy=http://10.3.2.2:3128  https_proxy=http://10.3.2.2:3128
    
  • Installation du minion avec installMinion.sh
    root@pcubuntumate:~# sh ./installMinion.sh 
    check 'salt' dns resolution ?
    La résolution du nom 'salt' est fonctionnelle, Ok
    http://10.3.2.5/joineole/bootstrap-salt/bootstrap-salt.sh failed to download to /tmp/bootstrap-salt.sh
    

Amon 2.8

Il y a aussi un problème par défaut sur Amon, dans notre infrastructure etb1 nous avons une configuration spéciale :

    "proxy_bypass_domain_eth2":{"owner":"gen_config","val":["www.ac-dijon.fr","www.anglaisfacile.com","scribe.etb1.lan"]},

Ce qui permet les accès directs à Scribe sans passer par le proxy.

Cela n’est pas possible sans configuration particulière sur Amon

  • sans proxy_bypass_domain_eth2
    root@pcubuntumate:~# wget salt/joineole/installMinion.sh
    --2021-05-19 11:13:37--  http://salt/joineole/installMinion.sh
    Résolution de salt (salt)… 10.1.3.5
    Connexion à salt (salt)|10.1.3.5|:80… connecté.
    requête HTTP transmise, en attente de la réponse… 403 Forbidden
    2021-05-19 11:13:37 erreur 403 : Forbidden.
    
  • sans proxy_bypass_domain_eth2 et avec export http_proxy et https_proxy
    root@pcubuntumate:~# export http_proxy=http://10.1.2.1:3128 https_proxy=http://10.1.2.1:3128
    root@pcubuntumate:~# wget salt/joineole/installMinion.sh
    --2021-05-19 11:15:04--  http://salt/joineole/installMinion.sh
    Connexion à 10.1.2.1:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-19 11:15:04 erreur 407 : Proxy Authentication Required.
    
    root@pcubuntumate:~# wget salt.etb3.lan/joineole/installMinion.sh
    --2021-05-19 11:16:24--  http://salt.etb3.lan/joineole/installMinion.sh
    Connexion à 10.1.2.1:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-19 11:16:25 erreur 407 : Proxy Authentication Required.
    

Étude

Le téléchargement, avec variable d’environnement http_proxy et https_proxy, nécessite une authentification :

  • Par adresse IP :
    root@pcubuntumate:~# wget http://10.3.2.5/joineole/bootstrap-salt/bootstrap-salt.sh
    --2021-05-12 17:33:29--  http://10.3.2.5/joineole/bootstrap-salt/bootstrap-salt.sh
    Connexion à 10.3.2.2:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-12 17:33:29 erreur 407 : Proxy Authentication Required.
    
  • Par le nom :
    root@pcubuntumate:~# wget http://salt/joineole/bootstrap-salt/bootstrap-salt.sh
    --2021-05-12 17:34:05--  http://salt/joineole/bootstrap-salt/bootstrap-salt.sh
    Connexion à 10.3.2.2:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-12 17:34:05 erreur 407 : Proxy Authentication Required.
    

L’export du proxy est obligatoire pour installer le minion mais le téléchargement de l’outil d’installation doit en être exclu de l’authentification.

Une fois l’authentification désactivé pour salt et salt.etb3.lan, les accès par le proxy donnent :

  • Pour le nom court, squid ne qualifie pas le nom salt en salt.etb3.lan, il ne peut donc accéder à la ressource (dig +short salt ne renvoie rien)
    root@pcubuntumate:~# wget --delete-after http://salt/joineole/bootstrap-salt/bootstrap-salt.sh
    --2021-05-19 10:45:59--  http://salt/joineole/bootstrap-salt/bootstrap-salt.sh
    Connexion à 10.3.2.2:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 503 Service Unavailable
    2021-05-19 10:45:59 erreur 503 : Service Unavailable.
    
  • Pour le nom complètement qualifié
    root@pcubuntumate:~# wget --delete-after http://salt.etb3.lan/joineole/bootstrap-salt/bootstrap-salt.sh
    --2021-05-19 10:46:17--  http://salt.etb3.lan/joineole/bootstrap-salt/bootstrap-salt.sh
    Connexion à 10.3.2.2:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 200 OK
    Taille : 300739 (294K) [application/octet-stream]
    Enregistre : «bootstrap-salt.sh.tmp»
    
    bootstrap-salt.sh.tmp                          100%[=================================================================================================>] 293,69K  --.-KB/s    ds 0,007s  
    
    2021-05-19 10:46:17 (40,7 MB/s) - «bootstrap-salt.sh.tmp» enregistré [300739/300739]
    
    Destruction de bootstrap-salt.sh.tmp.
    

Propositions

On souhaite que l’utilisateur utilise http://salt/joineole/

  • Exclure salt du proxy au niveau des appels du client no_proxy=salt;salt.<FQDN> dans installMinion
    root@pcubuntumate:~# export http_proxy=http://10.1.2.1:3128 https_proxy=http://10.1.2.1:3128
    root@pcubuntumate:~# export no_proxy=salt
    root@pcubuntumate:~# wget http://salt/joineole/installMinion.sh
    --2021-05-25 11:31:47--  http://salt/joineole/installMinion.sh
    Résolution de salt (salt)… 10.1.3.5
    Connexion à salt (salt)|10.1.3.5|:80… connecté.
    requête HTTP transmise, en attente de la réponse… 403 Forbidden
    2021-05-25 11:31:47 erreur 403 : Forbidden.
    
  • Exclure ip_serveur_scribe_dmz de l’obligation de proxy
    • Soit Manuellement dans GenConfig (proxy_bypass_domain_eth2)
    • Soit Automatiquement en modifiant les modèles ERA car ce n’est pas prévu à l’heure actuelle

On souhaite que l’utilisateur utilise http://salt.<FQDN>/joineole

  • Utiliser le nom complètement qualifié de salt au lieu de son adresse IP ou du nom court dans installMinion
  • Exclure salt.FQDN de l’authentification proxy (proxy_noauth_auto de ERA)
    • Comment déterminer, sur l’Amon, le FQDN de salt afin de remplir correctement proxy_noauth_auto ?

ANNEXE

  • mieux détecter la nécessité d’un proxy pour le téléchargement de la clef publique

Subtasks

Tâche #32205: installMinion.sh : ajouter un test d'accès en amontFerméDaniel Dehennin

Tâche #32529: Utiliser le nom complètement qualifié pour télécharger bootstrap-salt.shFerméDaniel Dehennin

Tâche #32530: Exclure automatiquement les accès http://salt et http://salt.FQDN du proxyFerméDaniel Dehennin

Tâche #32577: On voit encore une erreur de proxy authentifié sur AmonEcoleFermé


Related issues

Related to Distribution EOLE - Scénario #32487: Amon 2.8.1 : impossible de se connecter en HTTP à scribe sans proxy depuis la zone pédagogique Terminé (Sprint) 05/17/2021 06/04/2021

History

#1 Updated by Daniel Dehennin 8 months ago

  • Related to Scénario #32487: Amon 2.8.1 : impossible de se connecter en HTTP à scribe sans proxy depuis la zone pédagogique added

#3 Updated by Daniel Dehennin 8 months ago

  • Subject changed from Amonecole 2.8.1 : le proxy ne devrait pas être nécessaire pour se connecter au serveur HTTP de la zone pédago to Amonecole 2.8.1 : le proxy ne devrait pas être nécessaire pour se connecter au serveur HTTP de la zone pédago

#4 Updated by Daniel Dehennin 8 months ago

  • Related to Tâche #32205: installMinion.sh : ajouter un test d'accès en amont added

#5 Updated by Daniel Dehennin 8 months ago

  • Parent task deleted (#32104)

#6 Updated by Daniel Dehennin 8 months ago

  • Tracker changed from Tâche to Scénario
  • Due date set to 05/14/2021
  • Release set to EOLE 2.8.1

#7 Updated by Daniel Dehennin 8 months ago

  • Subject changed from Amonecole 2.8.1 : le proxy ne devrait pas être nécessaire pour se connecter au serveur HTTP de la zone pédago to installMinion : le proxy ne doit être utilisé que pour les téléchargements depuis Internet
  • Description updated (diff)

#8 Updated by Daniel Dehennin 8 months ago

  • Target version changed from sprint 2021 17-19 Equipe MENSR to sprint 2021 20-22 Equipe MENSR

#9 Updated by Daniel Dehennin 8 months ago

  • Subject changed from installMinion : le proxy ne doit être utilisé que pour les téléchargements depuis Internet to installMinion : exclure les accès http://salt de l’authentification proxy
  • Description updated (diff)

#10 Updated by Daniel Dehennin 8 months ago

Cela fonctionne bien dans notre infrastructure etb1 car nous avons une configuration spéciale :

    "proxy_bypass_domain_eth2":{"owner":"gen_config","val":["www.ac-dijon.fr","www.anglaisfacile.com","scribe.etb1.lan"]},

Ce qui permet les accès directs à Scribe sans passer par le proxy.

Cela n’est pas possible sans configuration particulière sur Amon

  • sans proxy_bypass_domain_eth2
    root@pcubuntumate:~# wget salt/joineole/installMinion.sh
    --2021-05-19 11:13:37--  http://salt/joineole/installMinion.sh
    Résolution de salt (salt)… 10.1.3.5
    Connexion à salt (salt)|10.1.3.5|:80… connecté.
    requête HTTP transmise, en attente de la réponse… 403 Forbidden
    2021-05-19 11:13:37 erreur 403 : Forbidden.
    
  • sans proxy_bypass_domain_eth2 et avec export http_proxy et https_proxy
    root@pcubuntumate:~# export http_proxy=http://10.1.2.1:3128 https_proxy=http://10.1.2.1:3128
    root@pcubuntumate:~# wget salt/joineole/installMinion.sh
    --2021-05-19 11:15:04--  http://salt/joineole/installMinion.sh
    Connexion à 10.1.2.1:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-19 11:15:04 erreur 407 : Proxy Authentication Required.
    
    root@pcubuntumate:~# wget salt.etb3.lan/joineole/installMinion.sh
    --2021-05-19 11:16:24--  http://salt.etb3.lan/joineole/installMinion.sh
    Connexion à 10.1.2.1:3128… connecté.
    requête Proxy transmise, en attente de la réponse… 407 Proxy Authentication Required
    2021-05-19 11:16:25 erreur 407 : Proxy Authentication Required.
    

La solution la plus simple est donc d’exclure automatiquement ces accès de l’authentification.

La documentation ne fait pas mention de la configuration des variables proxy_bypass_domain_ethX.

#11 Updated by Daniel Dehennin 8 months ago

  • Description updated (diff)

#12 Updated by Daniel Dehennin 8 months ago

  • Subject changed from installMinion : exclure les accès http://salt de l’authentification proxy to installMinion : exclure les accès http://salt du proxy

#13 Updated by Joël Cuissinat 7 months ago

  • Status changed from Nouveau to Terminé (Sprint)

Also available in: Atom PDF