Se conseguirmos uma explicação clara do problema, poderemos analisá-lo.
por exemplo, como o Cloudflare se encaixa nisso?
Isso significa que apenas e-mails enviados de endereços de e-mail designados pelo aplicativo ou site serão encaminhados automaticamente para o endereço de e-mail verificado definido em sua Conta Apple.
O envio para o e-mail oculto funciona apenas de um único remetente? Como o iCloud se baseia nisso? Ele usa o campo “From”? Envelope-From? Sender?
Para quaisquer sites hospedados, podemos verificar os registros de entrega de e-mails individuais por meio do ID da fila de saída em /admin/email-logs. Sites auto-hospedados precisarão fazer o mesmo com seu provedor de e-mail.
Dei uma olhada nos logs para ver se conseguia entender o problema do Dir - tudo abaixo está anonimizado.
No caso do Dir, houve três e-mails enviados do site em Rust que foram entregues:
timestamp,queueid,message
2025-06-29T19:54:24.000Z,60Axxxxxxxx,client=unknown[2602:fd3f:3:112:0:242:ac11:10]
2025-06-29T19:54:24.000Z,60Axxxxxxxx,message-id=<c39588c5-xxxxxxxxxxxxxxxxxxxxxxxxxxx@users.rust-lang.org>
2025-06-29T19:54:24.000Z,60Axxxxxxxx,"from=<incoming+verp-e5bxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@rust-lang.discoursemail.com>, size=4556, nrcpt=1 (queue active)"
2025-06-29T19:54:28.000Z,60Axxxxxxxx,"to=<dxxxxxxxxxxxxxxx@icloud.com>, relay=mx02.mail.icloud.com[17.57.154.33]:25, delay=4.1, delays=0.01/0/0.55/3.5, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as D2xxxxxxxxx)"
2025-06-29T19:54:28.000Z,60Axxxxxxxx,removed
2025-06-29T19:56:20.000Z,2A7xxxxxxxx,client=unknown[2602:fd3f:3:108:0:242:ac11:1f]
2025-06-29T19:56:20.000Z,2A7xxxxxxxx,message-id=<d72180b5-xxxxxxxxxxxxxxxxxxxxxxxxxxx@users.rust-lang.org>
2025-06-29T19:56:20.000Z,2A7xxxxxxxx,"from=<incoming+verp-ea8xxxxxxxxxxxxxxxxxxxxxxxxxxxxx@rust-lang.discoursemail.com>, size=4556, nrcpt=1 (queue active)"
2025-06-29T19:56:23.000Z,2A7xxxxxxxx,"to=<dxxxxxxxxxxxxxxx@icloud.com>, relay=mx02.mail.icloud.com[17.57.156.30]:25, delay=3.4, delays=0.01/0/0.41/3, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as B9xxxxxxxxx)"
2025-06-29T19:56:23.000Z,2A7xxxxxxxx,removed
2025-06-29T20:24:33.000Z,C8Cxxxxxxxx,client=unknown[2602:fd3f:3:104:0:242:ac11:1f]
2025-06-29T20:24:33.000Z,C8Cxxxxxxxx,message-id=<c5db2547-xxxxxxxxxxxxxxxxxxxxxxxxxxx@users.rust-lang.org>
2025-06-29T20:24:33.000Z,C8Cxxxxxxxx,"from=<incoming+verp-9bfxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@rust-lang.discoursemail.com>, size=5589, nrcpt=1 (queue active)"
2025-06-29T20:25:36.000Z,C8Cxxxxxxxx,"to=<dxxxxxxxxxxxxxxx@icloud.com>, relay=mx02.mail.icloud.com[17.57.156.30]:25, delay=63, delays=0.01/60/0.4/2.9, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as DAxxxxxxxxx)"
2025-06-29T20:25:36.000Z,C8Cxxxxxxxx,removed
e também rejeições para cada um deles no log de rejeições, por exemplo:
From: Mail Delivery System <mailer-daemon@icloud.com>
To: incoming+verp-e5bxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@rust-lang.discoursemail.com
Message-ID: <20250629195443.xxxxxxxxxxxx@outbound.ms.icloud.com>
Subject: Undelivered Mail Returned to Sender
This is a system-generated message to inform you that your email could not
be delivered to one or more recipients. Details of the email and the error are as follows:
<exxx@actualemaildomain.com>: host route1.mx.cloudflare.net[162.159.205.13] said:
550 5.7.1 missing or invalid address in From: header. tUExxxxxxxxx (in
reply to end of DATA command)
Ah. Isso explica como o Cloudflare entra nisso - é o MX real para o domínio de e-mail do Dir.
Deixando de lado o resultado risível do iCloud encaminhando uma mensagem de rejeição contendo o endereço de e-mail real do usuário para o remetente, parece que o problema está entre o iCloud e o Cloudflare.
O iCloud, a julgar, provavelmente está usando SRS para empacotar o endereço Envelope-From real ao enviar para o Cloudflare, mas o Cloudflare o está rejeitando.
Não vejo como o Discourse poderia fazer algo diferente aqui - está fazendo tudo o que lhe é pedido? O problema evidentemente está em outro lugar.