Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there a way to send email where receiver sees multiple recipient email addresses includes his, but in fact only send to one receiver himself?

share|improve this question
up vote 2 down vote accepted

In a SMTP conversation, it would look like this:

$ nc mailserver.example.net smtp
← 220 mailserver.example.net ESMTP Hello!
→ ehlo yourhostname.isp.net
← 250 mailserver.example.net
→ mail from:<KMC@nonexistent.org>
← 250 OK
→ rcpt to:<real-recipient@example.net>
← 250 OK
→ rcpt to:<another-recipient@example.net>
← 250 OK
→ data
← 354 Waiting for data
→ To: <fake-recipient@example.net>, <someone@else.tld>
→ Subject: Hello there.
→ Content-Type: text/plain; charset=utf-8
→
→ The thing about email is that you can spoof practically everything.
→ .
← 250 OK
→ quit
← 221 Bye

The addresses given in the envelope – rcpt – are the actual recipients. They will receive the message.

The addresses given in the header – To: – are only for display purposes. They are not used for sending.

When using the sendmail interface, the same rule applies – except the recipients are given in the command line:

$ sendmail real-recipient@example.net
→ To: <fake-recipient@example.net>, <someone@else.tld>
→ Subject: Hello there.
→ Content-Type: text/plain; charset=utf-8
→
→ One thing about email is that you can spoof practically everything.
→ CtrlD
share|improve this answer
    
what is the different between using "nc" and "telnet" to connect to mail server? usually I use "telnet mailserver.domain.com 25" – KMC Feb 3 '12 at 1:05
    
@KMC: The Telnet protocol normally performs option negotiation immediately after connection, and if the server does not speak Telnet (for example, a SMTP server), client-initiated negotiation would confuse the server. However, smarter Telnet clients (including most command-line telnet versions) will not attempt the negotiation when telnetting to non-default ports. So in the end, there is no difference – I used nc just out of habit. (In fact, nc is slightly worse since it is IPv4-only, while most Telnet clients also do IPv6.) – grawity Feb 3 '12 at 14:32

Absolutely. During the sending phase you need to only talk to the MX server of the recipient and only specify them in the RCPT command. But I know of no MUA that can do so.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .