tid=24709& 本帖最後由 IT_man 於 2016-4-15 18:36 編輯
! y8 Z& p/ j3 W, L$ n9 x8 u; J# @- {5 M6 p6 j! q9 s1 ^% Q8 h
5 y9 _- E& g' H3 ^4 i. T# cat /etc/redhat-release
* ^5 T* J C5 V9 s! ICentOS release 6.5 (Final)
& k7 E/ o, c) t8 v% l9 g
9 N3 ?, X; ^9 u# o5 c- O% Z4 [0 v1 l: j% B% \ `; S
查詢是否已安裝- e3 C; j% e2 w: V; |0 I* P- }
# rpm -qa | grep sendmail5 l& x- }; t& g/ e4 s2 B
# rpm -qa | grep m4: j% M; _1 F# `8 q
- k4 e D" W, x
安裝
5 e! h# L7 a, Q/ V3 U# yum install sendmail sendmail-cf m4
& |0 q% D& t2 B- o. v8 {, |$ Y- H0 r' W+ B0 W8 i7 P
設定主機名稱. C4 G0 J( K% m' C+ T$ e/ `: p5 T
#vi /etc/mail/local-host-names4 | ?: H4 R0 X3 j3 g: u/ P8 n
加入) L9 T/ [. @" X" b0 Q, D' o
www.52av.tv
6 y' W: I1 q) L) rwww.av4u.info. s4 V' E. m N* n8 ~
, j) R4 e6 E0 }* ~7 J4 }8 U% H% N2 ?修改設定檔
* f# w1 r, Y! i/ v4 w1 Q2 D# h" S( W先備份再修改" B! R9 v9 w z# B
# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default
0 R7 ~3 G9 q$ u" t% ~: @7 \% O+ o# vi /etc/mail/sendmail.mc+ J% @+ d5 a: P1 s, b
將下行的 127.0.0.1 改成 0.0.0.05 V$ v- j2 ?/ a$ E% S4 R1 g" j* ^
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
0 u0 T$ Z8 N Y ?$ I9 l; Z1 Z( U5 F* U9 v# y! a
備份設定檔: `2 S4 |8 V2 d, t: ^& D$ h4 O
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default, U2 N6 j/ o; W: s! R
. T- g) d4 o5 Y/ ^- D
轉換設定檔6 m* O; c- D; h
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
: b: ]8 k0 N7 }$ ?, ]# K
' C. }/ \4 C1 l( k6 ] d5 Z' S* b: y設定 Relay
. g3 ?) a" |' d5 D6 R# vi /etc/mail/access/ g% e" g" J$ B$ ?2 d
加一行
k' |, x" b d4 L, SConnect:www.52av.tv RELAY2 f0 B3 F) I7 h* y: j
0 d9 {1 C8 m) b; E
製作出 hash 格式的資料庫/ @) e2 b7 N& n, N/ K
# cd /etc/mail( K" | h( G6 k W5 K8 @/ c
# makemap hash access < access
3 r& @& @' ~ {4 l
. p0 b* E) m3 z0 h* J( k2 E5 C啟動服務
/ F2 L5 h, C7 k4 Z* d7 rservice sendmail start
4 D% n" u& M' ~1 R0 ]% |5 z8 W) y
設定開機就啟動
5 \2 `: B* [4 w! {chkconfig sendmail on
9 P x }3 Q* f' m9 g2 W, F6 e) j7 i. M
su 成其他使用者測試時/ J% u2 Q$ V$ T
出現錯誤訊息1 I/ F3 U7 I$ G4 V3 \3 h2 t `& x
/var/spool/mail/root: 拒絕不符權限的操作9 v2 N- X( E" V, B
原因
( a2 J6 t; r; _; r2 a: j要用 su - 使用者
- @+ |6 ~- w S% o8 T$ T4 g1 E不可用 su 使用者
% J$ b# _6 u1 D4 {8 O
% h. K9 I( i" l, u1 \使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)0 I& E, X" m8 }5 N
telnet www.52av.tv 25. u5 Y) ]' l, o8 M" t0 q
正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗
! ?/ l |) ]% r$ v本來以為是本機防火牆擋住了) J" u M. h. X6 l9 [+ e
關掉防火牆後仍無法連線
3 S8 E8 A% L6 f將下行的 IP 改成 主機 IP3 s$ q: {6 a9 n( n
DAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl" ?0 a/ D( v; w
重新轉換設定檔
. x! K. K! g4 K9 v) y0 C#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf" D- K/ [) H- D! i% x$ O! r6 Y4 B
重新啟動服務
) t0 D5 C& r5 H+ uservice sendmail restart% P, K2 g! P0 ^% G6 [
' E# g. P7 W( `3 R% ^& H4 I# Otelnet 測試成功 O( C* Z8 l8 ~) ~& P
HELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)$ W# {, Z! t' K1 M+ C9 F
MAIL FROM: email@server.com -寄件者電郵地址% h. b$ n1 U: a! s! w
RCPT TO: email@smtpserver.com -收件者電郵地址
! ^; V! _, |! c5 F/ O, fDATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”
5 w* H+ Y0 t* m! hQUIT -離開用 QUIT 結束
* q+ w( h( C) X8 j1 q7 L0 H# |) e5 m( M
sendmail發郵件報錯的解决辦法
1 u" a1 c- S) C* `! j5 @3 e' }$ L) R8 e3 l6 j" q0 L
error: Real domain name required for sender address。( i, o1 s: j7 H3 h$ g
是hostname配置的問題,修改hostname即可。8 ^% i9 f1 ^, Z% B" T" X( |. m
- 1、hostname av4u.info 【立即生效】
$ Z* Z W! k! b. d - 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】) j0 y# q- g8 x! e! k3 }) p) @
- 添加或修改:HOSTNAME=av4u.info9 {! ^( Y$ a# E4 G0 C) y/ j
- 3、vi /etc/hosts 【跟各個應用有關系,一定得改】
& ]( m5 h+ j+ V2 X- |) v1 g. { - 在127.0.0.1後面添加主機名av4u.info
複製代碼 $ E+ k( }7 ]% }6 \1 e W0 w, s
error: Relaying denied. IP name lookup failed
9 }/ w/ {% P2 m9 N8 m: a$ B解决:1 s, M' `! k) Z. k+ d" T5 F. R7 q2 M
修改access文件,將本機ip加入後,問題解决!: f# o7 h. [1 `& X$ \! \+ h% C
具體方法:
1 T, n0 d; l4 w5 ]- /etc/mail/access
% W0 s" d/ u) R* k! m - 加入# w# l& ^/ }& x$ e/ I' u9 w3 b4 Y7 f
- xxx.xxx.xxx.xxx RELAY
複製代碼
) R9 l) v6 v; {' O5 rP.S 在我的主機以mail 指令測試收發信件都ok/ w" ~# b1 X& F! @; k, C
參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html. |0 V' u; M/ a& W; i, n0 d
$ F3 Z7 B- N; a( }
* Y0 U* X0 K; ^- ^3 H8 i |