Gestion des vhost
2024-09 : j'ai rencontré beaucoup de problème avec ce script lors du déploiement du cloud primevere.
Il n'a pas été en mesure de générer le certificat du premier coup. Par la suite, le certificat a été créé avec un certificat LE expiré dans la chaîne.
J'ai pu lancer le script avec les options -v et -s qui permet de sélectionner les étapes du script que l'on souhaite exécuter ( -l pour avoir la liste des étapes).
Au final, j'ai utilisé certbot pour générer le certificat
Création d'un vhost sur le frontal
Cette création se fait sur Merlin en utilisant le script /etc/nginx/scripts/vh_le.py (disponible sur git par ici).
Elle permet la mise en place d'une configuration en reverse proxy, avec ssl, sur les noms de domaine choisis.
What it does
Voir aussi ici.
En résumé:
- Vérification des enregistrements DNS
- Mise en place d'un premier vhost en http permettant la validation des certificats Let'sEncrypt
- Génération d'un fichier de conf contrôlant la génération d'un certificat
- Création et installation du certificat via les commandes acme_create et acme_renew
- Mise en place du vhost final
- Relance du service nginx
Principe
Créer le fichier de conf
En s'inspirant du fichier vh_le.conf
Les éléments à modifier sont domain_name, sub (la liste des domaines) et ip6_back (l'ip du serveur de backend).
Lancer la commande
Il suffit de faire:
./vh_le.py -c fichierdeconf
À l'issue de cette, le nouveau vhost devrait être accessible en https.
Configurer le backend
TODO, mais en gros ça va dépendre de l'application déployée.
Configurer la supervision
Demander @thomas de:
créer sur son zabbix, associé à merlin :
- un nouvel item
- nom: check_cert_VHOSTNAME
- type: external check
- key: check_cert[“-d”,“VHOSTNAME.hadoly.fr”,“443”]
- units: days
- update interval: 43200
- Applications: HTTPS service
- un nouveau trigger:
- name: SSL certificate on {HOST.NAME} for VHOSTNAME about to expire
- expression: {merlin:check_cert[“-d”,“VHOSTNAME.hadoly.fr”,“443”].last()}<30
- severity: warning