1 |
On Wed, 08 Apr 2009 01:04:53 +0200 |
2 |
laurent <laurent@××××××××××××.org> wrote: |
3 |
|
4 |
> Why don't I have thos lines showing: |
5 |
|
6 |
Short: because you (client) have to send some of them _to_ server, since |
7 |
it doesn't know what you need when you just connected. |
8 |
|
9 |
> EHLO domain.com |
10 |
|
11 |
That's what a typical client sends in response to server smtp |
12 |
announcement. |
13 |
|
14 |
> 250-mail.domain.com |
15 |
> 250-PIPELINING |
16 |
> 250-SIZE 10240000 |
17 |
> 250-VRFY |
18 |
> 250-ETRN |
19 |
> 250-STARTTLS |
20 |
> 250-AUTH LOGIN PLAIN |
21 |
> 250-AUTH=LOGIN PLAIN |
22 |
> 250-XVERP |
23 |
> 250 8BITMIME |
24 |
|
25 |
And that's what server responds to it, further announcing it's |
26 |
capabilities, so client may choose how to relay the message thru it. |
27 |
|
28 |
|
29 |
Try this simple python script to check smtp capability of your server: |
30 |
http://fraggod.net/svc/dumpz/d7936/ |
31 |
|
32 |
Just save it into some file like "smtp_test.py", replace "domain" with |
33 |
address of your server and use "python smtp_test.py" to launch it. |
34 |
It should show you whole protocol exchange between client and server, |
35 |
along with ocurred errors, if any. |
36 |
|
37 |
|
38 |
For me (working case), it's output looks like this ("domain.com" here is |
39 |
my mail domain, for example case): |
40 |
|
41 |
send: 'ehlo [127.0.0.1]\r\n' |
42 |
reply: '250-domain.com\r\n' |
43 |
reply: '250-PIPELINING\r\n' |
44 |
reply: '250-SIZE 10240000\r\n' |
45 |
reply: '250-VRFY\r\n' |
46 |
reply: '250-ETRN\r\n' |
47 |
reply: '250-STARTTLS\r\n' |
48 |
reply: '250-ENHANCEDSTATUSCODES\r\n' |
49 |
reply: '250-8BITMIME\r\n' |
50 |
reply: '250 DSN\r\n' |
51 |
reply: retcode (250); Msg: domain.com |
52 |
PIPELINING |
53 |
SIZE 10240000 |
54 |
VRFY |
55 |
ETRN |
56 |
STARTTLS |
57 |
ENHANCEDSTATUSCODES |
58 |
8BITMIME |
59 |
DSN |
60 |
send: 'mail FROM:<mail_test@××××××.com> size=390\r\n' |
61 |
reply: '250 2.1.0 Ok\r\n' |
62 |
reply: retcode (250); Msg: 2.1.0 Ok |
63 |
send: 'rcpt TO:<postmaster@××××××.com>\r\n' |
64 |
reply: '250 2.1.5 Ok\r\n' |
65 |
reply: retcode (250); Msg: 2.1.5 Ok |
66 |
send: 'data\r\n' |
67 |
reply: '354 End data with <CR><LF>.<CR><LF>\r\n' |
68 |
reply: retcode (354); Msg: End data with <CR><LF>.<CR><LF> |
69 |
data: (354, 'End data with <CR><LF>.<CR><LF>') |
70 |
send: 'Content-Type: multipart/mixed; boundary="===============0122837587=="\r\nMIME-Version: 1.0\r\nFrom: mail_test@××××××.com\r\nTo: postmaster@××××××.com\r\nDate: Wed, 08 Apr 2009 07:22:07 +0600\r\nSubject: Mail testing message\r\n\r\n--===============0122837587==\r\nContent-Type: text/plain; charset="us-ascii"\r\nMIME-Version: 1.0\r\nContent-Transfer-Encoding: 7bit\r\n\r\nTest message body ;)\r\n--===============0122837587==--\r\n.\r\n' |
71 |
reply: '250 2.0.0 Ok: queued as 555F1101FDC\r\n' |
72 |
reply: retcode (250); Msg: 2.0.0 Ok: queued as 555F1101FDC |
73 |
data: (250, '2.0.0 Ok: queued as 555F1101FDC') |
74 |
send: 'quit\r\n' |
75 |
reply: '221 2.0.0 Bye\r\n' |
76 |
reply: retcode (221); Msg: 2.0.0 Bye |
77 |
|
78 |
|
79 |
-- |
80 |
Mike Kazantsev // fraggod.net |