Dépannage des certificats SSL et de l’autorité ServBay CA
Ce document présente les problèmes courants ainsi que les méthodes de dépannage liés aux certificats SSL et à l’autorité ServBay CA dans l’environnement de développement local ServBay.
Pourquoi mon navigateur indique-t-il que le certificat SSL n’est pas fiable ?
Lorsque vous essayez d’accéder à un site local hébergé via ServBay depuis votre navigateur, si vous voyez les avertissements suivants, cela signifie généralement qu’il y a un souci de configuration des certificats SSL :
- Chrome / Edge :
Your connection is not private
(Votre connexion n’est pas privée)- Code d’erreur
NET::ERR_CERT_AUTHORITY_INVALID
- Code d’erreur
NET::ERR_CERT_COMMON_NAME_INVALID
(plus rare, mais peut survenir si le certificat ne correspond pas au domaine)
- Firefox :
Warning: Potential Security Risk Ahead
(Avertissement : risque de sécurité potentiel)- Après avoir cliqué « Avancé », code d’erreur possible :
SEC_ERROR_UNKNOWN_ISSUER
- Code d’erreur
SSL_ERROR_BAD_CERT_DOMAIN
(si le certificat ne correspond pas au domaine)
- Safari :
This Connection Is Not Private
(Cette connexion n’est pas privée)Safari can't verify the identity of the website "[votre-domaine.test]"
(Safari ne parvient pas à vérifier l'identité du site « votre-domaine.test »)
La cause principale de ce problème est que la « ServBay User CA » et la « ServBay Public CA » ne sont pas correctement installées ou n’ont pas été ajoutées en tant qu’autorités de confiance. Cela peut être dû aux raisons suivantes :
- Le certificat racine de ServBay n’a pas été ajouté à la liste de confiance du système.
- Vous avez utilisé le même nom de domaine (par exemple
myapp.test
) avec d’autres environnements de développement local comme MAMP ou Laravel Herd, ce qui a provoqué des conflits de certificats entre ces outils et ServBay, ou a causé un problème dans leurs propres systèmes de gestion des certificats, ce qui conduit le navigateur à mettre en cache des autorisations ou certificats erronés.
Solution
Veuillez suivre ces étapes :
- Ouvrez ServBay
- Naviguez vers Paramètres (Settings) et trouvez la section ServBay Root CA.
- Cliquez sur Réinstaller ServBay Root CA (Reinstall ServBay Root CA). ServBay tentera de réparer automatiquement l’installation et la confiance du certificat racine.
- Fermez complètement et rouvrez votre navigateur (assurez-vous que toutes les fenêtres et processus sont fermés afin de vider le cache SSL).
- Rafraîchissez votre site. L’erreur de certificat SSL devrait maintenant disparaître.
Si le problème persiste :
Cela indique souvent qu’il subsiste d’anciens certificats obsolètes, conflictuels ou invalides dans le système, en particulier si vous avez précédemment généré des certificats pour le même domaine via d’autres outils (comme MAMP ou Herd).
- Ouvrez l’application Trousseaux d’accès (Keychain Access) sur macOS (vous la trouverez dans « Applications » > « Utilitaires »).
- Dans le champ de recherche en haut à droite, saisissez le domaine concerné (par exemple
myapp.test
, ou essayez également des mots-clés commemamp
ouherd
pour identifier les autorités de certification associées). - Limitez la recherche à la catégorie Certificats dans le menu supérieur.
- Cherchez tous les certificats SSL liés au domaine saisi dans les résultats. Faites tout particulièrement attention à l’émetteur (Issuer) :
ServBay User CA
,MAMP Development CA
,Laravel Herd CA
ou autres noms similaires. - Sélectionnez les certificats liés au domaine en question (notamment ceux qui ne proviennent pas de
ServBay User CA
ou qui semblent suspects), puis appuyez sur la toucheSupprimer
pour les effacer. Il se peut que vous deviez saisir le mot de passe administrateur pour confirmer. Veuillez procéder avec précaution et ne supprimer que les certificats rattachés à vos domaines de développement locaux. - (Optionnel mais recommandé) Répétez la recherche pour
ServBay User CA
etServBay Public CA
afin de vérifier que les certificats sont présents et n’affichent pas de « X » rouge (qui indiquerait un manque de confiance). Si un certificat n’est pas reconnu comme fiable (croix rouge), double-cliquez dessus, développez la section “Confiance (Trust)” et, dans “Lors de l’utilisation de ce certificat (When using this certificate)”, choisissez “Toujours faire confiance (Always Trust)”. - Retournez dans l’application ServBay.
- Naviguez vers Paramètres (Settings) > ServBay Root CA.
- Cliquez sur Recréer tous les certificats utilisateur ServBay (Recreate All ServBay User Certificates). Cela va régénérer un certificat SSL pour chaque site géré via ServBay.
- Redémarrez votre Mac. Cela garantit que tous les services et composants système prennent en compte les nouveaux paramètres de certificat et de confiance.
- Rouvrez votre navigateur et tentez à nouveau d’accéder à votre site.
Grâce à ces exemples de messages d’erreur courants, les utilisateurs peuvent plus rapidement diagnostiquer si leur souci est lié à la confiance du certificat SSL et accéder directement à la solution adéquate.
Que faire si mon certificat SSL est perdu ?
En développant un site local avec ServBay, il peut arriver que les fichiers de certificat SSL du site soient involontairement supprimés ou perdus. Cela empêche le serveur web (Nginx, Caddy ou Apache) de démarrer correctement ou de charger le site, générant des erreurs en lien avec les certificats dans les journaux.
Symptômes
Si le certificat SSL (.crt
ou .key
) signé automatiquement par ServBay pour votre site local est perdu, vous pouvez constater dans les logs de votre serveur web ce type de messages. Typiquement, ces erreurs signifient que le serveur ne trouve pas, ou ne peut pas lire, le chemin du fichier certificat fourni.
Voici quelques exemples d’erreurs courantes :
Erreur Nginx :
nginx: [emerg] cannot load certificate "/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling fopen(/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt, r) error:10000080:BIO routines::no such file)
nginx: configuration file /Applications/ServBay/package/etc/nginx/nginx.conf test failed
2
Erreur Caddy :
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/servbay.host/ser3vbay.host.crt: no such file or directory
Erreur Apache :
AH00526: Syntax error on line 15 of /Applications/ServBay/package/etc/apache/vhosts/servbay.host.conf:
SSLCertificateFile: file '/Applications/ServBay/ssl/pri3vate/tls-certs/servbay.host/servbay.host.crt' does not exist or is empty
2
Dans tous ces cas, le fond du problème reste le même : le chemin du certificat SSL défini dans la configuration du serveur web est incorrect ou le fichier n’existe pas.
Solution
Pour les certificats SSL délivrés automatiquement par ServBay à vos sites locaux, ServBay propose un système de détection et de régénération automatique pour régler ce genre de perte.
Voici la procédure à suivre :
- Lancez l’application ServBay : Assurez-vous que ServBay est en cours d’exécution.
- Accédez à la liste des sites : Dans le panneau latéral gauche de ServBay, cliquez sur Sites.
- Sélectionnez le site affecté : Repérez le site local qui rencontre un problème de certificat SSL et cliquez dessus.
- Détection & régénération automatiques : Lors du chargement de la configuration du site, ServBay vérifiera automatiquement la présence des fichiers de certificat nécessaires. En cas de certificat manquant (fichier
.crt
ou.key
absent), ServBay essaiera de regénérer et de réinstaller automatiquement un certificat flambant neuf, dans le dossier qui convient (/Applications/ServBay/ssl/private/tls-certs/votre-domaine/
). - Redémarrez le serveur Web: Une fois les fichiers certificat de nouveau en place, redémarrez le serveur Web correspondant au site (Nginx, Caddy ou Apache). Pour ce faire, allez dans l’onglet Packages du menu latéral, localisez le serveur utilisé, puis cliquez sur le bouton de redémarrage (souvent représenté par une flèche circulaire).
- Vérifiez que le problème est résolu : Après redémarrage du serveur, tentez d’accéder au site via HTTPS (ex :
https://votre-domaine
). Le site devrait se charger normalement et bénéficier d’une connexion sécurisée.
Points d’attention
- Cette solution concerne uniquement les certificats SSL générés par ServBay pour vos sites locaux. Si vous utilisez des certificats personnalisés importés, ServBay ne les régénère pas automatiquement. Vous devrez les restaurer ou en générer/importer de nouveaux manuellement.
- ServBay utilise une autorité « ServBay User CA » intégrée pour signer vos certificats SSL locaux et permettre l’accès HTTPS en développement. Si, en tentant d’accéder à vos sites locaux HTTPS, vous obtenez toujours des avertissements de non-fiabilité, il se peut que votre système d’exploitation ou votre navigateur n’ait pas reconnu la « ServBay User CA » comme digne de confiance. Veuillez consulter la documentation ServBay concernant la confiance de la CA ServBay.
- ServBay propose des fonctionnalités de sauvegarde des données, incluant les sites et les certificats SSL. Il est conseillé de sauvegarder régulièrement pour pouvoir restaurer rapidement vos informations en cas d’incident.
FAQ
Q : Pourquoi ServBay délivre-t-il automatiquement des certificats SSL pour les sites locaux ?
R : L’objectif de ServBay est d’offrir un environnement de développement local complet. Pour simuler la production et faciliter le débogage des applications HTTPS par les développeurs, ServBay utilise sa propre autorité de certification pour générer et installer automatiquement des certificats sur vos sites locaux, rendant possible l’accès HTTPS en développement.
Q : Puis-je utiliser un certificat SSL que j’ai moi-même généré ou obtenu ?
R : Oui, ServBay prend en charge l’importation et l’utilisation de vos propres certificats SSL (y compris ceux issus du protocole ACME ou de Let's Encrypt). Cependant, ce guide de dépannage porte uniquement sur les certificats générés automatiquement par ServBay.
Q : Regénérer un certificat est-il sécurisé ?
R : Oui, dans le contexte du développement local. ServBay signera simplement un nouveau certificat via sa propre autorité « ServBay User CA », uniquement destiné à vos tests et développements sur votre machine. Cela n’a aucune incidence sur le niveau de sécurité de votre site en production sur Internet.
Conclusion
ServBay fournit des mécanismes puissants et pratiques pour la gestion des certificats SSL sur les environnements de développement locaux. Si un certificat SSL généré par ServBay venait à être supprimé accidentellement, quelques manipulations suffisent pour permettre à ServBay de le détecter et le regénérer automatiquement, vous restaurant ainsi très rapidement un accès HTTPS normal à vos sites locaux.