tid=24709& 本帖最後由 IT_man 於 2016-4-15 18:36 編輯
) |' O3 j9 H! g" Z# c* d$ s1 T ^
* y$ ?* b" f- j" E; Y6 o. N+ H8 Q: D8 ]4 S8 f$ p0 _$ Y
# cat /etc/redhat-release8 T/ `# v3 ]9 u" H% i# E/ ?
CentOS release 6.5 (Final), H8 k- U+ P% l
- `: I7 l" b0 O# l. o1 l* [, p" M }- z# }2 p6 _% k
查詢是否已安裝/ L. F7 v3 ^0 Y$ c( E, N( n8 l
# rpm -qa | grep sendmail: z/ H1 |5 |+ i! Y5 R" i3 j
# rpm -qa | grep m45 p" B% o* F0 p# P! s& N
; B$ {- g( P) k7 @8 ` H& L: [
安裝8 B5 ^+ s, _( d( g1 f
# yum install sendmail sendmail-cf m4+ U% t' X3 y! l$ g+ P
+ f/ f) ^! s' ]: ~$ P% d a5 _1 j設定主機名稱- B( z2 o2 J" v! }
#vi /etc/mail/local-host-names* f( {: e4 T; g& _5 g' r& o# _+ Q# Q! Y
加入# O5 k' q0 m7 [0 u4 f
www.52av.tv
, d1 x1 v9 g5 h0 n0 }7 gwww.av4u.info& I0 _3 z1 |$ x2 m0 L4 n @
: d% `3 g0 {& k1 ~; `
修改設定檔
9 |' X/ `6 i" v先備份再修改
9 R0 ^# w; {6 S) x4 e# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default' b7 K* }+ M; ^
# vi /etc/mail/sendmail.mc( N; T9 o* l6 X/ S8 m
將下行的 127.0.0.1 改成 0.0.0.0% \+ i6 y: e1 N7 I' M: X5 H
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl# K1 t% t4 i- r4 S# Z6 t' t0 @- C
9 X6 B, G8 ^5 _0 o2 Y) |2 }( @* u備份設定檔
0 u- { V" ]7 D; T' d7 r& K#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default2 y+ M( P }9 X. _- e: ]; i
- z) q) `7 C# i6 j/ X6 l9 W% ^
轉換設定檔2 p& U0 X3 w" A7 W
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
; i8 L+ z6 i0 ^7 j9 u
" V& I) N P. z% S7 }設定 Relay0 y* E: x) `$ O
# vi /etc/mail/access
$ i* Q J, s8 }( U9 `4 m0 K加一行
4 u$ {' W2 Y& N3 F g, L3 l+ XConnect:www.52av.tv RELAY% {" j7 Y. Y0 d
2 S" T# V+ p. G- K9 a1 R# L% b- @
製作出 hash 格式的資料庫
% O. M% j- d: h k) [# cd /etc/mail. t/ c2 ?4 y+ J; f6 ]6 u8 Z2 B- @
# makemap hash access < access
/ q1 P; N7 L+ v# Y. M! w1 [1 u. H% W! l( I
啟動服務
! d" d& k4 w* o" k- g6 bservice sendmail start+ K( h- r& o% \
1 Y5 y+ N n) d; W, q4 U: p( q, s
設定開機就啟動
! u9 L( V$ N% l/ O( Q9 ^( Achkconfig sendmail on
8 D9 w- _* l" d) f& |
. _. p# Z7 Y) S* M" rsu 成其他使用者測試時/ p& n6 f6 i; f9 z) N5 q
出現錯誤訊息5 t( ^- a) ?/ w; u$ D% E! f
/var/spool/mail/root: 拒絕不符權限的操作/ }5 G, h% k! W9 O
原因# W" p6 R9 k, U
要用 su - 使用者; ~4 H( S c1 h
不可用 su 使用者
: D' W* C# u i" k4 i
6 n; k1 I0 y) w1 i2 n使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)" L( k7 H3 c/ X& \/ c8 R- h: S
telnet www.52av.tv 25
" [6 M; F$ x, [7 ~5 E9 ]7 \. N正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗
9 {% [- C1 r( {, x本來以為是本機防火牆擋住了0 L* z4 B Q, a+ D9 W U
關掉防火牆後仍無法連線
- S, u# I1 L7 _' B將下行的 IP 改成 主機 IP" @, C- ?: q0 o5 m) B, q# R
DAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl+ |7 s1 b. G& Q7 l7 v9 i. R+ o
重新轉換設定檔
& Z% q: D1 H: k7 e R#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
3 A1 p5 h# F1 Z& U2 q重新啟動服務
- T8 o0 k/ E! z5 ~; n3 T) a+ t2 eservice sendmail restart2 x2 `2 O6 n. F5 L0 C1 _
; o- G5 }. i) ^2 `
telnet 測試成功
+ O# L6 X% Q, N6 t- wHELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)( B' ?: v5 C0 x, }
MAIL FROM: email@server.com -寄件者電郵地址
; h: Y' v* z$ {' VRCPT TO: email@smtpserver.com -收件者電郵地址, r+ N* O7 \! V
DATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”- m$ c. U7 H4 r3 A3 M: L
QUIT -離開用 QUIT 結束
" E1 W( @) U( y, a( e9 |1 \5 ]2 w
% L* t2 D6 Z' o4 r- ssendmail發郵件報錯的解决辦法
) j' Q4 v# L( X b) L0 D. s" u7 K+ A/ d$ h
error: Real domain name required for sender address。$ B5 S5 b, U7 D
是hostname配置的問題,修改hostname即可。7 ~ Z4 b$ K6 h+ J: K: B$ ~
- 1、hostname av4u.info 【立即生效】0 P6 q3 n) f4 u
- 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】
& B, \+ Q' h0 L0 A) i% N - 添加或修改:HOSTNAME=av4u.info
9 x7 n/ ]9 ]5 ?. Q6 R - 3、vi /etc/hosts 【跟各個應用有關系,一定得改】/ `/ R T, U) T
- 在127.0.0.1後面添加主機名av4u.info
複製代碼 : O) Z' }3 O( v( m. r5 i% h2 R
error: Relaying denied. IP name lookup failed
' |& H8 V: F x! E" H; ~7 ~解决:3 l& \; g r& ~! c5 G
修改access文件,將本機ip加入後,問題解决!
5 Z- ?; i$ t" S/ |具體方法: s6 {- s5 s; }' M6 W3 ^! c/ A
- /etc/mail/access
9 w* c- @* D. O1 f# g - 加入
: N7 O! ~" f0 r) o z/ k - xxx.xxx.xxx.xxx RELAY
複製代碼
; F U% d v+ n% s3 y& DP.S 在我的主機以mail 指令測試收發信件都ok3 s% o3 S/ A/ } M0 r
參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html
" H- D+ J5 V( e' n% ^0 z$ m. j+ y
" V* G6 }+ _3 c& ^2 U4 \% _4 G. i# h( z0 q( a
|