diff options
author | Johannes Löthberg <johannes@kyriasis.com> | 2017-01-10 16:43:31 +0000 |
---|---|---|
committer | Johannes Löthberg <johannes@kyriasis.com> | 2017-01-10 16:43:31 +0000 |
commit | 6045747cc9e427b33e0dd43d3325b85aa1c2c56e (patch) | |
tree | a483093e12aa9b13e5184c9539a7afaf4b04ba2f /theos/nginx | |
parent | cbea52249a5b389c3bdef635027e22b70ebe1f32 (diff) | |
download | pillar-6045747cc9e427b33e0dd43d3325b85aa1c2c56e.tar.xz |
Add matrix and riot nginx config
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
Diffstat (limited to 'theos/nginx')
-rw-r--r-- | theos/nginx/matrix_kyriasis_com.sls | 74 | ||||
-rw-r--r-- | theos/nginx/riot_kyriasis_com.sls | 58 |
2 files changed, 132 insertions, 0 deletions
diff --git a/theos/nginx/matrix_kyriasis_com.sls b/theos/nginx/matrix_kyriasis_com.sls new file mode 100644 index 0000000..a511dd2 --- /dev/null +++ b/theos/nginx/matrix_kyriasis_com.sls @@ -0,0 +1,74 @@ +nginx: + ng: + servers: + managed: + matrix.kyriasis.com: + enabled: True + config: + - upstream synapse: + - server: 127.0.0.1:8008 + + + - upstream synapse_metrics: + - server: 127.0.0.1:9091 + + + - server: + - server_name: matrix.kyriasis.com + - listen: 80 + - listen: '[::]:80' + + - location /.well-known/acme-challenge: + - root: /srv/http/ + + - return: '301 https://$server_name$request_uri' + + + - server: + - server_name: matrix.kyriasis.com kyriasis.com + - listen: 443 ssl http2 default_server + - listen: '[::]:443 ssl http2 default_server' + + - ssl: 'on' + - ssl_certificate: /etc/letsencrypt/live/matrix.kyriasis.com/fullchain.pem + - ssl_certificate_key: /etc/letsencrypt/live/matrix.kyriasis.com/privkey.pem + - ssl_dhparam: /etc/nginx/dhparam.pem + + - ssl_stapling: 'on' + - ssl_stapling_verify: 'on' + - ssl_trusted_certificate: /etc/letsencrypt/live/matrix.kyriasis.com/fullchain.pem + + # https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security + - add_header: 'Strict-Transport-Security "max-age=31536000"' + + # Tell browsers not to render the page inside a frame, and avoid clickjacking. + - add_header: X-Frame-Options SAMEORIGIN + + # Tell browsers to not try to auto-detect the Content-Type. + - add_header: X-Content-Type-Options nosniff + + # Enable the Cross-site scripting filter in most recent browsers. + # Normally enabled by default, but enable it anyway if user has disabled it. + - add_header: 'X-XSS-Protection "1; mode=block"' + + # http://www.gnuterrypratchett.com/ + - add_header: 'X-Clacks-Overhead "GNU Terry Pratchett"' + + - client_max_body_size: 128m + + - error_log: /var/log/nginx/matrix.error.log + + - location /: + - return: 301 https://riot.kyriasis.com + + - location /_synapse: + - proxy_pass: http://synapse_metrics + - proxy_buffering: "off" + - proxy_set_header: X-Forwarded-For $remote_addr + - proxy_set_header: Host $host + - proxy_http_version: 1.1 + + - location /.well-known/acme-challenge: + - root: /srv/http/ + +# vim: ft=yaml et: diff --git a/theos/nginx/riot_kyriasis_com.sls b/theos/nginx/riot_kyriasis_com.sls new file mode 100644 index 0000000..7f2b0c0 --- /dev/null +++ b/theos/nginx/riot_kyriasis_com.sls @@ -0,0 +1,58 @@ +nginx: + ng: + servers: + managed: + riot.kyriasis.com: + enabled: True + config: + - server: + - server_name: riot.kyriasis.com + - listen: 80 + - listen: '[::]:80' + + - location /.well-known/acme-challenge: + - root: /srv/http/ + + - return: '301 https://$server_name$request_uri' + + + - server: + - server_name: riot.kyriasis.com + - listen: 443 ssl http2 + - listen: '[::]:443 ssl http2' + + - ssl: 'on' + - ssl_certificate: /etc/letsencrypt/live/riot.kyriasis.com/fullchain.pem + - ssl_certificate_key: /etc/letsencrypt/live/riot.kyriasis.com/privkey.pem + - ssl_dhparam: /etc/nginx/dhparam.pem + + - ssl_stapling: 'on' + - ssl_stapling_verify: 'on' + - ssl_trusted_certificate: /etc/letsencrypt/live/riot.kyriasis.com/fullchain.pem + + # https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security + - add_header: 'Strict-Transport-Security "max-age=31536000"' + + # Tell browsers not to render the page inside a frame, and avoid clickjacking. + - add_header: X-Frame-Options SAMEORIGIN + + # Tell browsers to not try to auto-detect the Content-Type. + - add_header: X-Content-Type-Options nosniff + + # Enable the Cross-site scripting filter in most recent browsers. + # Normally enabled by default, but enable it anyway if user has disabled it. + - add_header: 'X-XSS-Protection "1; mode=block"' + + # http://www.gnuterrypratchett.com/ + - add_header: 'X-Clacks-Overhead "GNU Terry Pratchett"' + + - client_max_body_size: 128m + + - error_log: /var/log/nginx/riot.error.log + + - root: /home/kyrias/code/vector/public + + - location /.well-known/acme-challenge: + - root: /srv/http/ + +# vim: ft=yaml et: |