nextcloud 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. upstream nextcloud_upstream {
  2. server 172.20.0.3:80; # SICHERSTELLEN, DASS DIES DIE KORREKTE IP IST
  3. }
  4. server {
  5. listen 80;
  6. server_name cloud.mrx8086.com;
  7. return 301 https://$host$request_uri;
  8. }
  9. server {
  10. listen 443 ssl;
  11. server_name cloud.mrx8086.com;
  12. # SSL Configuration (wie zuvor)
  13. ssl_certificate /etc/nginx/ssl/mrx8086.com/fullchain.pem;
  14. ssl_certificate_key /etc/nginx/ssl/mrx8086.com/privkey.pem;
  15. # ... weitere SSL-Einstellungen ...
  16. # Security headers (wie zuvor)
  17. add_header X-Content-Type-Options nosniff always;
  18. add_header X-XSS-Protection "1; mode=block" always;
  19. add_header X-Frame-Options SAMEORIGIN always;
  20. add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
  21. add_header Content-Security-Policy "frame-ancestors 'self'; default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob:; font-src 'self' data:; connect-src 'self'; media-src 'self';" always;
  22. # Proxy settings (wie zuvor)
  23. proxy_set_header X-Real-IP $remote_addr;
  24. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  25. proxy_set_header X-Forwarded-Proto $scheme;
  26. proxy_set_header X-Forwarded-Host $host;
  27. proxy_set_header X-Forwarded-Port 443;
  28. proxy_set_header Host $host;
  29. proxy_http_version 1.1;
  30. # Nextcloud specific settings (wie zuvor)
  31. client_max_body_size 512M;
  32. fastcgi_buffers 64 4K;
  33. # Expliziter location-Block für den OpenID Connect Callback
  34. location /apps/sociallogin/custom_oidc/keycloak {
  35. proxy_pass http://nextcloud_upstream;
  36. proxy_set_header Host $host;
  37. proxy_set_header X-Real-IP $remote_addr;
  38. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  39. proxy_set_header X-Forwarded-Proto $scheme;
  40. }
  41. # Root location
  42. location / {
  43. proxy_pass http://nextcloud_upstream;
  44. proxy_set_header Upgrade $http_upgrade;
  45. proxy_set_header Connection "upgrade";
  46. proxy_connect_timeout 60s;
  47. proxy_send_timeout 60s;
  48. proxy_read_timeout 60s;
  49. }
  50. # Block sensitive paths (wie zuvor)
  51. location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/) {
  52. deny all;
  53. return 404;
  54. }
  55. # Deny access to hidden files (wie zuvor)
  56. location ~ /\. {
  57. deny all;
  58. return 404;
  59. }
  60. }