I have a couple Docker containers that use email as an alert system or just for info like completed jobs. The server I would like to host them on has, for whatever reason, blocked email ports and you have to pay extra to have them turned on.

It seems to me tho, that I should be able to port all email through Tailscale to a local or even remote email client. For instance, in the case of setting the parameters in the Docker compose, it would look something like this:

SITE_NAME: mycoolwebsite
DEFAULT_FROM_EMAIL: email address
EMAIL_HOST: smtp
EMAIL_HOST_USER: email address
EMAIL_HOST_PASSWORD: email password
EMAIL_PORT: 100.x.x.x:587

Then, configure the local email client to listen on 100.x.x.x:587.

Would this be doable, or is there a better way?

  • sugar_in_your_tea@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    1
    ·
    8 days ago

    If you control both sides, you can just use a non-standard port. If you only control the client, you just need to make sure wherever your data exits allows outgoing traffic on that port.

    So yeah, that should work.

  • 2xsaiko@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    8 days ago

    Yeah, this should work (assuming by email client you mean MTA).

    Alternatively, you can set up Postfix to deliver mail over SSH to another MTA by defining a new service in master.cf that calls sendmail on the destination server. This postfix could run in a container as well or on the host, whatever is reachable.

    Old NixOS configuration for that here, see the default_transport and masterConfig parts: https://git.dblsaiko.net/systems/tree/modules/sys2x/mail/relay.nix?h=ssh-mail

    Alternatively, if you don’t have another mail server somewhere that you want to relay to, the simplest option is probably to just have Postfix deliver into a local mailbox and access that over IMAP (the imaps port should not be blocked, right? You can use a non-standard port though). Turn off non-local delivery though.

    • irmadlad@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 days ago

      the simplest option is probably to just have Postfix deliver into a local mailbox and access that over IMAP

      I already have sendmail on the server. Is there something special about Postfix? Just asking,I’ve never run Postfix and I’ve never had this experience before with a host. I guess they think that if they charge an extra 6 Euros to flip the switch, people wouldn’t use it for spam purposes. I’m bound and determined to figure out a workaround just because.

  • pgo_lemmy@feddit.it
    link
    fedilink
    English
    arrow-up
    0
    ·
    8 days ago

    You need a mail server somewhere, a mail client cannot listen for incoming messages. A possible workaround: you could activate your own mail server accessible only inside tailscale and use it to send and receive your local alerts.

    • irmadlad@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      8 days ago

      Would something like Mailu work. It runs in a docker container.

      ETA: The client would be on my desktop in the form of Thunderbird. It lives on part of my tailnet. In theory, it would be ‘connected’, no?