From ee2f2daee07e4a3377a5ccbfd0f21b7a181942f4 Mon Sep 17 00:00:00 2001 From: Brielle Date: Sat, 14 May 2016 09:05:04 -0600 Subject: [PATCH] Added nginx config --- nginx-le-root.conf | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 nginx-le-root.conf diff --git a/nginx-le-root.conf b/nginx-le-root.conf new file mode 100644 index 0000000..5ae9fd7 --- /dev/null +++ b/nginx-le-root.conf @@ -0,0 +1,46 @@ +# Originally from: +# https://community.letsencrypt.org/t/how-to-nginx-configuration-to-enable-acme-challenge-support-on-all-http-virtual-hosts/5622 +############################################################################# +# Configuration file for Let's Encrypt ACME Challenge location +# This file is already included in listen_xxx.conf files. +# Do NOT include it separately! +############################################################################# +# +# This config enables to access /.well-known/acme-challenge/xxxxxxxxxxx +# on all our sites (HTTP), including all subdomains. +# This is required by ACME Challenge (webroot authentication). +# You can check that this location is working by placing ping.txt here: +# /var/www/letsencrypt/.well-known/acme-challenge/ping.txt +# And pointing your browser to: +# http://xxx.domain.tld/.well-known/acme-challenge/ping.txt +# +# Sources: +# https://community.letsencrypt.org/t/howto-easy-cert-generation-and-renewal-with-nginx/3491 +# +############################################################################# + +# Rule for legitimate ACME Challenge requests (like /.well-known/acme-challenge/xxxxxxxxx) +# We use ^~ here, so that we don't check other regexes (for speed-up). We actually MUST cancel +# other regex checks, because in our other config files have regex rule that denies access to files with dotted names. +location ^~ /.well-known/acme-challenge/ { + + # Set correct content type. According to this: + # https://community.letsencrypt.org/t/using-the-webroot-domain-verification-method/1445/29 + # Current specification requires "text/plain" or no content header at all. + # It seems that "text/plain" is a safe option. + default_type "text/plain"; + + # This directory must be the same as in /etc/letsencrypt/cli.ini + # as "webroot-path" parameter. Also don't forget to set "authenticator" parameter + # there to "webroot". + # Do NOT use alias, use root! Target directory is located here: + # /var/www/common/letsencrypt/.well-known/acme-challenge/ + root /var/www/letsencrypt; +} + +# Hide /acme-challenge subdirectory and return 404 on all requests. +# It is somewhat more secure than letting Nginx return 403. +# Ending slash is important! +location = /.well-known/acme-challenge/ { + return 404; +}