web-dev-qa-db-fra.com

Installer Certbot permet de crypter sans interaction

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?

20
Laimonas Sutkus

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:

https://certbot.eff.org/docs/using.html

21
match

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:

  1. --agree-tos
  2. --register-unsafely-without-email ...ou... -m [email protected]
  3. -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/
2
jessuppi