Mailcow Server - Port 25 geschlossen?

  • Hey leute,

    ich habe mir einen Server gemietet um mich mit dem Thema Mails zu befassen. Dazu habe ich mal auf einem sauberen neuen Rootserver mailcow installiert und bekomme bei https://www.learndmarc.com/ eine glaube ich gute Bewertung:
    pasted-from-clipboard.png

    Das heißt ich kann Mails versenden, das passt. Ich bekomme aber keine. Ich vermute, weil Port 25 zu ist.

    Von einem Server im Homelab:

    pasted-from-clipboard.png

    Port 25 closed


    Auf dem Mailserver selbst ist ufw inaktiv und Mailcow lauscht auf Port 25:
    pasted-from-clipboard.png

    Ich dachte, es wäre vielleicht seitens Netcup geblockt, weil meine DNS Settings falsch sind, aber MXtools und andere sagen das passt so:
    pasted-from-clipboard.png

    Der RDNS Eintrag zeigt auch auf die passende Domain:

    pasted-from-clipboard.png

    Der DNS Check bei Mailcow liefert auch keine wirklichen Fehler:
    pasted-from-clipboard.png


    Daher die Frage: Kann es sein, dass Netcup den Port blockt und man den erst freischalten lassen muss ?

    Laut mx tools stehe ich nur auf einer Blacklist:
    pasted-from-clipboard.png

    Was Altlasten sein sollten, habe die IP erst seit ein paar tagen.

    Kann mir jemand daher kurz sagen ob ich irgendwo einen Denkfehler habe oder etwas falsch eingetragen ist ?

    Liebe Grüße

    Der oben geschriebene Beitrag ist meine persönliche Meinung/Interpretation!
    Im übrigen verweise ich auf §675 Abs. 2 BGB .

  • Mailcow läuft ja meist in einem Docker Container. Könnte eventuell sein, dass Port 25 zwar nicht auf Serverebene geblockt wird, aber nicht die Mailcow im Container erreicht. Aber da haben wir sicher viele Experten hier zum Thema Docker und Firewall. Ich gehöre da eher nicht dazu.

    Zu deiner Vermutung, dass netcup das blockt. Ich denke eher nicht, hatte ich jedenfalls bisher nie bei netcup. Bei anderen Anbietern muss man den Port 25 teils freischalten lassen, allerdings in der Regel ausgehend. Denen ist ja ziemlich egal, von wem du welche Mails empfängst. Die Sorge ist da eher, dass du Spam versenden könntest. Hast du "außen" (nicht im Docker Container) auf der normalen Betriebssystemebene vielleicht noch eine Firewall, die den Port blockt? Eventuell richtet das sogar Mailcow selbst so ein.

    Die UCEPROTECT L3 Blockliste wirst du ignorieren müssen. Das betrifft Netcup komplett, ist also nicht auf eine einzelne IP bezogen. Die benutzt aber eigentlich auch niemand, der Mails empfangen will.

    Edit: Mailcow wohl nicht Aber eine kurze Suche hat mich hierher gebracht:https://community.mailcow.email/d/4351-mailcow…xternal-network

    Da scheint die Lösung gewesen zu sein, die ufw zu disablen, weil die im Zusammenspiel mit Mailcow wohl Ärger macht.

  • HEY tab,

    danke für deinen Beitrag. Die UFW ist deaktiviert, iptables welche von docker gesetzt werden umgehend die UFW auch komplett. Die Iptables blocken aber auch nicht.

    Da ich also einen dienst habe der auf 25 hört und auf jeden Interface also 0.0.0.0:25 und der nmap fehl schlägt bin ich echt ratlos.

    Sonst gibt es keine Firewall dazwischen. Auch von einem anderen netcup Server ist der Port Dicht


    Aber ich hoffe mal auf die anderen user, vielleicht hat jemand eine Idee :)

    Liebe Grüße

    Der oben geschriebene Beitrag ist meine persönliche Meinung/Interpretation!
    Im übrigen verweise ich auf §675 Abs. 2 BGB .

  • Wie sieht es denn mit den anderen Ports aus (z.B. 443)? Mailcow hat ja auch eine Weboberfläche und auch noch andere Ports wie imap & Co. Ich würde aktuell vermuten, dass diese ebenfalls nicht erreichbar sind und das Problem eher an dem Docker Setup liegen dürfte. Welches OS und welche Docker Version kommen denn zum Einsatz? Ich habe in letzter Zeit öfter mal über Probleme bei Debian mit der neusten Docker Version gelesen.

  • M. E. ist der MX-Record falsch, er darf gemäß RFC2181 nicht auf einen CNAME zeigen.

    mail.mailrunner.de kann doch gar nicht aufgelöst werden, da hast du irgendwie lt. Bild 4 eine Loop konfiguriert.

    Mach mal von extern einen nslookup mail.mailrunner.de, da kommt bei mir kein Ergebnis.

    Port 25 für mailrunner.de wiederum wird mir als offen angezeigt.

  • Da hast du Recht. Da haben wir uns wohl in die Idee verrannt, dass die Mailcow über Port 24 nicht erreichbar ist, weil der Port geschlossen ist. Wird ja allerdings auch in Bild 2 so angezeigt. Aber klar ist, über den angegebenen MX und Hostnamen wird so nie eine Mail reinkommen können, weil der Sender den Namen schon gar nicht auflösen kann und somit nicht weiss, wo er die Mail abliefern soll.

    Also entweder "mail A IPv4-Adresse"

    oder gar nichts für mail eintragen, dann sollte die Wildcard greifen. Ich würde sicherheitshalber trotzdem lieber den A Record setzen, sonst würde jeder zusätzliche Record zum Host "mail", den man vielleicht irgendwann mal setzt, die Wildcard außer Kraft setzen für den Host mail und er hätte wieder keine IP-Adresse. ;)

  • Danke für eure Beiträge, nein also das Webinterface ist erreichbar. Das Versenden von Mails geht ja auch. Ich kann eine Mail zu ping.mxtools.com senden bekomme abe rnichts zurück. Ich kann eine Mail an learndmarc.com senden und erhalte ja auch die oben angegebenen passes. Es funktioniert. Nur das ein nmap mir halt klar zeigt, dass Port 25 zu ist.

    Ich verwende ubuntu server 22.04 - Habe alle meine Server im Homelab mit Ubuntu in Betrieb.

    da hast du irgendwie lt. Bild 4 eine Loop konfiguriert.

    Ja, das scheint tatsächlich so zu sein. Netcup setzt beim Host ja hinten den Domainnamen dran.

    Das heißt ja auch, dass ich alle Hosteinträge eigentlich entfernen kann, weil ich mit * also hostname ja schon alle subdomains abdecke.

    Dann müsste es ja so sein:
    pasted-from-clipboard.png

    Ich teste es mal und baue den Loop weg. Danke euch - ich melde mich :)

    Nachtrag:
    Ich sehe gerade auch, dass ich beim mx Record kein . am Ende gesetzt habe. Netcup sagt nicht explizit, dass man das muss:
    https://helpcenter.netcup.com/en/wiki/web-hosting/webhosting-dns

    Aber in anderen DNS Einträgen von Netcup ist das so bei mir, wo ich das Webhosting betreibe. Da hätte ich mal früher reinschauen sollen :D

    Der oben geschriebene Beitrag ist meine persönliche Meinung/Interpretation!
    Im übrigen verweise ich auf §675 Abs. 2 BGB .

    2 Mal editiert, zuletzt von Real-DD-2 (4. Dezember 2025 um 07:56)

  • Mit telnet antwortet Mailcow auch.

    Code
    telnet mail.mailrunner.de 25
    Trying 159.195.62.225...
    Connected to mail.mailrunner.de.
    Escape character is '^]'.
    220-mail.mailrunner.de ESMTP Postcow
    220 mail.mailrunner.de ESMTP Postcow
  • Es muss durch den loop gewesen sein, da die Auflösung nicht richtig funktioniert hat.


    Einzig der SPF wird aktuell nicht erkannt. Das kann ich jedoch sicherlich zeitnahe beheben. Ich gebe bescheid, wenn es klappt.

    Danke für eure Beiträge :)

    Der oben geschriebene Beitrag ist meine persönliche Meinung/Interpretation!
    Im übrigen verweise ich auf §675 Abs. 2 BGB .

  • Es muss durch den loop gewesen sein, da die Auflösung nicht richtig funktioniert hat.

    Du meinst weil sich die mailcow selbst den MX nicht auflösen hat können hat sie den SMTP port nicht beantwortet bzw ist der postfix nicht gestartet? Dein netstat hat ja nur die docker-proxies am host gezeigt. und den nmap hast ja auf die IP gemacht.

    wann hast Du denn die loop korrigiert? die Zierleiste hat ja gestern schon um 23:07 berichtet, daß sie den SMTP port offen sieht.

  • Letztlich hängt es von deinen E-Mail-Adressen ab: Benutzt Du name@mailrunner.de, dann muss der TXT-Record für SPF bei der Domäne gesetzt werden (also hier mit „@“), wenn deine E-Mails hingegen von name@mail.mailrunner.de kommen, dann eben dort. Es ist nicht schädlich, beide Varianten einzutragen.

    Nachtrag: Die Diagnoseseiten arbeiten auch nicht alle korrekt. Früher gab es beispielsweise einen eigenen SPF-Record, der aber von einem TXT-Record abgelöst worden ist. Auch das Durchgreifen auf die Apex Domain machen nicht alle Diagnoseseiten richtig, daher meine Empfehlung, den TXT-Record einfach für beide Varianten zu setzen.