Pe lângă greșeala evidentă în încercarea ta, exemplul tău funcționează dacă pun rețeta în personalul meu .procmailrc
.
Iată o demonstrație rapidă pe Ubuntu într-un container Docker proaspăt în care am instalat Postfix, Procmail și Netcat și am creat un cont de utilizator pentru mine:
tripleee@0934b6a257c9:~$ cat >.procmailrc
LOGFILE=/tmp/procmail.log
:0
* ^(X-Original-To): nume de [email protected]
{ EXITCODE=67 HOST= }
^D
tripleee@0934b6a257c9:~$ nc localhost 25
220 0934b6a257c9 ESMTP Postfix (Ubuntu)
ehlo localhost
250-0934b6a257c9
250-CONDUCERE
250 - DIMENSIUNEA 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-CODURI DE STARE ÎMBUNĂTĂTATE
250-8BITMIME
250-DSN
250-SMTPUTF8
250 BĂRĂTIRE
mail de la:<tripleee>
250 2.1.0 Ok
rcpt la:<tripleee>
250 2.1.5 Ok
date
354 Terminați datele cu <CR><LF>.<CR><LF>
X-Original-To: nume de [email protected]
Subiect: primul
cine e primul
.
250 2.0.0 Ok: în coadă ca 608C329A304
părăsi
221 2.0.0 Pa
^C
tripleee@0934b6a257c9:~$ cat /tmp/procmail.log
De la tripleee@0934b6a257c9 vineri, 4 martie, 11:50:59 2022
Subiect: primul
Dosar: 0
De la MAILER-DAEMON vineri, 4 martie, 11:50:59 2022
Subiect: e-mail nelivrat returnat expeditorului
Dosar: /var/mail/tripleee 2267
Cu toate acestea, aceeași rețetă în /etc/procmailrc
face ca mesajul să fie livrat oricum; pe scurt, HOST=
spune sări peste actual fisier de retete, dar in /etc/procmailrc
, asta înseamnă că nu mai citiți acest fișier și treceți la livrarea către utilizator.
Pot doar să speculez că aceasta este problema reală pe care o întâmpinați. Dacă aveți mai multe detalii, vă rugăm să editați întrebarea pentru a le furniza.
Deoparte, parantezele sunt de prisos, iar punctul ar trebui scăpat.
:0
* ^X-Original-To: nume de utilizator@example\.com
{ EXITCODE=67 HOST= }
Dacă activați înregistrarea verbose cu VERBOSE=da
veți vedea că Procmail atribuie de fapt HOST=}
ceea ce nu este cu adevărat ceea ce m-aș aștepta, dar funcționează (atâta timp cât dvs GAZDĂ
nu este chiar numit }
!)
Observați, de asemenea, cum fișierul jurnal arată că mesajul primit este renunțat și apoi mi-a fost livrat un mesaj de respingere (deoarece eu eram expeditorul, precum și destinatarul). Cu toate acestea, mesajul de respingere generat include text care (în mod obscur) dezvăluie că, până la urmă, adresa destinatarului există de fapt:
<tripleee@0934b6a257c9> (extins de la <tripleee>): utilizator necunoscut
Probabil că trebuie să fii destul de familiarizat cu mesajele de respingere Postfix pentru a înțelege exact ce înseamnă asta; practic spune că s-a extins tripleee
la o adresă de e-mail complet extinsă, cu numele domeniului inclus, iar apoi livrarea către aceasta a produs mesajul de eroare din dreapta punctului. (La bine și la rău, mesajele de respingere ale Sendmail sunt și mai obscure; dar adevăratul profesionist al mesajelor de eroare neinteligibile, ca întotdeauna, este Microsoft.)