As the topic would suggest I’ve run into another problem with PieFed…I have Mailgun set up as my SMTP host for password resets and the like, the password to my knowledge is correct as I’ve tested the configuration out in a separate Python script and it logged into smtp.mailgun.org successfully on port 587.

Has anyone else set up Mailgun or similar external SMTP hosting that may be able to help debug the issue?

  • erebion@news.erebion.eu
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 days ago

    I’ve also tried setting up SMTP, but gave up. I just could never get it to work. Not sure whether the docs are just lacking or whether it might be a bug.

    • Phoenix1@piefed.socialOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 days ago

      Goodness, how do you handle password resets and the like? Unfortunately I won’t be able to operate a PieFed server without SMTP support, but I haven’t been able to figure out what the issue is like yourself.

      • erebion@news.erebion.eu
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 day ago

        Single user instance*, I guess I’d do that using SQL as the UI does not allow me to reset it. But I could also just change it, I know I don’t lose my passwords.

        *actually two human users, but the other human knows I cannot easily reset it

    • The Blue Hydrangea@thebluehydrangea.org
      link
      fedilink
      English
      arrow-up
      0
      ·
      12 hours ago

      Out of curiosity was yours a bare metal or Docker installation? I had the exact same problem with the bare metal install, but with Docker the same mail configuration worked flawlessly. Perhaps the bare metal install documentation is missing a step?

      • erebion@news.erebion.eu
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 hours ago

        I use Docker, must be somrthing else.

        Mail parameters are set correctly, yet I never got any email when trying to test password resets and I also did not find anything in the logs. Not sure what the logs would say if it successfully sends an email.

  • Sir. Haxalot@nord.red
    link
    fedilink
    English
    arrow-up
    3
    ·
    22 hours ago

    This may just be a shot in the dark but what is the MAIL_USE_TLS setting in your configuration? I also had issues with mail delivery to start with and it turned out that the problem was that I thought that setting was for SMTPS, but it’s actually whether to use STARTTLS. Granted since you’re using port 587 either value should work, but Mailgun might block unencrypted submissions.

    Also, I think almost all email delivery happens from the celery instance. This was also a mistake I made to start with because I didn’t prioritize getting async up and working (turns out that’s very important).

    • Phoenix1@piefed.socialOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      18 hours ago

      MAIL_USE_TLS=True in my current configuration…that’s what’s really strange about it. The exact same configuration in Docker doesn’t work for the bare metal install. I’ve yet to figure out why that is, I’m just glad that it works in the Docker version!

  • Rimu@piefed.socialM
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 day ago

    Try this:

    set the FLASK_DEBUG environment variable to 1 and then restart your systemd services / docker containers.

    Then go to

    https://your-instance.tld/test_email?email=your-email@whatever.com

    If it fails is there anything interesting in the logs?

    Try removing the MAIL_USE_TLS=True from your .env file. Often SMTP providers will let you use two ports, one of them for TLS and one without. You’ll need to try both ports, with MAIL_USE_TLS on and off to eliminate all possibilities.

    • Phoenix1@piefed.socialOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      Thank you, I tried this from my Docker version of the instance, mail seems to be sent as normal through that…I just need to figure out why it’s happening with the non-Docker version, so I’ll have to test that and check the logs once I get a chance. It’s probably something in the “hard way” configuration that I didn’t get right along the way!

      • wjs018@piefed.wjs018.xyz
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 day ago

        If you are trying to run things on a VPS, many hosting companies will block the standard email ports by default to prevent spammers from using their network. Usually you have to go through some extra steps to open up those ports.

        Some smtp services will allow you to use a nonstandard port. I use resend.com to send smtp emails, and this is what my PieFed environment variables look like:

        MAIL_USE_TLS=True
        MAIL_SERVER='smtp.resend.com'
        MAIL_PORT=2587
        MAIL_USERNAME='resend'
        MAIL_PASSWORD='my_api_key'
        MAIL_FROM='my_from_email@instance.tld'
        
        • Phoenix1@piefed.socialOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 day ago

          Ah, my configuration looks very similar, the only difference is that I’m using Mailgun 😁 I am self-hosting and our IP does allow HTTP/HTTPS, but not SMTP for obvious reasons!