|
@@ -0,0 +1,59 @@
|
|
|
+#Copy invenio stuff directly to rproxy to avoid multiple forwarding and associated confusion
|
|
|
+#In essence, rproxy replaces invenion frontend
|
|
|
+
|
|
|
+upstream labkey {
|
|
|
+ server labkey-web-students:8080;
|
|
|
+#could add more servers for load balancing
|
|
|
+}
|
|
|
+
|
|
|
+#HTTP -> redirect
|
|
|
+server {
|
|
|
+ listen 80;
|
|
|
+ listen [::]:80;
|
|
|
+ server_name labkey-klimt-local-students.fmf.uni-lj.si;
|
|
|
+ return 301 https://$host$request_uri;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+#HTTPS
|
|
|
+server {
|
|
|
+ listen 443 ssl;
|
|
|
+ listen [::]:443 ssl;
|
|
|
+ server_name labkey-klimt-local-students.fmf.uni-lj.si;
|
|
|
+
|
|
|
+ charset utf-8;
|
|
|
+ keepalive_timeout 5;
|
|
|
+
|
|
|
+ #SSL
|
|
|
+ ssl_certificate /var/www/labkey-klimt-local-studentsBundle.crt;
|
|
|
+ ssl_certificate_key /var/www/labkey-klimt-local-students.key;
|
|
|
+ ssl_session_timeout 1d;
|
|
|
+ ssl_session_cache shared:SSL:50m;
|
|
|
+ ssl_session_tickets off;
|
|
|
+
|
|
|
+ #Hardening
|
|
|
+ # Accepted protocols and ciphers
|
|
|
+ ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
|
|
+ ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
|
|
|
+ ssl_prefer_server_ciphers on;
|
|
|
+
|
|
|
+ add_header Strict-Transport-Security "max-age=15768000"; # 6 months
|
|
|
+
|
|
|
+ error_page 500 502 503 504 /50x.html;
|
|
|
+ location = /50x.html {
|
|
|
+ root /usr/share/nginx/html;
|
|
|
+ }
|
|
|
+
|
|
|
+ location /{
|
|
|
+ proxy_ssl_trusted_certificate /var/www/NIXLJU-CA_chain.crt;
|
|
|
+ proxy_pass http://labkey/;
|
|
|
+ #proxy_redirect http://labkey/ https://labkey-klimt-local.fmf.uni-lj.si/;
|
|
|
+ proxy_redirect http://labkey/ https://klimt.fmf.uni-lj.si/;
|
|
|
+ #proxy_set_header Host $host;
|
|
|
+ client_max_body_size 0;
|
|
|
+ }
|
|
|
+ #no heroics. Since frontend is a virtual server, use http
|
|
|
+ #I believe there is an https redirect as deep as the uiwsg web-ui engine, hence SSL must be maintained
|
|
|
+
|
|
|
+}
|
|
|
+
|