pd-admin Server hinter einem DS-LIte Internetzugang betreiben

  • Testweise habe ich einen pd-admin Server als virtuellen Server auf einem Proxmox--Rechner eingerichtet. Da ich über einen DS-LIte Internetzugang keine öffentliche IPv4 verfüge, habe ich einen kleinen vServer mit einer öffentliche IPv4 eingerichtet.


    Auf dem vServer mit der öffentlichen IPv4-Adresse habe ich mit Wireguard eine Site-to-Site VPN-Verbindung auf dem vServer im Heimnetzwerk eingerichtet. Jetzt werden die Ports 21,25,80,110,143,443,465,587,993,995 über eine iptables-Regel auf den virtuellen Server im Heimnetzwerk weitergeleitet. Das funktioniert super.


    Allerdings werden die E-Mails mit der NAT-IP-Adresse des DS-Lite-Anschluss versehen, die von einigen Mailserver blockiert werden.
    Mails müssen dann vom pd-admin Server im Heimnetzwerk über den vServer mit der öffentlichen IPv4-Adresse geschickt werden.

    Zur Konfiguration


    vServer mit pd-admin im Heimnetzwerk

    CentOS 8 mit aktueller pd-admin + aktueller Serverumgebung und IP-Adresse 192.168.20.138 + Wireguard Site-to-Site VPN-Verbindung zum vServer mit öffentlicher IPv4-Adresse


    vServer mit öffentlicher IPv4-Adresse

    Ubuntu 20.04 LTS + Wireguard Site-to-Site VPN-Verbindung zum vServer im Heimnetzwerk


    Code
    iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.20.138:80
    iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 192.168.20.138:443
    
    Gleiche Einträge für die Ports 21,25,110,143,465,587,993 und 995
    Code
    iptables -t nat -A POSTROUTING -d 192.168.20.138 -j MASQUERADE

    Hierzu fehlen doch sicherlich auf beiden Systeme entsprechende iptables-Einträge, oder ?

  • Abseits dessen, das diese Konfiguration sehr ungewöhnlich ist und sicherlich auch geeignet ist, den eigenen lokalen Internet-Anschluß gut auszulasten, versuche ich mal zu verstehen, was jetzt die eigentliche Frage ist:
    a) Wie kann ich die Mails mit einer anderen IP-Adresse versehen?

    b) Fehlen noch iptables-Einträge (generell)?


    Falls die Frage sich auf Punkt a) bezieht, so ist meine Einschätzung, das die für den Versand verwendete eMail Adresse ja nicht auf der IP-Konfigurationsebene festgelegt wird, sondern in dem betreffenden Service (in diesem Falle wohl qmail(-smtpd).


    Somit sollte es eigentlich ausreichend sein, in qmail die IP-Konfiguration zu hinterlegen, welche verwendet werden soll.

    Das müsste dann folgende Datei sein, sofern der entsprechende qmail-patch eingebunden wurde:

    /var/qmail/control/outgoingip


    Normalerweise existiert diese Datei nicht, so das die jeweilige IP des Hosts verwendet wird, auf welchem der Dienst läuft.

    Ich bin mir allerdings auch nicht mehr ganz sicher, welche qmail-Patches seitens pd-admin berücksichtigt worden sind.


    Grundsätzlich ist es aber eine Konfiguration, welche nicht auf Firewall-Ebene mit iptables anzupassen wäre, sondern in der jeweiligen Konfiguration des Mail-Services, welcher für den Versand verwendet wird.

    Mit freundlichen Grüßen,


    BrowsingMan

    Einmal editiert, zuletzt von browsingman () aus folgendem Grund: Hinweis auf qmail-patches eingefügt

  • Meine Frage war darauf ausgerichtet, welche Einstellungen notwendig sind, dass nicht von der IP-Adresse vom DS-Lite Anschluss versendet wird, sondern vom vServer mit der öffentliche IPv4-Adresse. Daher auch die Frage, ob hierzu eine iptables - EIntrag notwendig wäre oder die Konfiguration in Qmail erfolgen muss.

    • Offizieller Beitrag
    Zitat

    Allerdings werden die E-Mails mit der NAT-IP-Adresse des DS-Lite-Anschluss versehen, die von einigen Mailserver blockiert werden.

    Ich kann mich irren, aber so wie es klingt gehen die E-Mails schlichtweg über Deinen DS-Lite Anschluss raus. Das wird natürlich vielen gegnerischen Mailservern nicht gefallen.


    Das Problem dürfte sein, dass Du zwar eingehend alles gut im Griff hast durch Deine Portweiterleitungen vom vserver, aber AUSGEHEND geht Dein Server nach wie vor über Deinen DS-Lite Anschluss raus, weil ihm vermutlich anhand seiner Default Route nichts anderes übrig bleibt.


    Aus meiner Sicht lässt sich das mit der tollsten qmail Konfiguration nicht lösen, du müsstest dafür sorgen dass der vserver zum Default Router Deines pd-admin Servers wird und dieser nur mehr eben über den vserver ins Internet geht.


    Mit openvpn hab ich das schon öfter gemacht, da fand ich es relativ einfach. Man pusht den openvpn Server als Gateway an die Clients und braucht halt dann am Server entsprechende Masquerade Rules für AUSGEHENDES Nat. Das wird bei wireguard vermutlich nicht unähnlich sein. Dieses Anleitung erscheint mir vielleicht als ganz inspirierend https://www.cyberciti.biz/faq/…er_the_client%27s_gateway
    Hier werden anscheinend zuerst die Regeln für das ausgehende Nat gemacht, dann die wireguard config, "to allow WireGuard clients to access the Internet".

    • Offizieller Beitrag

    Wäre es nicht einfacher ein Mail Relay auf dem vserver aufzusetzen und dann mittels /var/qmail/control/smtproutes Mails darüber auszuleiten? :/

    Das hatte ich auch überlegt, aber aus irgendeinem Grund verworfen.


    Letztendlich wär das natürlich auch eine Möglichkeit. Auf der anderen Seite ist halt die Frage ob es nicht generell "sauberer" ist wenn er über die selbe IP raus geht wie rein.

  • Der komplette Traffic wird über den Wireguard VPN-Tunnel an den vServer mit der öffentliche IPv4-Adresse übertragen.


    Jetzt kommt allerdings folgende Fehlermeldung beim Mailversand:


    Remote host said: 553 sorry, that domain isn't in my list of allowed rcpthosts; no valid cert for gatewaying (#5.7.1) Giving up on XXX.XXX.XXX.XXX.