歡迎您光臨本站 註冊首頁

ubuntu gutsy sendmail smtp驗證配置

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

在配置sendmail 的smpt驗證時,碰到了不少麻煩事,最後總算搞定了。有時只是一些簡單的操作,卻是因為沒有文檔,導致配置工作的進展困難。這裡記錄下一些配置過程中忽略的小事情。

1.安裝。debian系統安裝軟體都非常方便。

sudo apt-get install sendmail

不記得這個命令是否安裝sendmail-bin,如果沒有的話繼續

sudo apt-get install sendmail-bin

2.安裝sasl2

sudo apt-get install sasl2-bin

3.配置smtp的驗證

配置主要集中在sendmail.mc文件。

a)將MTA-v4的監聽地址去掉,這樣就可以監聽所有地址。修改後如下:

dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnl
dnl DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission,Addr=::1')dnl
DAEMON_OPTIONS(`Family=inet, Name=MSP-v4, Port=submission')dnl

b)添加驗證參數如下:

TRUST_AUTH_MECH(`DIGEST-MD5 LOGIN PLAIN')
define(`confAUTH_MECHANISMS',`DIGEST-MD5 LOGIN PLAIN')

直接添加到上面MTA的配置底下即可。

c)修改訪問配置。使用了smtp驗證后,就可以忽略access的配置。所以要將/etc/mail/access裡面的配置內容清空。如果不清空,會出現不使用smpt驗證也可以發送郵件的情況。

所有修改完畢后使用sendmailconfig命令,一路選擇預設即可。最後這個命令會reload sendmail。

4.驗證安裝和配置

啟動sendmail后,telnet localhost 25,在出現的控制台,輸入命令ehlo localhost

查看輸出信息:

250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 LOGIN PLAIN
250-DELIVERBY
250 HELP

如果出現上面紅色的字,表明已經可以了。

5.驗證郵件發送。

配置好smtp驗證后,在本地域的郵件發送還是可以不通過smtp驗證直接發送。要驗證smtp是否配置成功,必須發送到域外的郵箱如gmail郵箱。

一些容易碰到的問題:

1)sendmail配置好后,從別的機器telnet 25埠,連接被拒絕。

原因:這是由於預設sendmail綁定到127.0.0.1的25埠,所以從別的機器telnet 192.168.0.230 25 並不能訪問25埠。

解決:搜索sendmail.mc文件,將其中的

DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp', Addr=127.0.0.1)dnl

修改為

DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp', Addr=0.0.0.0)dnl

或者 DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnl

2)看到250-AUTH DIGEST-MD5 LOGIN PLAIN的標誌,卻還是不能使用smtp驗證發送郵件

原因:可能未安裝sasl2

解決辦法:安裝sasl2

sudo apt-get install sasl2-bin

安裝完成後,在文件/etc/default/saslauthd文件中,找到START=no,修改為START=yes

修改完后/etc/init.d/saslauthd start

3)配置好后,可以使用smtp驗證發送郵件,不使用smtp驗證也能夠發送郵件

原因:發送和接收郵件在域內,如果發送的郵件地址不在域內,則可能是 /etc/mail/access文件未清空。

解決:將 /etc/mail/access文件清空。

要注意的一點:

修改任何配置,需要重新啟動sendmail,建議使用命令 sendmailconfig啟動。

[火星人 ] ubuntu gutsy sendmail smtp驗證配置已經有364次圍觀

http://coctec.com/docs/linux/show-post-180542.html