• Becker884

      Moolevel 4
    • Edited

    Hallo, auf meiner VM1 läuft mein Webserver Nginx inkl. einiger Reverse Proxys.
    Auf VM2 läuft Mailcow. Alle Ports bis auf 443 IPv4 zeigen korrekt auf Mailcow (VM2).

    Port 443 IPv4 kann natürlich nur entweder auf VM1 oder VM2 zeigen.
    IPv6 zeigt auf Mailcow.

    Nun habe ich mir die docs.mailcow.email Icon Konfig Reverse Proxy für Mailcow

    angeschaut, aber so ganz habe ich sie nicht verstanden.
    Hier geht es doch nur um Autodiscover, Autoconfig und ActiveSync.

    Wenn ich mail.meinedomain.de Port 443 (nur IPv4) von VM1 zu VM2 schicken will, reicht da nicht aus:
    `server {
    listen 80;
    server_name mail.ich.de;
    return 301 https://$host$request_uri;
    }

    server {
    listen 443 ssl http2; # nur IPv4
    server_name mail.ich.de;
    ssl_certificate /etc/letsencrypt/live/ich.de/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/ich.de/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    include /etc/nginx/conf.d/proxy.conf;
    location / {
    proxy_pass http://192.168.168.18:443; #Lan IP Mailcow
    }
    }`

    hinter proxy.conf verbirgt sich:
    `proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection ‘upgrade’;

    proxy_read_timeout 90;
    proxy_connect_timeout 90;
    proxy_send_timeout 90;

    add_header Strict-Transport-Security “max-age=31536000; includeSubDomains; preload” always;
    add_header X-Frame-Options “SAMEORIGIN” always;
    add_header Referrer-Policy “strict-origin-when-cross-origin” always;
    add_header X-Content-Type-Options “nosniff” always;
    add_header X-XSS-Protection “1; mode=block” always;`

    da könnte / müsste ich vielleicht noch was anpassen (ist für Node-Red gedacht)

    Die ActivSync/Autodiscover SoGo 8080 ist doch eine interne Geschichte:
    proxy_pass http://127.0.0.1:8080/Microsoft-Server-ActiveSync;
    odern nicht?

    ChatGPT meint:
    `server {
    listen 80;
    server_name mail.ich.de;
    return 301 https://$host$request_uri;
    }

    server {
    listen 443 ssl http2; # SSL only on IPv4
    server_name mail.ich.de;


    ssl_certificate /etc/letsencrypt/live/ich.de/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/ich.de/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    
    ssl_protocols TLSv1.2 TLSv1.3; 
    ssl_ciphers HIGH:!aNULL:!MD5:!SHA1:!kRSA;
    ssl_prefer_server_ciphers off;
    
    location /Microsoft-Server-ActiveSync {
        proxy_pass https://192.168.168.18:443; 
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_connect_timeout 75;
        proxy_send_timeout 3650;
        proxy_read_timeout 3650;
        proxy_buffers 64 512k;
        client_body_buffer_size 512k;
        client_max_body_size 0;
    }
    
    location / {
        proxy_pass https://192.168.168.18:443/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        client_max_body_size 0;
        proxy_buffer_size 128k;
        proxy_buffers 64 512k;
        proxy_busy_buffers_size 512k;
    }

    }`

    • Das ist die Konfig die ich nun verwende, wenn was falsch ist bitte schreiben.

      server {
          listen 80;
          server_name mail.ich.de autodiscover.* autoconfig.*;
          return 301 https://$host$request_uri;
      }
      
      server {
          listen 443 ssl http2;
          server_name mail.ich.de autodiscover.* autoconfig.*;
      
          ssl_certificate /etc/letsencrypt/live/ich.de/fullchain.pem;
          ssl_certificate_key /etc/letsencrypt/live/ich.de/privkey.pem;
          include /etc/letsencrypt/options-ssl-nginx.conf;
          ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
      
          location /Microsoft-Server-ActiveSync {
              proxy_pass https://192.168.168.18:443;
              proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
              proxy_connect_timeout 75;
              proxy_send_timeout 3650;
              proxy_read_timeout 3650;
              proxy_buffers 64 512k;
              client_body_buffer_size 512k;
              client_max_body_size 0;
          }
      
          location / {
              proxy_pass https://192.168.168.18:443/;
              proxy_set_header Host $http_host;
              proxy_set_header X-Real-IP $remote_addr;
              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
              proxy_set_header X-Forwarded-Proto $scheme;
              client_max_body_size 0;
              proxy_buffer_size 128k;
              proxy_buffers 64 512k;
              proxy_busy_buffers_size 512k;
          }
      }

    Das ist die Konfig die ich nun verwende, wenn was falsch ist bitte schreiben.

    server {
        listen 80;
        server_name mail.ich.de autodiscover.* autoconfig.*;
        return 301 https://$host$request_uri;
    }
    
    server {
        listen 443 ssl http2;
        server_name mail.ich.de autodiscover.* autoconfig.*;
    
        ssl_certificate /etc/letsencrypt/live/ich.de/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/ich.de/privkey.pem;
        include /etc/letsencrypt/options-ssl-nginx.conf;
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    
        location /Microsoft-Server-ActiveSync {
            proxy_pass https://192.168.168.18:443;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_connect_timeout 75;
            proxy_send_timeout 3650;
            proxy_read_timeout 3650;
            proxy_buffers 64 512k;
            client_body_buffer_size 512k;
            client_max_body_size 0;
        }
    
        location / {
            proxy_pass https://192.168.168.18:443/;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            client_max_body_size 0;
            proxy_buffer_size 128k;
            proxy_buffers 64 512k;
            proxy_busy_buffers_size 512k;
        }
    }

    Have something to say?

    Join the community by quickly registering to participate in this discussion. We'd like to see you joining our great moo-community!

    • Becker884

        Moolevel 4

      Habe es heute bei McDoof getestet (Wlan Zwang mit nur IPv4) :-D
      funktioniert.

      No one is typing