aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@archive.org>2022-06-22 20:59:27 -0700
committerBryan Newbold <bnewbold@archive.org>2022-06-22 21:00:08 -0700
commit3f5033678cc26bfddcd1dcabb5e53ee120e284bb (patch)
tree5a78afd57701a4406a5ff34d6eb9615a5d86cd06
parent678119e4cd517f7b39d23ae6384f7ec6e24bb1a2 (diff)
downloadinfra-3f5033678cc26bfddcd1dcabb5e53ee120e284bb.tar.gz
infra-3f5033678cc26bfddcd1dcabb5e53ee120e284bb.zip
cgit: https by default for git.bnewbold.net
-rw-r--r--roles/git/templates/etc_nginx_sites-available_cgit.j224
1 files changed, 24 insertions, 0 deletions
diff --git a/roles/git/templates/etc_nginx_sites-available_cgit.j2 b/roles/git/templates/etc_nginx_sites-available_cgit.j2
index 903d38c..8efe3a7 100644
--- a/roles/git/templates/etc_nginx_sites-available_cgit.j2
+++ b/roles/git/templates/etc_nginx_sites-available_cgit.j2
@@ -4,7 +4,25 @@ server {
listen 80;
listen [::]:80;
+ listen 443 ssl http2;
+ listen [::]:443 ssl http2;
+
server_name {{ cgit_hostname }};
+
+ ssl_certificate /etc/letsencrypt/live/bnewbold.net/fullchain.pem;
+ ssl_certificate_key /etc/letsencrypt/live/bnewbold.net/privkey.pem;
+
+ add_header Content-Security-Policy "default-src 'self'; style-src 'self' 'unsafe-inline'";
+ add_header X-Frame-Options "SAMEORIGIN"; # 'always' if nginx > 1.7.5
+ add_header X-Content-Type-Options "nosniff"; # 'always' if nginx > 1.7.5
+ add_header X-Xss-Protection "1";
+ # Enable STS with one year period (breaks http; optional)
+ #add_header Strict-Transport-Security "max-age=31557600; includeSubDomains";
+
+ if ($scheme = http) {
+ return 301 https://$server_name$request_uri;
+ }
+
root /srv/http/cgit;
location / {
@@ -21,5 +39,11 @@ server {
include "fastcgi_params";
}
+
+ # Let's Encrypt SSL Certs
+ location /.well-known/acme-challenge/ {
+ root /var/www/letsencrypt;
+ autoindex off;
+ }
}