本帖最後由 IT_man 於 2016-4-15 18:36 編輯
- v& R3 g" S$ ^, e1 Q" A. E: W: R: [% U% |
% E6 Q# A' i+ x) L' w# w. y
# cat /etc/redhat-release
4 O& B6 I- a5 WCentOS release 6.5 (Final)
?. s( y" _( }4 Z; i# c. e9 Y- x8 N0 V
" X% g% _2 D; W4 u) r
查詢是否已安裝
# t. B$ n% f- E* v# rpm -qa | grep sendmail
$ G0 B' m; Z. z6 Y+ L# rpm -qa | grep m4
% ?" q2 _3 g' m& ?" @ ]4 `0 _
& a) E( F# Y6 u* n安裝; f/ ~+ k+ j$ ?4 L3 Z, c2 I& P( ?
# yum install sendmail sendmail-cf m4) a8 X! u" W' U. g3 p( R$ w/ ^ A
+ w+ R& i8 h: h: { {
設定主機名稱
/ F) _; O% g; P( F1 e#vi /etc/mail/local-host-names
6 c H0 y* J3 P3 ]* A) Q2 M0 }" ]加入# E0 k% I, n* j) n( h7 O
www.52av.tv, E! T! h; |. X( R: {
www.av4u.info
% m( s4 q! E3 U2 ?- N
; n8 r9 \4 c: G- ~' t3 }+ W) B修改設定檔
$ I \1 l3 U, F# C先備份再修改- L8 l. q) ^+ Y( \
# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default
( ~4 H1 N$ q, D- @8 @! Q5 g. }# vi /etc/mail/sendmail.mc
+ v1 a' M4 F2 o/ V將下行的 127.0.0.1 改成 0.0.0.0. G- N; a* G$ u! ]( K2 A4 e
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
! I9 q7 j2 F5 B. K" @6 T( l: u2 J* E3 C2 `4 s
備份設定檔) s ]9 z/ u: w( L% m0 |
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default- L% g) E: R( j3 U9 {4 y; L
* g& c/ z: B, L+ ^
轉換設定檔' E, w5 F* n1 c
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf0 X. c; Q: x( ^* J1 E
" r9 C% D7 {. K# @. N* f# b9 g設定 Relay
" @/ t! \- ?1 V# vi /etc/mail/access% ^" {$ k! ]6 y5 b
加一行
% ?! E, A# ]' f- rConnect:www.52av.tv RELAY) k" `! E; f9 j+ g' Q4 S
0 h& R$ m, ~ @4 l
製作出 hash 格式的資料庫/ ]) u5 x0 s' {$ f
# cd /etc/mail( i2 D! u0 U% Z$ i. n. m
# makemap hash access < access! Q, H) N8 `: ]" p) P1 ]1 ?3 j
: A+ p" F7 W9 l啟動服務
+ o* E' J" B, d3 d) q7 Z8 iservice sendmail start" |$ g5 K2 o! y) }6 ~3 C) H
* u. J! x8 @" ]3 F設定開機就啟動
. c! a( l& Y, Q4 r6 Z1 cchkconfig sendmail on
( e% Y. p0 X% K& s9 `8 Y$ q
+ W+ o2 k: b, e* ?3 Tsu 成其他使用者測試時
" J7 ?9 C7 L. ^7 r4 \出現錯誤訊息$ n- L" b7 c# J/ V# D
/var/spool/mail/root: 拒絕不符權限的操作9 }( \5 j- y# Q) f
原因
W$ P0 d3 L3 W4 s6 k) `" b要用 su - 使用者
& T, V1 |" g! N$ k: k9 B" Q/ w9 x. Z不可用 su 使用者
! ^ G- U- W9 r+ G
4 n8 o& q! V% W2 K使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)* c2 k5 J* x$ Q! d
telnet www.52av.tv 25
( N- | d# ~) E/ g; ^" e正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗
0 I7 `; O( C5 A本來以為是本機防火牆擋住了- u+ E8 |1 _% Q- q0 }$ m
關掉防火牆後仍無法連線
2 F0 p1 T. A6 w! l' x) U* z將下行的 IP 改成 主機 IP
t+ P$ a6 N7 ~ [9 E8 c4 PDAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl
6 E4 s- |( I e& E2 j重新轉換設定檔/ k9 y* f1 h8 a" P) K$ s5 v* c
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf# _' u `2 |1 c" p
重新啟動服務
6 t/ S; E. P0 f" X, u: d- ^6 G* Eservice sendmail restart& a; b l/ h6 b `& i
6 M. o! O/ L0 Q' P/ J/ ?telnet 測試成功
2 D6 q2 n; Q& ?8 ]9 Y7 Y4 @HELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)
, w; T: g4 ]! q9 LMAIL FROM: [email protected] -寄件者電郵地址
$ k6 [4 `& b& zRCPT TO: [email protected] -收件者電郵地址
+ ]+ _1 m" E9 u0 s( g) A8 [+ yDATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”
9 D% k( A' S8 @/ j& X# e/ LQUIT -離開用 QUIT 結束
, a' s. y! L& e. e- H
" _+ i7 }( k+ n3 C4 i, n4 \& {sendmail發郵件報錯的解决辦法- g. E d2 o' t1 u8 |* V
' L, `6 y1 N/ U9 Q; d. ~( l4 r
error: Real domain name required for sender address。6 B: h& d3 l5 Y" x! [. f) f
是hostname配置的問題,修改hostname即可。$ [: z( @2 O6 O. ~" Q7 Y- X
- 1、hostname av4u.info 【立即生效】
3 N0 |( Q; f A7 y/ u. f/ X, P8 X - 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】$ [ r/ q/ I5 {
- 添加或修改:HOSTNAME=av4u.info9 H' h& y$ `2 k, g
- 3、vi /etc/hosts 【跟各個應用有關系,一定得改】" f4 g. g F) a; L8 }3 Z
- 在127.0.0.1後面添加主機名av4u.info
複製代碼
5 t4 Y' k& j) X$ {- r( H+ lerror: Relaying denied. IP name lookup failed# M& f" G P9 U* k4 D; Y
解决:
' s6 ?( w( o: I) [修改access文件,將本機ip加入後,問題解决!
U- m+ g2 s" Y' y9 w具體方法:
) |8 u) Q: v ?8 c/ u5 y% Y4 w" Q- /etc/mail/access
8 ^& J6 K7 x( ~7 D1 r - 加入; V2 M' n- a3 B$ h$ b
- xxx.xxx.xxx.xxx RELAY
複製代碼 $ B+ {) |7 |, J3 H! x' J: N. Q, Z
P.S 在我的主機以mail 指令測試收發信件都ok. H! u- s! _6 h4 H9 G+ w
參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html
" G0 E" P# v8 v9 S8 [& T2 d5 `+ `
$ D2 w5 ]/ g% t4 w9 q Y- Q9 g; j& w" e
|
|