J'écris un script bash qui amorce toute l'infrastructure du projet sur le serveur fraîchement installé et je souhaite configurer l'installation ssl avec letcecrypt certbot. Après avoir exécuté la ligne:
certbot --nginx -d $( get_server_name ) -d www.$( get_server_name ).com
Je suis invité à poser quelques questions. Certbot peut-il être exécuté sans aucune interaction en passant certains paramètres comme arguments ou quelque chose?
Vous pouvez exécuter certbot "silencieusement" en ajoutant les options suivantes:
--non-interactive --agree-tos -m [email protected]
La liste complète des options de configuration est disponible ici:
Il existe plusieurs drapeaux en ligne et "sous-commandes" (leur surnom) fournis par Certbot qui peuvent aider à automatiser le processus de génération de certificats SSL gratuits à l'aide de scripts Bash ou Shell.
Le drapeau le plus pertinent mentionné par @match est:
--non-interactive
Cependant, en réalité, ce drapeau n'est pas très utile, car il ne fait pas grand-chose. S'il manque des indicateurs critiques dans votre script, par exemple, le certificat ne pourra toujours pas être généré. Franchement, je pense qu'il serait préférable pour Certbot d'annuler le drapeau ci-dessus, car c'est plutôt trompeur.
Voici les drapeaux minimum requis:
--agree-tos
--register-unsafely-without-email
...ou... -m [email protected]
-d www.example.com
Vous devez également spécifier le type de Let's Encrypt plugin d'installation (environnement) que vous souhaitez, par exemple, vous pouvez choisir entre "autonome" ou "manuel" etc ... pour la plupart des cas, comme un WordPress serveur Web, vous devez choisir "webroot" afin que Certbot puisse facilement vérifier la propriété via la racine publique (assurez-vous que l'accès à /.well-known*
n'est pas bloqué):
--webroot -w /var/www/html/
Voici la commande complète que nous tiliser dans SlickStack pour installer les certificats SSL:
## install Certbot SSL certificate ##
certbot certonly --noninteractive --webroot --agree-tos --register-unsafely-without-email -d ${SITE_DOMAIN} -w /var/www/html/