Proxy HTTP
GitGuardian vous permet de configurer un proxy HTTP pour le trafic sortant de l'application.
Cela inclut le trafic vers les services comme Replicated, Docker, les intégrations de messagerie et autres connexions externes. Pour plus de détails, consultez notre page Prérequis réseau.
- Vous devez ajouter
127.0.0.1,10.0.0.0/8à la liste des exceptions de proxyNO_PROXYpour permettre le trafic local et interne au cluster de passer le proxy (remplacez10.0.0.0/8par votre sous-réseau interne). - Vérifiez que les FQDN du proxy sont résolvables et accessibles depuis votre cluster Kubernetes.
- La spécification du mot de passe dans les URL de proxy est prise en charge.
- GitGuardian peut être déployé avec des proxys HTTP et HTTPS. Pour le proxy HTTPS, il peut être nécessaire d'ajouter une autorité de certification (CA) pour que le certificat SSL du proxy soit considéré de confiance. Ce processus garantit une communication sécurisée et fiable entre l'application et le proxy. Pour plus d'informations, consultez la section CA personnalisée.
Installation via Helm
Pour configurer un proxy pour le trafic HTTP(s) sortant, mettez à jour votre fichier values Helm en conséquence. Si vous utilisez une autorité de certification (CA) personnalisée, assurez-vous qu'elle est configurée à la fois sous replicated.privateCASecret et dans la configuration de l'application sous tls.customCa. Pour plus de détails, consultez la documentation Custom CA.
À partir de la version 2025.5.0, les URL de proxy sont toujours stockées comme Secret.
Avec un secret existant
Le secret doit être présent avant l'installation de GitGuardian.
L'exemple suivant définira les clés http_proxy et https_proxy du Secret Kubernetes gim-proxy.
proxy:
noProxyHostNames:
- 127.0.0.1
- 10.0.0.0/8
existingSecret: 'gim-proxy'
existingSecretKeys:
httpProxyUrl: 'http_proxy' # Secret should contain: http://username:password@proxy.company.com:8080
httpsProxyUrl: 'https_proxy' # Secret should contain: https://username:password@proxy.company.com:8080
replicated:
privateCASecret: # optional if you are using a custom CA
name: custom-ca-secret-name
key: 'custom-ca.pem'
extraEnv:
- name: NO_PROXY
valueFrom:
configMapKeyRef:
name: gim-config
key: 'NO_PROXY'
- name: HTTP_PROXY
valueFrom:
secretKeyRef:
name: 'gim-proxy'
key: 'http_proxy' # Example: http://username:password@proxy.company.com:8080
- name: HTTPS_PROXY
valueFrom:
secretKeyRef:
name: 'gim-proxy'
key: 'https_proxy' # Example: https://username:password@proxy.company.com:8080
Avec des values inline
Lors de l'utilisation de cette méthode, le chart GitGuardian gérera pour vous le Secret Kubernetes contenant les URL de proxy.
proxy:
httpProxyUrl: 'http://proxy:8080'
httpsProxyUrl: 'http://proxy:8080'
noProxyHostNames:
- 127.0.0.1
- 10.0.0.0/8
Installation via KOTS
Dans la console d'administration KOTS, vous pouvez configurer la ou les URL pour le trafic HTTP(s) sortant vers votre serveur proxy :

Spécifique au cluster Embedded
Pour les installations cluster embedded, une configuration de proxy supplémentaire peut être requise au niveau cluster pour gérer les pulls d'images de conteneurs et les communications de niveau système.
La configuration proxy au niveau du cluster embedded gère le trafic de niveau système (pulls d'images de conteneurs, communications API Kubernetes), tandis que la configuration proxy au niveau application décrite ci-dessus gère le trafic de l'application GitGuardian (intégrations, notifications, etc.). Les deux peuvent être nécessaires selon votre environnement.
Pour la méthode d'installation cluster embedded, vous pouvez configurer les paramètres de proxy lors de l'installation.
Pour configurer un proxy HTTP sans authentification durant l'installation :
LICENSE_ID=your_license
curl -f https://replicated.app/embedded/gitguardian/stable -H "Authorization: $LICENSE_ID" -o gitguardian.tgz
tar -xvzf gitguardian.tgz
sudo ./gitguardian install --license license.yaml \
--http-proxy http://proxy.example.com:8080 \
--https-proxy http://proxy.example.com:8080
Lors de l'utilisation d'un proxy nécessitant une authentification, vous pouvez inclure les identifiants dans l'URL du proxy :
sudo ./gitguardian install --license license.yaml \
--http-proxy http://username:password@proxy.example.com:8080 \
--https-proxy http://username:password@proxy.example.com:8080
Cependant, certains composants Kubernetes ne prennent pas en charge les proxys authentifiés. Si vous rencontrez des problèmes avec les pulls d'images de conteneurs (comme des erreurs ImagePullBackOff), vous devrez peut-être appliquer la solution de contournement décrite ci-dessous.
Solution de contournement pour les problèmes de proxy authentifié
Le cluster embedded crée la configuration proxy dans /etc/systemd/system/k0scontroller.service.d/http-proxy.conf. Pour contourner les problèmes d'authentification :
-
Localisez le fichier de configuration proxy :
sudo cat /etc/systemd/system/k0scontroller.service.d/http-proxy.conf -
Éditez le fichier pour préfixer les variables d'environnement avec
CONTAINERD_:sudo vi /etc/systemd/system/k0scontroller.service.d/http-proxy.conf -
Modifiez le fichier pour qu'il ressemble à ceci :
[Service]Environment="CONTAINERD_HTTP_PROXY=http://username:password@proxy.example.com:8080"Environment="CONTAINERD_HTTPS_PROXY=http://username:password@proxy.example.com:8080"Environment="CONTAINERD_NO_PROXY=localhost,127.0.0.1,.cluster.local,.svc,10.244.0.0/16" -
Redémarrez le service k0s controller :
sudo systemctl daemon-reloadsudo systemctl restart k0scontroller -
Vérifiez la configuration proxy en vérifiant que les pods peuvent puller des images et que la connectivité externe fonctionne :
sudo ./gitguardian shellkubectl get pods -Akubectl run test-pod --image=curlimages/curl --rm -it --restart=Never -- curl -I https://www.gitguardian.com