You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
173 lines
4.3 KiB
173 lines
4.3 KiB
####################################################################### |
|
# WARNING: This file is generated. Do not make changes to this file. # |
|
# They will be overwritten on update. You can manage various settings # |
|
# used in this file from the ./bwdata/config.yml file for your # |
|
# installation. # |
|
####################################################################### |
|
|
|
server { |
|
listen 8080 default_server; |
|
listen [::]:8080 default_server; |
|
server_name {{{Domain}}}; |
|
{{#if Ssl}} |
|
|
|
return 301 {{{Url}}}$request_uri; |
|
} |
|
|
|
server { |
|
listen 8443 ssl http2; |
|
listen [::]:8443 ssl http2; |
|
server_name {{{Domain}}}; |
|
|
|
ssl_certificate {{{CertificatePath}}}; |
|
ssl_certificate_key {{{KeyPath}}}; |
|
ssl_session_timeout 30m; |
|
ssl_session_cache shared:SSL:20m; |
|
ssl_session_tickets off; |
|
{{#if DiffieHellmanPath}} |
|
|
|
# Diffie-Hellman parameter for DHE ciphersuites, recommended 2048 bits |
|
ssl_dhparam {{{DiffieHellmanPath}}}; |
|
{{/if}} |
|
|
|
ssl_protocols {{{SslProtocols}}}; |
|
ssl_ciphers "{{{SslCiphers}}}"; |
|
# Enables server-side protection from BEAST attacks |
|
ssl_prefer_server_ciphers on; |
|
{{#if CaPath}} |
|
|
|
# OCSP Stapling --- |
|
# Fetch OCSP records from URL in ssl_certificate and cache them |
|
ssl_stapling on; |
|
ssl_stapling_verify on; |
|
|
|
# Verify chain of trust of OCSP response using Root CA and Intermediate certs |
|
ssl_trusted_certificate {{{CaPath}}}; |
|
resolver 1.1.1.1 1.0.0.1 9.9.9.9 149.112.112.112 valid=300s; |
|
{{/if}} |
|
|
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
{{#if RealIps}} |
|
|
|
{{#each RealIps}} |
|
set_real_ip_from {{{this}}}; |
|
{{/each}} |
|
real_ip_header X-Forwarded-For; |
|
real_ip_recursive on; |
|
{{/if}} |
|
|
|
location / { |
|
proxy_pass http://web:5000/; |
|
{{#if Ssl}} |
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
add_header Content-Security-Policy "{{{ContentSecurityPolicy}}}"; |
|
add_header X-Frame-Options SAMEORIGIN; |
|
add_header X-Robots-Tag "noindex, nofollow"; |
|
} |
|
|
|
location /alive { |
|
return 200 'alive'; |
|
add_header Content-Type text/plain; |
|
} |
|
|
|
location = /app-id.json { |
|
proxy_pass http://web:5000/app-id.json; |
|
{{#if Ssl}} |
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
proxy_hide_header Content-Type; |
|
add_header Content-Type $fido_content_type; |
|
} |
|
|
|
location = /duo-connector.html { |
|
proxy_pass http://web:5000/duo-connector.html; |
|
} |
|
|
|
location = /webauthn-connector.html { |
|
proxy_pass http://web:5000/webauthn-connector.html; |
|
} |
|
|
|
location = /webauthn-fallback-connector.html { |
|
proxy_pass http://web:5000/webauthn-fallback-connector.html; |
|
} |
|
|
|
location = /sso-connector.html { |
|
proxy_pass http://web:5000/sso-connector.html; |
|
} |
|
|
|
location /attachments/ { |
|
proxy_pass http://attachments:5000/; |
|
} |
|
|
|
location /api/ { |
|
proxy_pass http://api:5000/; |
|
} |
|
|
|
location /icons/ { |
|
proxy_pass http://icons:5000/; |
|
} |
|
|
|
location /notifications/ { |
|
proxy_pass http://notifications:5000/; |
|
} |
|
|
|
location /notifications/hub { |
|
proxy_pass http://notifications:5000/hub; |
|
proxy_set_header Upgrade $http_upgrade; |
|
proxy_set_header Connection $http_connection; |
|
} |
|
|
|
location /notifications/anonymous-hub { |
|
proxy_pass http://notifications:5000/anonymous-hub; |
|
proxy_set_header Upgrade $http_upgrade; |
|
proxy_set_header Connection $http_connection; |
|
} |
|
|
|
location /events/ { |
|
proxy_pass http://events:5000/; |
|
} |
|
|
|
location /sso { |
|
proxy_pass http://sso:5000; |
|
{{#if Ssl}} |
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
add_header X-Frame-Options SAMEORIGIN; |
|
} |
|
|
|
location /identity { |
|
proxy_pass http://identity:5000; |
|
{{#if Ssl}} |
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
add_header X-Frame-Options SAMEORIGIN; |
|
} |
|
|
|
location /admin { |
|
proxy_pass http://admin:5000; |
|
{{#if Ssl}} |
|
include /etc/nginx/security-headers-ssl.conf; |
|
{{/if}} |
|
include /etc/nginx/security-headers.conf; |
|
add_header X-Frame-Options SAMEORIGIN; |
|
} |
|
|
|
{{#if EnableKeyConnector}} |
|
location /key-connector/ { |
|
proxy_pass http://key-connector:5000/; |
|
} |
|
{{/if}} |
|
{{#if EnableScim}} |
|
|
|
location /scim/ { |
|
proxy_pass http://scim:5000/; |
|
} |
|
{{/if}} |
|
}
|
|
|