Divulgation : en tant que partenaire Amazon, AliExpress, KDP, Alison, Hostinger, Printful... DiGiProUnic peut percevoir une commission sur les achats effectués via nos liens. Cela n’affecte jamais le prix que vous payez, ni nos recommandations.
La solution définitive en 2025, quel que soit ton OS ou ton setup
- Let’s Encrypt qui limite à 90 jours + renouvellements parfois ratés sur les serveurs privés
- Entreprises qui passent en certificats internes (self-signed)
- GitLab/GitHub Enterprise derrière un proxy MITM
- Bundles CA obsolètes sur Windows/Linux vieux
- Antivirus (Avast, Kaspersky, Bitdefender) qui injectent leur propre certificat
Les 8 solutions qui fonctionnent VRAIMENT en décembre 2025
1. La solution propre et définitive (recommandée)
Récap visuel (choisis ta douleur)
| Situation | Meilleure solution 2025 | Temps |
|---|---|---|
| Entreprise + Zscaler/proxy MITM | Ajouter le certif entreprise | 2 min |
| GitLab local auto-signé | sslCAInfo ou ssh | 1 min |
| Je veux que ça marche tout de suite | http.sslVerify false (temporaire) | 5 sec |
| Serveur pro avec Let’s Encrypt récent | Mettre à jour ca-certificates | 1 min |
| Tu veux la paix éternelle | Passer en clé SSH | 3 min |
Le tip que plus personne ne devrait ignorer en 2025
Le meilleur hébergeur pour ton GitLab/GitHub auto-hébergé avec certificats automatiques → Hostinger VPS (-70 % première année) – certif Let’s Encrypt gratuit + renouvellement auto toutes les 90 jours, zéro prise de tête.
Tu es en pleine deadline, tu lances ton classique :
git clone https://github.com/...
git pull
git pushEt là, Git te crache à la figure :
fatal: unable to access ‘https://…’: SSL certificate problem: self signed certificate in certificate chain
ou
SSL certificate problem: unable to get local issuer certificate
ou encore
SSL certificate problem: certificate has expired
Tu perds 30 minutes, tu râles, tu bois un café de trop…
Et pendant ce temps, ton collègue sous macOS fait exactement la même commande et ça marche. Injustice totale.
En 2025, cette erreur explose à cause de :
Mais bonne nouvelle : il existe une solution propre pour chaque cas, et une solution « je veux que ça marche maintenant ».
Mets à jour ton bundle de certificats :
Windows → Installe ou mets à jour Git for Windows (v2.46+) → il embarque les nouveaux CA
macOS → brew install openssl && brew link --force openssl
Linux Debian/Ubuntu →
sudo apt update && sudo apt install ca-certificates -y
sudo update-ca-certificates2. Tu es en entreprise avec proxy MITM / Zscaler / antivirus qui intercepte le SSL ?
Ajoute le certificat de l’entreprise dans Git :
# Windows (double-clic sur le .crt puis installer dans "Autorités de certification racines de confiance")
# macOS
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/zscaler-root.crt
# Linux
sudo cp toncertificat.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates3. Le serveur utilise un certificat auto-signé ou expiré (GitLab local, vieux dépôt) ?
Ajoute-le manuellement pour ce dépôt seulement :
git config --global http.sslCAInfo /chemin/vers/ton-certificat.pemOu juste pour un projet :
git config http.sslCAInfo /chemin/vers/ton-certificat.pem4. La méthode « je suis en rush, je veux que ça marche en 3 secondes » (à utiliser qu’en local ou CI privée !!)
git config --global http.sslVerify falseOui, c’est dangereux sur un dépôt public. Mais en local ou derrière ton VPN d’entreprise → c’est safe.
Pour un seul dépôt :
git config http.sslVerify false5. Let’s Encrypt expiré sur un GitLab/GitHub auto-hébergé ?
Force Git à utiliser les nouveaux certificats système :
git config --global http.sslBackend schannel # Windows
git config --global http.sslBackend openssl # Linux/macOS récent6. Tu utilises un vieux Windows 10 sans mise à jour ?
Télécharge manuellement le bundle Mozilla actualisé :
curl -L https://curl.se/ca/cacert.pem -o cacert.pem
git config --global http.sslCAInfo "C:\chemin\cacert.pem"7. Tu es derrière un proxy d’entreprise qui réécrit le SSL ?
Utilise le proxy en HTTP (pas HTTPS) pour Git :
git config --global http.proxy http://proxy.entreprise.com:8080
git config --global https.proxy http://proxy.entreprise.com:80808. Solution 2025 ultra-propre : passe en SSH (et oublie le HTTPS pour toujours)
# Change l'URL du remote
git remote set-url origin git@github.com:username/repo.gitPlus jamais de problème SSL. Jamais.
Crée un fichier ~/.gitconfig global avec ça une fois pour toutes :
[http]
sslBackend = openssl
sslVerify = true
[core]
sshCommand = "ssh -o StrictHostKeyChecking=no"Toi, tu as résolu ce merdier comment ?
Raconte-nous en commentaire ta pire galère SSL Git (et surtout ta solution miracle).
On est des milliers à lire ça en pleurant devant notre terminal à 2h du mat’.
Et partage cet article à ton collègue dev qui t’a saoulé avec son “ça marche chez moi” hier.
Ne manque pas notre analyse détaillée juste ici : Base de données MySQL : “ERROR 1045 (28000): Access denied for user”
Tu peux aussi lire ceci pour mieux comprendre : Securing your GitHub Pages site with HTTPS
