How can I send/spoof emails that appear to come from email addresses other than the account from which they being sent in a GUI environment without scripting?

closed as off-topic by Mokubai May 16 at 7:36

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking product, service, or learning material recommendations are off-topic because they become outdated quickly and attract opinion-based answers. Instead, describe your situation and the specific problem you're trying to solve. Share your research. Here are a few suggestions on how to properly ask this type of question." – Mokubai
If this question can be reworded to fit the rules in the help center, please edit the question.


For historical reasons, email has two completely seperate notions of a sender:

  • Inside the mail (the From: header) first defined in RFC822
  • On the SMTP envelope (the MAIL FROM: command)

Not accidentically this mirrors the snail mail, where the sender on the envelope and the sender as given on the letter inside may or may not be the same.

To make sending mail easier, most MUAs ("Mail clients") have you configure one email address and use this for both. Most SMTP servers will only reject mail, where the envelope has a wrong address, but will happily transport any (including an anonymous) From: address.

Since the SMTP envelope isn't delivered to the recepient, only the From: header defines what your recepients see as a sender, this is the reason why you sometimes see an X-Envelope-From: (or similar) header injected by the first-hop mail server to allow detection if they are different.

To answer your questions:

  • I do not know of a GUI mail client that would allow different addresses for SMTP and RFC822ff
  • If a mail server relays messages with a spoofed SMTP address is less a matter of the server software, but of how you configure it. I do know for sure, that postfix can handle both scenarios.

Since this sort of spoofing is typically used in a sysadmin role via scripting, the lack of a GUI client will most likely not matter: A quick shell script employing nc will most likely do what you need.

Not the answer you're looking for? Browse other questions tagged or ask your own question.