Большинству людей необходимо изменить два значения при попытке правильно подделать адрес отправителя в электронном письме. Первый - это адрес отправителя, а второй - адрес отправителя. Многие из предлагаемых в сети решений изменяют только одно из этих значений.
Если от имени пользователя root я пытаюсь выполнить простую почтовую команду, чтобы отправить себе электронное письмо, это может выглядеть так
echo "test" | mail -s "a test" me@noone.com
И связанные журналы:
Feb 6 09:02:51 myserver postfix/qmgr[28875]: B10322269D: from=<root@myserver.com>, size=437, nrcpt=1 (queue active)
Feb 6 09:02:52 myserver postfix/smtp[19848]: B10322269D: to=<me@noone.com>, relay=myMTA[x.x.x.x]:25, delay=0.34, delays=0.1/0/0.11/0.13, dsn=2.0.0, status=sent (250 Ok 0000014b5f678593-a0e399ef-a801-4655-ad6b-19864a220f38-000000)
Попытка изменить адрес с помощью -
echo "test" | mail -s "a test" me@noone.com -- dude@thisguy.com
Это меняет значение orig-to, но не значение from:
Feb 6 09:09:09 myserver postfix/qmgr[28875]: 6BD362269D: from=<root@myserver.com>, size=474, nrcpt=2 (queue active)
Feb 6 09:09:09 myserver postfix/smtp[20505]: 6BD362269D: to=<me@noone>, orig_to=<dude@thisguy.com>, relay=myMTA[x.x.x.x]:25, delay=0.31, delays=0.06/0/0.09/0.15, dsn=2.0.0, status=sent (250 Ok 0000014b5f6d48e2-a98b70be-fb02-44e0-8eb3-e4f5b1820265-000000)
Затем попробуйте с помощью -r и a - отрегулировать from и orig-to.
echo "test" | mail -s "a test" -r dude@comeguy.com me@noone.com -- dude@someguy.com
И журналы:
Feb 6 09:17:11 myserver postfix/qmgr[28875]: E3B972264C: from=<dude@someguy.com>, size=459, nrcpt=2 (queue active)
Feb 6 09:17:11 myserver postfix/smtp[21559]: E3B972264C: to=<me@noone.com>, orig_to=<dude@someguy.com>, relay=myMTA[x.x.x.x]:25, delay=1.1, delays=0.56/0.24/0.11/0.17, dsn=2.0.0, status=sent (250 Ok 0000014b5f74a2c0-c06709f0-4e8d-4d7e-9abf-dbcea2bee2ea-000000)
Вот как это работает для меня. Надеюсь, это кому-нибудь поможет.