From 65b3c7114fa021490caa1038fe8519cf1d2c2bc3 Mon Sep 17 00:00:00 2001 From: Petar Nikolov Date: Sat, 31 May 2025 19:13:57 +0300 Subject: [PATCH] Add mailcow proxy conf sample --- mailcow.subdomain.conf.sample | 68 +++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 mailcow.subdomain.conf.sample diff --git a/mailcow.subdomain.conf.sample b/mailcow.subdomain.conf.sample new file mode 100644 index 00000000..47824323 --- /dev/null +++ b/mailcow.subdomain.conf.sample @@ -0,0 +1,68 @@ +## Version 2025/05/31 +# make sure that your mailcow container is named mailcow +# make sure that you are aqquainted with the mailcow documentation (https://docs.mailcow.email/) +# make sure you have read the most important entries in the "Get Started" section, "Post Installation Tasks -> Reverse Proxy -> Overview" and "Post Installation Tasks -> Reverse Proxy -> Nginx" sections +# make sure that your dns is configured as per your domain requirements and the mailcow documentation +# make sure to set up a mechanism to copy your SSL certificate after each renewal to /data/assets/ssl/ directory for mailcow to use (see mailcow documentation in "Post Installation Tasks -> Reverse Proxy -> Overview") + +server { + listen 443 ssl; + listen [::]:443 ssl; + + # modify these to match your domain/mailcow configuration + server_name mailcow.* autoconfig.* autodiscover.*; + + include /config/nginx/ssl.conf; + include /config/nginx/proxy.conf; + + client_max_body_size 0; + + # enable for ldap auth (requires ldap-location.conf in the location block) + #include /config/nginx/ldap-server.conf; + + # enable for Authelia (requires authelia-location.conf in the location block) + #include /config/nginx/authelia-server.conf; + + # enable for Authentik (requires authentik-location.conf in the location block) + #include /config/nginx/authentik-server.conf; + + location / { + # enable the next two lines for http auth + #auth_basic "Restricted"; + #auth_basic_user_file /config/nginx/.htpasswd; + + # enable for ldap auth (requires ldap-server.conf in the server block) + #include /config/nginx/ldap-location.conf; + + # enable for Authelia (requires authelia-server.conf in the server block) + #include /config/nginx/authelia-location.conf; + + # enable for Authentik (requires authentik-server.conf in the server block) + #include /config/nginx/authentik-location.conf; + + include /config/nginx/resolver.conf; + set $upstream_app mailcow; + set $upstream_port 8080; + set $upstream_proto http; + proxy_pass $upstream_proto://$upstream_app:$upstream_port; + + proxy_buffer_size 128k; + proxy_buffers 64 512k; + proxy_busy_buffers_size 512k; + } + + location /Microsoft-Server-ActiveSync { + include /config/nginx/resolver.conf; + set $upstream_app mailcow; + set $upstream_port 8080; + set $upstream_proto http; + proxy_pass $upstream_proto://$upstream_app:$upstream_port; + + proxy_connect_timeout 75; + proxy_send_timeout 3650; + proxy_read_timeout 3650; + proxy_buffers 64 512k; + + client_body_buffer_size 512k; + } +}