Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

cannot send mail with qmail

Status
Not open for further replies.

jacksonsam

Technical User
Jul 17, 2006
1
GB
Hello, I have been trying to solve this problem for some time now; basically I installed qmail/vpopmail on my solaris 9 system. Followed the tutorial on qmailrocks.org for the installation; the compilations was successful (no errors).

The problem is I can receive mail from remote systems but I am unable to send mail to remote systems, I can however; send mail between local accounts on my mail server. Now; I have analyzed the problem from many aspects.

Here are the services I compiled:
netqmail-1.05
ucspi-tcp-0.88
vpopmail-5.4.13

My /var/qmail/supervise/qmail-smtpd/run looks like this (note: my mail server is mail.mydomain.com for the sake of this example)

#!/bin/sh
QMAILDUID=`/usr/xpg4/bin/id -u vpopmail`
NOFILESGID=`/usr/xpg4/bin/id -g vpopmail`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
LOCAL=`head -1 /var/qmail/control/me`
exec /usr/local/bin/softlimit -m 30000000 \
/usr/local/bin/tcpserver -v -r -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" \
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
/var/qmail/bin/qmail-smtpd mail.mydomain.com \
/export/home/vpopmail/bin/vchkpw /usr/bin/true 2>&1


My /var/qmail/supervise/qmail-pop3d/run is as follows

#!/bin/sh
PATH=/var/qmail/bin:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/ccs/bin:/opt/csw/bin
:/bin
export PATH
exec /usr/local/bin/softlimit -m 3000000 \
/usr/local/bin/tcpserver -H -R -v -c100 0 110 qmail-popup mail.mydomain.com \
/export/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1


My /var/qmail/supervise/qmail-send/run is as follows

#!/bin/sh
exec /var/qmail/rc




So now qmail is running on my system and can be verified using #qmailctl.solaris stat

/service/qmail-send: up (pid 3486) 8 seconds
/service/qmail-send/log: up (pid 3485) 8 seconds
/service/qmail-smtpd: up (pid 3495) 8 seconds
/service/qmail-smtpd/log: up (pid 3494) 8 seconds
/service/qmail-pop3d: up (pid 3501) 8 seconds
/service/qmail-pop3d/log: up (pid 3502) 8 seconds
messages in queue: 0
messages in queue but not yet preprocessed: 0

And to make sure I scanned the ports from 1-200 and ports 25 and 110 were open, and in addition to that I ran a ps –ef | grep error to see if there were any errors with any of the mail services.

root 374 370 0 Jul 14 ? 2:20 readproctitle service errors: .................................................

As you can see from the sequence of uninterrupted dots, no errors were detected.


So let me show you what the logs say when I execute a command using qmail-inject to send a mail from local system to a user on yahoo mail server. me@mydomain.com -> test@yahoo.com

# echo to: test@yahoo.com | /var/qmail/bin/qmail-inject

# tail –f /var/log/qmail/qmail-send/current

@4000000044bc125f375dc26c new msg 436 <-----message received here
@4000000044bc125f375de97c info msg 436: bytes 202 from <me@mail.mydomain.com> qp 3531 uid 0
@4000000044bc125f37d7efc4 starting delivery 2: msg 436 to remote test@yahoo.com
@4000000044bc125f37d80b1c status: local 0/10 remote 1/120
@4000000044bc12610e6fbf54 delivery 2: success: 67.28.113.70_accepted_message./Remote_host_said:_250_ok_dirdel/
@4000000044bc12610eb7cca4 status: local 0/10 remote 0/120
@4000000044bc12610eb7e02c end msg 436 <----message ends here


And here is the output from the network layer using tcpdump (Note: 10.1.1.200 is my mailserver mail.mydomain.com and 67.28.113.70 is the yahoo mail server)


