MarioPeters

  • Apr 5, 2024
  • Joined Jan 12, 2024
  • 0 discussions
  • 2 posts
  • 0 best answers
  • Post posted... wait what?
  • Hi, ich bin etwas fraglos…
    ich habe gestern ein Mailcow aufgesetzt (nicht mein erstes, nutze Mailcow seit 2 Jahren ca. problemlos) und soweit eingerichtet.
    Wenn ich eine Mail im Thunderbird hinzufüge, kommt am Schluss immer, dass er das Zertifikat nicht verifizieren kann (logisch, weils nicht konfiguriert ist). Die Domain von der er versucht das Zertifikat zu verfizieren ist aber nicht meine Mail Domain.

    Also meine Mail Domain: hosting.xxx.solutions
    Domain welche Thunderbird das Zertifikat checkt: xxx.solutions

    Wie das aussieht:

    In Mailcow (mailcow.conf / postfix / dovecot etc) ist überall die Sub-Domain angegeben.
    Ich nutze Apache als Reverse-Proxy:

    <VirtualHost *:80>
            ServerName hosting.xxx.solutions
            ServerAlias autodiscover.*
            ServerAlias autoconfig.*
            ServerAdmin info@xxx.solutions
    
            ErrorLog ${APACHE_LOG_DIR}/hosting.xxx.solutions_error.log
            CustomLog ${APACHE_LOG_DIR}/hosting.xxx.solutions_access.log combined
    
      ProxyPass / http://127.0.0.1:8888/
      ProxyPassReverse / http://127.0.0.1:8888/
      ProxyPreserveHost On
      ProxyAddHeaders On
      RequestHeader set X-Forwarded-Proto "http"
    
    RewriteEngine on
    RewriteCond %{REQUEST_URI} !^/.well-known.*
    RewriteCond %{SERVER_NAME} =hosting.xxx.solutions
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
    </VirtualHost>
    <ifModule mod_ssl.c>
    <VirtualHost *:443>
        ServerName hosting.xxx.solutions
        ServerAlias autodiscover.*
        ServerAlias autoconfig.*
        ServerAdmin info@xxx.solutions
    
        ErrorLog ${APACHE_LOG_DIR}/hosting.xxx.solutions_error.log
        CustomLog ${APACHE_LOG_DIR}/hosting.xxx.solutions_access.log combined
    
    SSLEngine On
    #SSLProxyEngine On
    #SSLProxyVerify None
    #SSLProxyCheckPeerCN Off
    #SSLProxyCheckPeerName Off
    
        ProxyPass / http://127.0.0.1:8888/
        ProxyPassReverse / http://127.0.0.1:8888/
    
        ProxyPreserveHost On
        ProxyAddHeaders On
        RequestHeader set X-Forwarded-Proto "https"
    
        <Location /rspamd>
            AuthType Basic
            AuthName "Restricted"
            AuthUserFile /etc/apache2/.htpasswd
            Require valid-user
            order allow,deny
            allow from all
        </Location>
    
    SSLCertificateFile /etc/letsencrypt/live/hosting.xxx.solutions/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/hosting.xxx.solutions/privkey.pem
    </VirtualHost>
    </ifModule>

    mailcow.conf:

    MAILCOW_HOSTNAME=hosting.xxx.solutions
    MAILCOW_PASS_SCHEME=BLF-CRYPT
    DBNAME=mailcow
    DBUSER=mailcow
    DBPASS=<pass>
    DBROOT=<pass>
    HTTP_PORT=8888
    HTTP_BIND=127.0.0.1
    HTTPS_PORT=4434
    HTTPS_BIND=127.0.0.1
    SMTP_PORT=<ip>:25
    SMTPS_PORT=<ip>:465
    SUBMISSION_PORT=<ip>:587
    IMAP_PORT=<ip>:143
    IMAPS_PORT=<ip>:993
    POP_PORT=<ip>:110
    POPS_PORT=<ip>:995
    SIEVE_PORT=<ip>:4190
    DOVEADM_PORT=127.0.0.1:19991
    SQL_PORT=127.0.0.1:13306
    SOLR_PORT=127.0.0.1:18983
    REDIS_PORT=127.0.0.1:7654
    TZ=Europe/Berlin
    COMPOSE_PROJECT_NAME=mail
    ACL_ANYONE=disallow
    MAILDIR_GC_TIME=7200
    ADDITIONAL_SAN=
    ADDITIONAL_SERVER_NAMES=
    SKIP_LETS_ENCRYPT=n
    ENABLE_SSL_SNI=n
    SKIP_IP_CHECK=n
    SKIP_HTTP_VERIFICATION=y
    SKIP_CLAMD=n
    SKIP_SOGO=n
    SKIP_SOLR=n
    SOLR_HEAP=1024
    ALLOW_ADMIN_EMAIL_LOGIN=n
    USE_WATCHDOG=y
    WATCHDOG_NOTIFY_BAN=n
    WATCHDOG_EXTERNAL_CHECKS=n
    WATCHDOG_VERBOSE=n
    LOG_LINES=9999
    IPV4_NETWORK=172.22.1
    IPV6_NETWORK=fd4d:6169:6c63:6f77::/64
    SNAT_TO_SOURCE=<ip>
    MAILDIR_SUB=Maildir
    SOGO_EXPIRE_SESSION=480
    DOVECOT_MASTER_USER=
    DOVECOT_MASTER_PASS=
    ACME_CONTACT=info@xxx.solutions
    WEBAUTHN_ONLY_TRUSTED_VENDORS=n

    Woher also der Bezug zu der normalen Domain und nicht der Sub-Domain?

    Danke für jede Hilfe.

    MfG Jan

    • BBischi

        Moolevel 0

      Nein, habe kein Revers Proxy.
      Sieht ganz so aus;
      “Cannot validate any hostnames, skipping Let’s Encrypt for 1 hour.”

      Wenn ich mir nun ein Zertifikat erstelle, unter : /var/lib/acme/acme/account.pem werfen?
      Gibts eine Doku wie ich das dann einschließend einspiele?