歡迎您光臨本站 註冊首頁

qmail的smtp auth的問題,極度鬱悶

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

qmail的smtp auth的問題,極度鬱悶

我在Solaris 9中幾經困難,最後還是成功搭建了qmail(1.05)+vpopmail(4.5.7)+mysql+igenus+ezmlm+autorespond+qmailadmin。運行2天,用戶反映基本OK。
後來,發現忘記打了一個smtp驗證的patch,外網用戶不能relay發往外域的郵件(outlook),然後下載了netqmail-1.05-tls-smtpauth-20070417.patch(from http://shupp.org/patches/),然後按照補丁的內容去打:
tar -xzf netqmail-1.05.tar.gz
cd netqmail-1.05(跳過./collate.sh
,因為感覺第一次安裝qmail時候已經做過了)
cd netqmail-1.05
patch -p0 < ../../netqmail-1.05-tls-smtpauth-20070417.patch
cd netqmail-1.05
make
make setup check
make cert
make tmprsadh

整個打補丁過程沒有任何錯誤(開始有,後來解決了)。但是隨之大問題就來了,telnet localhost 25埠,不通了,或者說一tlenet,就直接關閉:
bash-2.05# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection to localhost closed by foreign host.

請問出了什麼問題?怎麼解決?急啊~~~~:em11: :em11: :em11:
《解決方案》

其中,沒有把原先的sendmail卸載掉。不過已經停掉服務了。至少在沒做smtp auth前,都可以正常使用的,做了后就出問題了。不卸載sendmail,就是為了防止qmail掛了的時候,可以直接切換成sendmail服務。
等待高手~~:)
《解決方案》

有可能是 qmail-smtpd 的啟動腳本有問題,最好是檢查一下 smtpd 的日誌
《解決方案》

大麻兄,smtp日誌有錯誤:
2007-07-31 09:19:58.413683500 ld.so.1: /var/qmail/bin/qmail-smtpd: fatal: libssl.so.0.9.7: open failed: No such file or directory

但是該文件明明有的啊:
bash-2.05# find / -name libssl.so.0.9.7 -print
/usr/local/ssl/lib/libssl.so.0.9.7

bash-2.05# echo $LD_LIBRARY_PATH
/usr/lib:/usr/local/lib:/opt/sfw/kde/lib:/opt/sfw/gcc-3/lib:/opt/sfw/qt-3.3.4/usr/lib/qt-x11-free-3.3.4/lib:/opt/sfw/mysql/lib/mysql:/opt/sfw/php/lib/php:/usr/local/BerkeleyDB.4.2/lib:/opt/sfw/openldap/lib:/usr/local/gd/lib:/usr/local/ssl/lib:.

是屬性不對嗎?
bash-2.05# ls -lah /usr/local/ssl/lib/libssl.so.0.9.7
-r-xr-xr-x   1 root     other       214K Mar 10  2005 /usr/local/ssl/lib/libssl.so.0.9.7
《解決方案》

libssl.so.0.9.7 所在的路徑,ld 找不到
《解決方案》

但是LD_LIBRARY_PATH里有/usr/local/ssl/lib路徑啊

bash-2.05# echo $LD_LIBRARY_PATH
/usr/lib:/usr/local/lib:/opt/sfw/kde/lib:/opt/sfw/gcc-3/lib:/opt/sfw/qt-3.3.4/usr/lib/qt-x11-free-3.3.4/lib:/opt/sfw/mysql/lib/mysql:/opt/sfw/php/lib/php:/usr/local/BerkeleyDB.4.2/lib:/opt/sfw/openldap/lib:/usr/local/gd/lib:/usr/local/ssl/lib:.

怎麼回事?openssl需要配置么?
《解決方案》

其實我目前還不需要ssl的數字認證加密,只要smtp認證就夠了,兩者一起來,出了錯反而麻煩……
《解決方案》

bash-2.05# more /var/qmail/supervise/qmail-smtpd/run
#!/bin/sh

QMAILDUID=`/usr/xpg4/bin/id -u qmaild`
NOFILESGID=`/usr/xpg4/bin/id -g qmaild`
VPOPMAILUID='/usr/xpg4/bin/id -u vpopmail'
VCHKPWGID='/usr/xpg4/bin/id -g vchkpw'
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
LOCAL=`head -1 /var/qmail/control/me`

if [ -z "$QMAILDUID" -o -z "$NOFILESGID" -o -z "$MAXSMTPD" -o -z "$LOCAL" ]; the
n
    echo QMAILDUID, NOFILESGID, MAXSMTPD, or LOCAL is unset in
    echo /var/qmail/supervise/qmail-smtpd/run
    exit 1
fi

if [ ! -f /var/qmail/control/rcpthosts ]; then
    echo "No /var/qmail/control/rcpthosts!"
    echo "Refusing to start SMTP listener because it'll create an open relay"
    exit 1
fi

exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -H -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" \
-u "$VPOPMAILUID" -g "$VCHKPWGID" 0 smtp /var/qmail/bin/qmail-smtpd "$LOCAL" ~vp
opmail/bin/vchkpw /bin/true 2>&1
《解決方案》

等我乾脆把libssl.so.0.9.7文件放到/usr/lib下后,再次運行,出現新的error:
2007-07-31 13:48:57.092091500 ld.so.1: /var/qmail/bin/qmail-smtpd: fatal: /usr/lib/libnsl.so.1: mmap failed: Not enough space

明明機子有的是空間
bash-2.05# df -kh
Filesystem             size   used  avail capacity  Mounted on
/dev/dsk/c1t0d0s0       29G   5.0G    24G    18%    /
/proc                    0K     0K     0K     0%    /proc
mnttab                   0K     0K     0K     0%    /etc/mnttab
fd                       0K     0K     0K     0%    /dev/fd
swap                   4.4G    24K   4.4G     1%    /var/run
swap                   4.4G    72K   4.4G     1%    /tmp
/dev/dsk/c1t0d0s7       35G   3.5G    31G    10%    /export/home

繼續摸索中,同時渴望得到答案:em11:
《解決方案》

已經快崩潰了……請高人指點啊:em51:

[火星人 ] qmail的smtp auth的問題,極度鬱悶已經有561次圍觀

http://coctec.com/docs/service/show-post-36947.html