22:41:29.546526 10.1.1.5.33003 > 10.1.1.200.22: P 3014615076:3014615124(48) ack 1227402722 win 63936 <nop,nop,timestamp 38837523 26452293> (DF) [tos 0x10]
22:41:30.818426 10.1.1.200.63077 > 67.28.113.70.25: S 4154862510:4154862510(0) win 49640 <mss 1460,nop,nop,sackOK> (DF)
22:41:30.911804 67.28.113.70.25 > 10.1.1.200.63077: S 2638438055:2638438055(0) ack 4154862511 win 65535 <mss 1460> (DF)
22:41:30.911953 10.1.1.200.63077 > 67.28.113.70.25: . ack 1 win 49640 (DF)
22:41:31.159421 67.28.113.70.25 > 10.1.1.200.63077: P 1:58(57) ack 1 win 65535 (DF)
22:41:31.159571 10.1.1.200.63077 > 67.28.113.70.25: . ack 58 win 49640 (DF)
22:41:31.159803 10.1.1.200.63077 > 67.28.113.70.25: P 1:20(19) ack 58 win 49640 (DF)
22:41:31.256308 67.28.113.70.25 > 10.1.1.200.63077: P 58:89(31) ack 20 win 65535 (DF)
22:41:31.256427 10.1.1.200.63077 > 67.28.113.70.25: . ack 89 win 49640 (DF)
22:41:31.256531 10.1.1.200.63077 > 67.28.113.70.25: P 20:51(31) ack 89 win 49640 (DF)
22:41:31.352724 67.28.113.70.25 > 10.1.1.200.63077: P 89:124(35) ack 51 win 65535 (DF)
22:41:31.352936 10.1.1.200.63077 > 67.28.113.70.25: P 51:82(31) ack 124 win 49640 (DF)
22:41:31.461844 67.28.113.70.25 > 10.1.1.200.63077: P 124:164(40) ack 82 win 65535 (DF)
22:41:31.462051 10.1.1.200.63077 > 67.28.113.70.25: P 82:88(6) ack 164 win 49640 (DF)
22:41:31.555831 67.28.113.70.25 > 10.1.1.200.63077: P 164:178(14) ack 88 win 65535 (DF)
22:41:31.556130 10.1.1.200.63077 > 67.28.113.70.25: P 88:298(210) ack 178 win 49640 (DF)
22:41:31.747769 67.28.113.70.25 > 10.1.1.200.63077: . ack 298 win 65535 (DF)
22:41:32.049347 67.28.113.70.25 > 10.1.1.200.63077: P 178:193(15) ack 298 win 65535 (DF)
22:41:32.049659 10.1.1.200.63077 > 67.28.113.70.25: P 298:304(6) ack 193 win 49640 (DF)
22:41:32.049835 10.1.1.200.63077 > 67.28.113.70.25: F 304:304(0) ack 193 win 49640 (DF)
22:41:32.142607 67.28.113.70.25 > 10.1.1.200.63077: P 193:224(31) ack 304 win 65535 (DF)
22:41:32.142768 10.1.1.200.63077 > 67.28.113.70.25: R 4154862815:4154862815(0) win 49640 (DF)
22:41:32.144278 67.28.113.70.25 > 10.1.1.200.63077: F 224:224(0) ack 304 win 65535 (DF)
22:41:32.144377 10.1.1.200.63077 > 67.28.113.70.25: R 4154862814:4154862814(0) win 0 (DF)


From the logs and tcpdump it appears that the delivery of the message 436 was a success, and that it was actually delivered to the remote host as we can see from the tcpdump output, however after checking the remote mail box I did not see the message.

I can receive mail from the same remote system I tried sending to with no problems. So it cannot be a DNS problem since the remote mail server didn’t have a problem resolving my mail server.

I even tried the other method of sending mail by telneting to port 25 and constructing the message, in either case; everything seems to be a success, no hints or indications of an error. My last guess would be that it is a problem with one or more of the control files.

At this stage I tried every thing and frankly ran out of ideas. If you see an error that I don’t or have any queries or suggestions please don’t hesitate to reply.

Thank you.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top