# Let's encrypt # Installation Installer les paquets : ``` apt-get install dehydrated dehydrated-apache2 ``` Recharger Apache : ``` systemctl reload apache2.service ``` S'enregistrer : ``` /usr/bin/dehydrated --register --accept-terms ``` # Générer un certificat Ouvrir les ports http (80) et https (443) : ``` ufw allow '80' ufw allow '443' ``` Configurer a minima le site web dans `/etc/apache2/sites-available/foo.libre-service.org.conf` : ``` ServerName foo.libre-service.eu ServerAdmin admin@libre-service.eu CustomLog ${APACHE_LOG_DIR}/foo.libre-service.eu/infos.libre-service.eu-access.log combined ErrorLog ${APACHE_LOG_DIR}/foo.libre-service.eu/infos.libre-service.eu-error.log LogLevel warn Redirect 302 / https://foo.libre-service.eu/ ``` Activer la configuration : ``` a2ensite foo.libre-service.eu.conf ``` Vérifier que c'est bon et recharger : ``` apachectl configtest && systemctl reload apache2 ``` Vérifier le logrotate des logs : ``` /var/log/apache2/*.log /var/log/apache2/*/*log { monthly missingok rotate 6 … ``` Ajouter foo.libre-service.eu dans `/etc/dehydrated/domains.txt`. Lancer la génération : ``` /usr/bin/dehydrated -c ``` Le certificat est généré dans `/var/lib/dehydrated/certs/foo.libre-service.eu/`. Compléter la partie SSL `/etc/apache2/sites-enabled/foo.libre-service.org.conf` : ``` ServerName pad.libre-service.eu ServerAdmin admin@libre-service.eu CustomLog ${APACHE_LOG_DIR}/pad.libre-service.eu/pad.libre-service.eu-access.log combined ErrorLog ${APACHE_LOG_DIR}/pad.libre-service.eu/pad.libre-service.eu-error.log LogLevel warn SSLEngine On SSLCertificateFile /var/lib/dehydrated/certs/pad.libre-service.eu/fullchain.pem SSLCertificateKeyFile /var/lib/dehydrated/certs/pad.libre-service.eu/privkey.pem #Include hsts.conf #Include statoolinfos.conf DocumentRoot /var/www/pad.libre-service.eu #php_admin_value open_basedir "/var/www/pad.libre-service.eu/" Options FollowSymLinks AllowOverride None Require all granted DirectoryIndex index.xhtml ``` Activer le module SSL : ``` apachectl configtest && systemctl reload apache2 ``` Vérifier que c'est bon et recharger : ``` apachectl configtest && systemctl reload apache2 ``` # Renouvellement automatique Ajouter un script cron dans `/etc/cron.weekly/dehydrated` : ``` #!/bin/bash /usr/bin/dehydrated -c systemctl reload apache2.service ``` Et lui donner les bonnes permissions : ``` chmod a+rx /etc/cron.weekly/dehydrated ```