Suddenly unable to send mail (worked before)

Hi all,
I recently noticed my Vikunja instance has stopped sending emails.
Everything was configured beforehand and was working OK. I also use several other services with SMTP mailing enabled and those continue to work.

I see the following error inside the API container:

ERROR	▶ mail/func1 331 Error when sending mail: %s sending MAIL FROM command failed: read tcp [container ip]:[random port]->[smtp server]:587: i/o timeout

I tried switching to TLS (port 465 as well as forcing TLS in the Vikunja config) and using a different provider, with no luck.

As mentioned, my instance was sending mails before, and no change whatsoever has taken place…

Would really appreciate your help in diagnosing this and of course willing to provide further details.

Thanks!

We’ve switched the underlying mail component in the last release which might have brought these issues.

Can you try setting the port to 25?

Switched to port 25 (didn’t change any other setting) - seeing a similar error:

ERROR	▶ mail/func1 3e6 Error when sending mail: %s sending MAIL FROM command failed: read tcp 150.201.23.5:36156->67.195.12.42:25: i/o timeout

I can reach that port OK inside the API container.
If it’s any help, these are my (relevant) mailer settings:

mailer:
  # Whether to enable the mailer or not. If it is disabled, all users are enabled right away and password reset is not possible.
  enabled: true
  # SMTP Host
  host: "smtp.mail.yahoo.com"
  # SMTP Host port
  port: 25
  #Auth type
  authtype: plain
 ...
  # Wether to skip verification of the tls certificate on the server
  skiptlsverify: false
...
  # The length of the mail queue.
  queuelength: 100
  # The timeout in seconds after which the current open connection to the mailserver will be closed.
  queuetimeout: 300
  # By default, vikunja will try to connect with starttls, use this option to force it to use ssl.
  forcessl: false

I’ve tried different mail services as well with no luck.

Please let me know if there’s anything else I can provide to help.

Thanks!

Did you try a different authtype?

Yes, I did - login throws a similar error:

ERROR	▶ mail/func1 328 Error when sending mail: %s sending MAIL FROM command failed: read tcp 150.201.23.6:33828->87.248.97.36:25: i/o timeou

and cram-md5 is not supported by the services I tried.

And with another port?

No luck - I tried with all three ports (587,465 and 25), both login and plain authtypes as well as trying the forcessl setting. Seeing similar messages on 25 and 587 but get a different one for 465:

ERROR	▶ mail/func1 359 Error during connect to smtp server: %s short response: Z

Do you have access to the mail server logs? Are there any messages there?

Afraid not… it’s a public server.
I don’t think it’s a server issue though as I use the same configuration for many other self-hosted services without issue.
As mentioned I tried different providers as well, and still seeing the same error messages.

If it’s a public service, do you think I could register an account and debug it?

I’m not sure how that would work… I’m using Yahoo’s SMTP server but I’ve tried several others (Google, Mailgun and such) as well.

I could maybe try routing Vikunja to use Postfix or such in a different container and route that to the public SMTP. I’ll try that soon and update here.

Thank you for all your help thus far :slight_smile:

Is it a standard yahoo account? I can try register one and debug.

Yes, standard Yahoo account.

Looks like you need a yahoo app password to use this. And it also looks like yahoo just broke that feature with no eta on when it’ll be fixed.

That’s odd - I tested with other SMTP servers at the time (such as Gmail) with no success.
I must have done something wrong before…

I just tried another service, and mailing works again!

Thanks so much for all your help :smiley: