tid=24709& 本帖最後由 IT_man 於 2016-4-15 18:36 編輯 4 A% s& A3 w. \! e
( h% q! X# Q# [9 D+ c$ t% K$ s
5 C; M5 R3 C$ Z2 B7 P& z# cat /etc/redhat-release$ w/ q% L! i' x% \" `& O
CentOS release 6.5 (Final)2 y3 K& Q( b, |1 S
, x# a3 [ j1 v+ A4 i. W/ r$ l( T# i) X5 u& i& l$ K% Z
查詢是否已安裝 n% v1 c5 ?4 R" W1 _' [ {! ^
# rpm -qa | grep sendmail5 A# y' |9 b6 [9 s5 T
# rpm -qa | grep m4
* B/ ]) |& p1 w ?9 N+ L/ I6 e6 Q' @5 o+ m5 I: h) V6 n- I
安裝
0 I7 @0 J' z/ F5 z0 G2 i% c6 X# yum install sendmail sendmail-cf m4
' b y0 s+ E; i! X, ]1 ]8 Q3 S/ `. `/ {; K
設定主機名稱
# k e+ Y' p# Q0 ^#vi /etc/mail/local-host-names; I, l# x! w4 r* n2 K$ Z
加入' h: l- `- |; x4 C* a4 F) ]
www.52av.tv' q# u$ V8 U) N: k' _" G0 g
www.av4u.info; n) h" O; y$ b8 {* E# G" k; y
' l# j; a6 Y3 D
修改設定檔/ r3 y l% y" w
先備份再修改) J+ e/ ^0 I+ E' Z( u) a
# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default7 @# ]# K8 \; z0 P
# vi /etc/mail/sendmail.mc
& [; l6 @9 p9 z9 Z1 n$ i將下行的 127.0.0.1 改成 0.0.0.0
. S, w* K% n# h. Q) h2 m# y9 kDAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl$ y4 b5 I: l x% m+ ^6 |
8 x$ M; T* b( D) Z, t3 B( K
備份設定檔( v9 G7 P5 j: b1 b
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default
) x6 ]+ S$ j, k$ w0 E2 }0 l Q z* n9 Y, T" g# M
轉換設定檔+ @& }+ T: d2 }! x
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf- K; W. \( b4 ? T' u
7 u3 x5 T' y. t+ R" d0 W設定 Relay
' d) P, X2 ^) C: Z$ a2 k4 Q# vi /etc/mail/access
( k5 A8 J/ s9 d( |0 T加一行. `- J; b, Z, S9 n* w2 E
Connect:www.52av.tv RELAY8 L8 \4 }3 J4 Q* d, o
, v% L5 |4 a& M* |3 ~0 W1 c. A
製作出 hash 格式的資料庫
( U$ ~9 P: P& v* ^% y$ w6 o# cd /etc/mail& o1 ?* h* Y; L9 e- P
# makemap hash access < access
$ G7 O. }' ~! L4 d0 \
# O1 m$ L, g) N' U; B啟動服務
5 | Y% N9 B0 k2 X$ R, d' f; K- B0 qservice sendmail start+ B7 s7 v' c7 c+ W4 v: x
" @" H! e5 ?- T- D: P: k2 T% C
設定開機就啟動; ^9 P$ c6 g( E/ v" O
chkconfig sendmail on \6 n6 m6 r. f" C& ]0 E
, k' p. y( a. M7 n) Y9 q
su 成其他使用者測試時1 o2 e4 i9 L8 v' S* A
出現錯誤訊息
8 C; p% z' B4 P' _# B/var/spool/mail/root: 拒絕不符權限的操作
, n+ V) Y/ t: W8 m2 F7 V原因0 ?% q& N- W8 H6 K) n$ r
要用 su - 使用者
6 W& z- C: z1 Z1 e9 B不可用 su 使用者
: m- |. A# A8 G0 z. u4 y6 l
$ `9 U! m9 G: u2 G+ ~! X7 R使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)
/ D; w* k% l: z6 w( V2 a1 w6 Ztelnet www.52av.tv 25. _+ K; L$ V; Y% D5 M
正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗9 \0 F% V" L2 ~! f
本來以為是本機防火牆擋住了
. s& u1 G" C2 k" ~關掉防火牆後仍無法連線
; @$ Q: }. ~, X3 c/ j' P+ [將下行的 IP 改成 主機 IP
, c0 j+ x8 p% yDAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl
8 K* N* q4 x! e6 E重新轉換設定檔
" R6 D9 X" A9 O% T$ Q#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf! V9 Y7 t( J( U
重新啟動服務4 B$ v! h% R5 U/ e5 C1 S8 T
service sendmail restart
/ R) D2 _0 z& _! j) L d$ ?' M- G
/ h$ T Z' p# p4 {telnet 測試成功2 W5 l( X: [, M# c& G E/ p
HELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)1 E5 a. P& F4 y! Z8 [# i4 y. K$ T6 r
MAIL FROM: email@server.com -寄件者電郵地址4 j) y, @6 b& G& k! [8 g* X
RCPT TO: email@smtpserver.com -收件者電郵地址
, @4 ? T& i" m/ w7 X) ]5 f7 ~DATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”6 B; q7 b- n5 {, ^, I
QUIT -離開用 QUIT 結束
, H" F5 J2 b6 A* j- j3 ]4 D9 x9 q; i4 @* D' D* G
sendmail發郵件報錯的解决辦法
! a6 J: T( \8 o! c
# w1 s9 c6 i2 L/ `2 nerror: Real domain name required for sender address。! |3 J0 ?7 |. l+ b
是hostname配置的問題,修改hostname即可。6 ~ [! p3 r9 K2 U9 e* A& ^7 u k
- 1、hostname av4u.info 【立即生效】# w* M3 o" _' ^! J! N/ u' E
- 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】
" W! V7 Q/ h+ v ]; x- D - 添加或修改:HOSTNAME=av4u.info6 u- o* M. m; [( r
- 3、vi /etc/hosts 【跟各個應用有關系,一定得改】9 R- ~% _+ O, J: c1 C) N. p5 a6 F
- 在127.0.0.1後面添加主機名av4u.info
複製代碼
4 {5 F' S9 @' ferror: Relaying denied. IP name lookup failed# P' a3 P( B/ O, a5 x+ W |) H1 n E
解决:, H0 F, q8 Y% d: y
修改access文件,將本機ip加入後,問題解决!
- K- r5 k, R4 B- P: g具體方法:; H2 M3 _; {& Y) w3 N. W# f
- /etc/mail/access' k( [* g+ Q8 ~1 j
- 加入5 ^; [, ^) s0 i$ S! v4 s! }
- xxx.xxx.xxx.xxx RELAY
複製代碼
* k3 V# ~7 O) m* cP.S 在我的主機以mail 指令測試收發信件都ok" @0 A: h; K/ J5 ?9 Z
參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html
6 X, i6 x+ G1 G) e- z0 w& w, W) D7 X) i
2 l4 N: ]" `3 j3 k& d: o
|