Transcript Email

Email
WeeSan Lee <[email protected]>
http://www.cs.ucr.edu/~weesan/cs183/
Roadmap









Introduction
Mail System Architecture
Email Headers
Sendmail
Debugging
Aliases
Forwarding
Procmail
Q&A
Introduction
MUA
Eudora
MUA
Outlook
MTA
(port 25)
The
Internet
MTA
(port 25)
LDA
procmail
MUA
mail
MUA
pine
MSA
(port 587)
Message
store
MUA
mail
MUA
pine
AA
Imapd,
pop3
Introduction (cont)

A mail system consists of:

MUA – Mail User Agent


Lets users read and compose email, eg. Mail, Pine, Eudora, Outlook
MTA – Mail Transport Agent
Routes emails among machines, eg. Sendmail, Postfix

Speaks SMTP (Simple Mail Transport Protocol)
Question: What are the
MSA – Mail Submission Agent
differences between

Accepting emails from MUA, eg. Sendmail
POP3 and IMAP?



LDA – Local Delivery Agent



Places emails to a local message store, eg. Procmail
/var/spool/mail/username
AA – Access Agent

Connects MUA to message store, eg. POP3, IMAP
Mail System Architecture

Incoming SMTP server


Outgoing SMTP server


For sending outgoing emails
IMAP or POP3 server


For accepting incoming emails with spam filters
For retrieving emails
Message Store


/var/spool/mail/username
/home/username/mail/INBOX
E-mail

Header


Attribute: value
Eg.



Header starts with X- will be ignored, eg.


From: [email protected]
Bcc: [email protected]
X-Spam-Flag: YES
Body


7-bit ASCII text
Question: How are binary data sent over emails?
Sendmail


Both a MTA (port 25) and MSA (port 587)
Configuration file


/etc/mail/sendmail.cf
Mail queue

/var/spool/mqueue/
Debugging


mail
 $ cal | mail -s “test” [email protected]
sendmail -oi -t
 $ cat | sendmail -oi –t
 From: [email protected]
 To: [email protected]
 Subject: Hi Bill



Linux is better 
-WeeSan
^D
Debugging (cont)

telnet
















$ telnet mail.cs.ucr.edu 25
…
220 esmtp.cs.ucr.edu ESMTP Postfix
mail from: [email protected]
250 Ok
rcpt to: [email protected]
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
Subject: Hi Bill
Linux is better :)
.
250 Ok: queued as F1C832AFBE4
quit
221 Bye
Connection closed by foreign host.
/etc/aliases or /etc/mail/aliases



Allows users to be referred by multiple names
Used by mailing list
$ cat /etc/aliases | grep weesan


root: weesan, [email protected]
To rehash aliases

$ newaliases
~/.forward

$ cat ~/.forward


\weesan
[email protected]
~/.procmailrc








# For spam
:0
* (^Subject:.*\[SPAM\]|X-Spam-Flag: YES)
INBOX.spam
# Another type of spam 
:0
* ^From:.*[email protected]
/dev/null
~/.procmailrc




# SMS myself
:0 c
* ^From:.*[email protected]
| (formail -c -XFrom: -XSubject: ; echo "To:
$MY_CELL") | $SENDMAIL -oi -t
~/.procmailrc









# UCR Systems support emails
:0
* ^Subject:.*(New Ticket|Ticket Assigned)
{
:0 c
INBOX.systems
:0
| (formail -c -XFrom: -XSubject: ; echo "To:
$MY_CELL") | $SENDMAIL -oi -t
}
Reference

LAH




Ch 18: Electronic Mail
http://www.sendmail.org/
http://www.procmail.org/
http://www.imap.org/