Aller au contenu

Proxy, Vagrant et Google SDK sur Windows

S'authentifier sur le Proxy CAA sur Windows

Chez CAA, l'accès à Internet doit passer par un proxy. Pour les navigateurs web c'est déjà configuré, mais pour les outils de développement comme Vagrant ou le Google SDK, il faut configurer le proxy manuellement, incluant l'authentification. C'est le rôle de PX, un proxy local qui permet de rediriger les requêtes vers le proxy CAA et de gérer l'authentification avec celui-ci, en réutilisant l'authentification NTLM de l'utilisateur Windows.

  1. Installer PX dans C:\Temp\dev\soft\px\
  2. Télécharger PX depuis Github : https://github.com/genotrance/px/releases/download/v0.10.2/px-v0.10.2-windows-amd64.zip
  3. Dézipper le fichier dans C:\Temp\dev\soft\

  4. Remplacer le fichier C:\Temp\dev\soft\px\px.ini par le contenu suivant :

    [proxy]
    ; Configuration automatique du proxy (recommandé)
    pac = http://cncainet.ca-sa.credit-agricole.fr/ieconfig/caagis.pac
    pac_encoding = iso-8859-15
    
    ; Configuration manuelle du proxy CAA
    ; server = prxcaagis-vip.caa01.local:8080
    
    noproxy = localhost,127.0.0.*
    port = 3128
    

  5. Lancer PX

    C:\Temp\dev\soft\px\px.exe
    

  6. Dans un terminal cmd, configurer les variables d'environnement pour qu'elles persistent après le redémarrage de la machine :

    setx https_proxy http://localhost:3128
    setx http_proxy http://localhost:3128
    setx HTTPS_PROXY http://localhost:3128
    setx HTTP_PROXY http://localhost:3128
    

Désormais, les outils de développement en ligne de commande comme Vagrant ou le Google SDK utiliseront le proxy local PX pour accéder à Internet via le proxy CAA.

Vagrant avec Proxy

Pré-requis: avoir installé PX, Vagrant et VirtualBox

  1. Dans un terminal Windows cmd, installer le plugin Vagrant proxyconf qui permet de configurer automatiquement les paramètres de proxy à l'intérieur de la VM Vagrant :

    vagrant plugin install vagrant-proxyconf
    

  2. Dans le fichier Vagrantfile, ajouter les lignes suivantes pour que les processus à l'intérieur de la VM Vagrant utilisent le proxy PX :

        config.proxy.http     = "http://10.0.2.2:3128"
        config.proxy.https    = "http://10.0.2.2:3128"
        config.proxy.no_proxy = "localhost,127.0.0.*"
    

  3. Lancer la VM Vagrant avec le proxy configuré :

    # Assurez-vous d'être dans le répertoire contenant le Vagrantfile
    vagrant up
    

Google SDK sur Ubuntu (dans Vagrant)

# Ajouter le dépôt Google Cloud SDK
sudo apt-get update

# Installer les dépendances nécessaires
sudo apt-get install apt-transport-https ca-certificates gnupg curl

# Ajouter la clé GPG du dépôt
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg

# Ajouter le dépôt à la liste des sources
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

# Installer le SDK Google Cloud
sudo apt-get update && sudo apt-get install google-cloud-cli

Enfin, se connecter à son compte Google Cloud en utilisant la commande suivante dans le terminal :

gcloud init

Google SDK sur Windows

  1. Télécharger le SDK depuis le site officiel :
  2. Exécuter l'installeur et suivre les instructions à l'écran, sélectionner :
    • "Single User" pour l'installation
    • "Install Bundled Python", "Install Command Line Tools" et "Beta Commands"
  3. Se connecter à son compte Google Cloud en utilisant la commande suivante :

    gcloud init
    

  4. Vérifier que le SDK fonctionne correctement en exécutant une des commandes suivantes :

    gcloud projects list
    gcloud storage ls
    

Tests en cours

Proxy LZ Google CAGIP

L'objectif : utiliser le Proxy SWP LZ CAGIP pour les APIs Google Cloud, pour utiliser l'interconnexion directe avec le Cloud Google et ainsi éviter de sortir sur Internet

Adresse du proxy : 10.163.85.226:3128

Constat au 17 juin 2025 : KO depuis le poste de Billi, le Proxy est inaccessible (pas de ping, pas de connexion HTTP)

Proxy SWP LZ CAGIP 1 Proxy SWP LZ CAGIP 2