Magic signin link not sent since 1.7.0 / 0.81.0 update
-
My non-Cloudron users are unable to sign-in since the last update. They do not receive the magic signin link by email anymore.
I've tested this by creating a new test account. The invitation email was received. But after entering the email address on the connection page, no magic signing link is sent.
I've also restarted the server, which did not resolve the issue. -
-
@nebulon Yes, I found an error in the logs:
Mail command failed: 550 Authenticated user (removed@mydomain) cannot send mail as (removed) ... at SMTPConnection._formatError (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:798:19)\n at SMTPConnection._actionMAIL (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1607:34)\n at SMTPConnection.<anonymous> (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1076:18)\n at SMTPConnection._processResponse (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:982:20)\n at SMTPConnection._onData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:763:14)\n at SMTPConnection._onSocketData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)\n at Socket.emit (node:events:517:28)\n at Socket.emit (node:domain:489:12)\n at addChunk (node:internal/streams/readable:335:12)\n at readableAddChunk (node:internal/streams/readable:308:9)\n at Readable.push (node:internal/streams/readable:245:10)\n at TCP.onStreamRead (node:internal/stream_base_commons:190:23)"}
-
@joseph No, I didn't change the email settings through Outline. I used the app's "Email" setting as described under your link.
I have also tried further troubleshooting: I setup an additional outline instance on the same server, using the same domain (different subdomain o course) and the same email settings.
Then I added a new member through the outline preferences.
The problem was instantly reproduced.The main user received the "Welcome to outline" email
The new member received the "XX invited you to join Outline..." message.
But when trying to login, the email with the magic signing link is not being sent. Same error in the logs as described above.For information: I'm using an external SMTP server for this domain. This email settings worked well before the update. They also still work well with other apps, for example WordPress.
-
I can reproduce the last issue, I can't see any SMTP failures though.
For some reason after inviting the user, the link in the email is only a regular
https://outline.domain.com/?ref=invite-email
link which has no magic token or so, so after visiting that trying to login by typing the email will do nothing as for some reason no user was actually created looking at the members page.Seems like a flow issue in the app itself.
Edit: the user is there but still "inactive" and only invited, but even resending the invite link does not actually produce a proper invite link with any kind of token
Edit2: manually resending the invite did trigger the SMTP issue here. Investigating....
-
Alright so the issue is that the app generates a random reply-to address with which it sends out invite mails: https://github.com/outline/outline/blob/bb43c24efef817cdbc76d4e90781355897280c0b/server/emails/templates/BaseEmail.tsx#L191
Apps are not allowed to send out emails with random addresses on Cloudron. Not sure how to solve this right now.
-
I have created an upstream discussion about this at https://github.com/outline/outline/discussions/7949
Also, we will release a locally patched app package to make it work. The current "patch" is https://git.cloudron.io/cloudron/outline-app/-/commit/26c17f516c1ec39e46e66df9acb8cfa8ff5a70f7
-
@nebulon Unfortunately it's still not working for me.
The From Name is "CrunchBox" - The From address is team@crunchbox.lu
The error log shows the following:
... cannot send mail as \"CrunchBox team\"@crunchbox.lu", ...
Update:
I thought that the From Name might be interpreted as part of the address, so I tried removing the From Name. But then it is automatically set to "Outline" . -
@nebulon I set the e-mail addres for Outline in the Cloudron dashboard. (I used a clean test-instance of Outline, which I updated to package v1.7.1)
Then I logged in with the Cloudron SSO to create a new user.
The "invitation email" was sent and received:Nov 14 16:17:38 - {"label":"worker","level":"info","message":"EmailTask running","props":{"actorEmail":"gerard@mailo.com","actorName":"Gérard Kieffer","name":"Gérard","teamName":"Outline","teamUrl":"https://workspace2.crunchbox.lu","to":"gnkieffer@gmail.com"},"templateName":"InviteEmail"} Nov 14 16:17:38 - {"label":"email","level":"info","message":"Sending email \"Gérard Kieffer invited you to join Outline’s workspace\" to gnkieffer@gmail.com"}
Then I opend the login page, entered the new user's email address and clicked the Sign In button. That email, containing the magic sign, failed to be sent:
Nov 14 16:17:49 - {"label":"worker","level":"info","message":"EmailTask running","props":{"client":"web","teamUrl":"https://workspace2.crunchbox.lu","to":"gnkieffer@gmail.com","token":"[Filtered]"},"templateName":"SigninEmail"} Nov 14 16:17:49 - {"label":"email","level":"info","message":"Sending email \"Magic signin link\" to gnkieffer@gmail.com"} Nov 14 16:17:49 - {"error":"Mail command failed: 550 Authenticated user team@crunchbox.lu cannot send mail as \"CrunchBox team\"@crunchbox.lu","level":"error","message":"Error sending email to gnkieffer@gmail.com","stack":"Error: Mail command failed: 550 Authenticated user team@crunchbox.lu cannot send mail as \"CrunchBox team\"@crunchbox.lu\n at SMTPConnection._formatError (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:798:19)\n at SMTPConnection._actionMAIL (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1607:34)\n at SMTPConnection.<anonymous> (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1076:18)\n at SMTPConnection._processResponse (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:982:20)\n at SMTPConnection._onData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:763:14)\n at SMTPConnection._onSocketData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)\n at Socket.emit (node:events:517:28)\n at Socket.emit (node:domain:489:12)\n at addChunk (node:internal/streams/readable:335:12)\n at readableAddChunk (node:internal/streams/readable:308:9)\n at Readable.push (node:internal/streams/readable:245:10)\n at TCP.onStreamRead (node:internal/stream_base_commons:190:23)"} Nov 14 16:17:49 - {"error":"Mail command failed: 550 Authenticated user team@crunchbox.lu cannot send mail as \"CrunchBox team\"@crunchbox.lu","level":"error","message":"Error processing task in EmailTask","stack":"Error: Mail command failed: 550 Authenticated user team@crunchbox.lu cannot send mail as \"CrunchBox team\"@crunchbox.lu\n at SMTPConnection._formatError (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:798:19)\n at SMTPConnection._actionMAIL (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1607:34)\n at SMTPConnection.<anonymous> (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:1076:18)\n at SMTPConnection._processResponse (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:982:20)\n at SMTPConnection._onData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:763:14)\n at SMTPConnection._onSocketData (/app/code/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)\n at Socket.emit (node:events:517:28)\n at Socket.emit (node:domain:489:12)\n at addChunk (node:internal/streams/readable:335:12)\n at readableAddChunk (node:internal/streams/readable:308:9)\n at Readable.push (node:internal/streams/readable:245:10)\n at TCP.onStreamRead (node:internal/stream_base_commons:190:23)"}
-
There seems to be the fix for the next release:
https://github.com/outline/outline/commit/6421995b29f40d4172cd342fd592b78d5707258c