The Qmail Pictures
ITWeb/서버관리 2012. 4. 18. 22:53[원본링크]
http://cr.yp.to/qmail/pictures.html
[Local to local]
Original message:
To: fred
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to fred@heaven.af.mil
| From: joe@heaven.af.mil
| To: fred@heaven.af.mil
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, fred@heaven.af.mil.
| Is heaven.af.mil in locals? Yes.
| Deliver locally to fred@heaven.af.mil.
V
qmail-lspawn ./Mailbox
| Look at mailbox name, fred.
| Is fred listed in qmail-users? No.
| Is there a fred account? Yes.
| Is fred's uid nonzero? Yes.
| Is ~fred visible to the qmailp user? Yes.
| Is ~fred owned by fred? Yes.
| Give control of the message to fred.
| Run qmail-local.
V
qmail-local fred ~fred fred '' '' heaven.af.mil joe@heaven.af.mil ./Mailbox
Does ~fred/.qmail exist? No.
Write message to ./Mailbox in mbox format.
[Local to local extension]
Original message:
To: fred-sos
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to fred-sos@heaven.af.mil
| From: joe@heaven.af.mil
| To: fred-sos@heaven.af.mil
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, fred-sos@heaven.af.mil.
| Is heaven.af.mil in locals? Yes.
| Deliver locally to fred-sos@heaven.af.mil.
V
qmail-lspawn ./Mailbox
| Look at mailbox name, fred-sos.
| Is fred-sos listed in qmail-users? No.
| Is there a fred-sos account? No.
| Is there a fred account? Yes.
| Is fred's uid nonzero? Yes.
| Is ~fred visible to the qmailp user? Yes.
| Is ~fred owned by fred? Yes.
| Give control of the message to fred.
| Run qmail-local.
V
qmail-local fred ~fred fred-sos - sos heaven.af.mil joe@heaven.af.mil ./Mailbox
Does ~fred/.qmail-sos exist? Yes: "./Extramail".
Write message to ./Extramail in mbox format.
[Local to virtual]
Original message:
To: dude@tommy.gov
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to dude@tommy.gov
| From: joe@heaven.af.mil
| To: dude@tommy.gov
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, dude@tommy.gov.
| Is tommy.gov in locals? No.
| Is dude@tommy.gov in virtualdomains? No.
| Is tommy.gov in virtualdomains? Yes: "tommy.gov:fred".
| Deliver locally to fred-dude@tommy.gov.
V
qmail-lspawn ./Mailbox
| Look at mailbox name, fred-dude.
| Is fred-dude listed in qmail-users? No.
| Is there a fred-dude account? No.
| Is there a fred account? Yes.
| Is fred's uid nonzero? Yes.
| Is ~fred visible to the qmailp user? Yes.
| Is ~fred owned by fred? Yes.
| Give control of the message to fred.
| Run qmail-local.
V
qmail-local fred ~fred fred-dude - dude tommy.gov joe@heaven.af.mil ./Mailbox
Does ~fred/.qmail-dude exist? No.
Does ~fred/.qmail-default exist? Yes: "./Mail.tommy".
Write message to ./Mail.tommy in mbox format.
[Local to local alias]
Original message:
To: help
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to help@heaven.af.mil
| From: joe@heaven.af.mil
| To: help@heaven.af.mil
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, help@heaven.af.mil.
| Is heaven.af.mil in locals? Yes.
| Deliver locally to help@heaven.af.mil.
V
qmail-lspawn ./Mailbox
| Look at mailbox name, help.
| Is help listed in qmail-users? No.
| Is there a help account? No.
| Give control of the message to alias.
| Run qmail-local.
V
qmail-local alias ~alias help - help heaven.af.mil joe@heaven.af.mil ./Mailbox
Does ~alias/.qmail-help exist? Yes: "john". Forward message to john.
[Local to remote]
Original message:
To: bill@irs.gov
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to bill@irs.gov
| From: joe@heaven.af.mil
| To: bill@irs.gov
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, bill@irs.gov.
| Is irs.gov in locals? No.
| Is bill@irs.gov in virtualdomains? No.
| Is irs.gov in virtualdomains? No.
| Is .gov in virtualdomains? No.
| Deliver remotely to bill@irs.gov.
V
qmail-rspawn Run qmail-remote.
|
V
qmail-remote Look at host name, irs.gov.
Is irs.gov listed in smtproutes? No.
Look up DNS MX/A for irs.gov and connect to it by SMTP:
MAIL FROM:<joe@heaven.af.mil>
RCPT TO:<bill@irs.gov>
[Null Client]
Original message:
To: bill@irs.gov
Hi.
qmail-inject Fill in the complete envelope and header:
| (envelope) from joe@heaven.af.mil to bill@irs.gov
| From: joe@heaven.af.mil
| To: bill@irs.gov
|
| Hi.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, bill@irs.gov.
| Is irs.gov in locals? No.
| Is bill@irs.gov in virtualdomains? No.
| Is irs.gov in virtualdomains? No.
| Is .gov in virtualdomains? No.
| Deliver remotely to bill@irs.gov.
V
qmail-rspawn Run qmail-remote.
|
V
qmail-remote Look at host name, irs.gov.
Is irs.gov listed in smtproutes? Yes: ":bigbang.af.mil".
Look up DNS A for bigbang.af.mil and connect by SMTP:
MAIL FROM:<joe@heaven.af.mil>
RCPT TO:<bill@irs.gov>
[Remote to local]
qmail-smtpd Receive message by SMTP from another host:
| MAIL FROM:<bill@irs.gov>
| RCPT TO:<joe@heaven.af.mil>
|
| Is $RELAYCLIENT set? No.
| Is heaven.af.mil in rcpthosts? Yes.
| Accept RCPT.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, joe@heaven.af.mil.
| Is heaven.af.mil in locals? Yes.
| Deliver locally to joe@heaven.af.mil.
V
qmail-lspawn ./Mailbox
| Look at mailbox name, joe.
| Is joe listed in qmail-users? No.
| Is there a joe account? Yes.
| Is joe's uid nonzero? Yes.
| Is ~joe visible to the qmailp user? Yes.
| Is ~joe owned by joe? Yes.
| Give control of the message to joe.
| Run qmail-local.
V
qmail-local joe ~joe joe '' '' heaven.af.mil bill@irs.gov ./Mailbox
Does ~joe/.qmail exist? No.
Write message to ./Mailbox in mbox format.
[Unauthorized relaying]
qmail-smtpd Receive message by SMTP from another host:
MAIL FROM:<spammer@aol.com>
RCPT TO:<bill@irs.gov>
Is $RELAYCLIENT set? No.
Is irs.gov in rcpthosts? No.
Reject RCPT.
[Authorized relaying]
qmail-smtpd Receive message by SMTP from another host:
| MAIL FROM:<joe@heaven.af.mil>
| RCPT TO:<bill@irs.gov>
|
| Is $RELAYCLIENT set? Yes: "".
| Accept RCPT.
V
qmail-queue Store message safely on disk.
Trigger qmail-send.
|
V
qmail-send Look at envelope recipient, bill@irs.gov.
| Is irs.gov in locals? No.
| Is bill@irs.gov in virtualdomains? No.
| Is irs.gov in virtualdomains? No.
| Is .gov in virtualdomains? No.
| Deliver remotely to bill@irs.gov.
V
qmail-rspawn Run qmail-remote.
|
V
qmail-remote Look at host name, irs.gov.
Is irs.gov listed in smtproutes? No.
Look up DNS MX/A for irs.gov and connect to it by SMTP:
MAIL FROM:<joe@heaven.af.mil>
RCPT TO:<bill@irs.gov>
