本帖最後由 IT_man 於 2016-4-15 18:36 編輯 # i6 K7 K. z2 Y1 ^, o# k
/ @+ X. l4 f( p' i
# E& d( Q/ k+ e; S [# cat /etc/redhat-release
8 ^" x& X* G5 D. c# p9 g: @CentOS release 6.5 (Final)
8 F O# @ ^; w U& k V5 A* {: C; d% ?5 [) N c, E% R4 @
/ _7 n9 ]) ~4 @1 ^0 I$ b查詢是否已安裝' p8 k+ O6 y9 Y8 ^! i
# rpm -qa | grep sendmail7 Y5 I% u8 s7 f) C$ E. L" b
# rpm -qa | grep m4" U! C2 l) S/ S9 A) D; ]$ i
+ g: c& ~+ N3 a3 R0 h4 B1 [
安裝7 z2 |( H* p& v
# yum install sendmail sendmail-cf m4
* R" ]- N9 [0 K" e+ g# B0 p& Y' j8 x( u. _2 y6 ^
設定主機名稱9 C E# y: i% w3 [0 n3 P7 ` G0 Y
#vi /etc/mail/local-host-names
; Q2 F( [/ A& M# T: a& W加入/ n* t; ? Y1 F R' J8 p
www.52av.tv
, q( D! \' D3 {5 s5 uwww.av4u.info* q! \' S/ n" L8 N
+ E) i* y& i4 W; A* y5 _9 v) H y
修改設定檔( ^3 \+ }0 [& h# m( e
先備份再修改) B6 \$ A3 r' z8 W
# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default
3 m: {( s# a" d# vi /etc/mail/sendmail.mc9 R: b, U& j/ C2 G9 {1 }0 J
將下行的 127.0.0.1 改成 0.0.0.06 Z" q( k' H5 z* N: ]
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl5 s+ e9 \/ p9 I& R! V- I) M/ b' Q
4 i/ z2 j5 s* n7 G備份設定檔+ c6 N* b7 Y1 y( E# a4 X( _
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default
$ i( t9 P ] b7 j9 o+ B* t2 b0 x3 y8 b0 p. F! z3 c5 d
轉換設定檔
- R" M, [) [3 p3 i6 c; S#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
7 f$ I+ C6 v( i5 Q7 y
& e, C" c! m- _4 C設定 Relay
4 g) Q$ v9 G- L) O: A- U2 y# vi /etc/mail/access. L9 S) p" W. D$ Y0 b5 h
加一行" q6 N' Y2 S& X2 ]% k! V. T
Connect:www.52av.tv RELAY1 @8 \ G2 G) L5 G* D4 l( n
$ t1 v4 O& c# N5 r P/ e, z
製作出 hash 格式的資料庫; l) D6 C; U$ C( c# a
# cd /etc/mail
1 i1 y' M5 A$ z/ o6 s# makemap hash access < access
* W" b( _- I; k8 o' L9 f4 @4 b _2 H3 _7 g. ?' n" w8 i7 q. f4 I
啟動服務
! @: N8 W- j& l4 a: Wservice sendmail start
1 c. n5 u0 \, Z
( }. X2 m8 B2 J1 d7 e& @% z設定開機就啟動
- Z$ @" I1 y: G* Y$ ~chkconfig sendmail on: r1 _2 V6 j* M1 X; o
' N+ L. f9 v% Q$ P4 esu 成其他使用者測試時: {+ e4 `% c. @3 @: T
出現錯誤訊息
4 _6 x6 A# H8 ?$ J/var/spool/mail/root: 拒絕不符權限的操作
. c; y# I5 p, E) }原因+ L4 e' v: V4 m/ B$ f7 L4 ]
要用 su - 使用者! Z0 b; p7 G8 V; q8 R. ?) l
不可用 su 使用者) u& y" g0 O5 ^/ i3 @/ R
0 c9 \4 x6 ?2 Z" q( m+ Q
使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)
, @/ S) l7 d5 J/ p* M' `telnet www.52av.tv 25
. g8 G9 { ^+ L1 P& P+ K正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗2 p& V4 R) d& K* |! W% n; @
本來以為是本機防火牆擋住了/ }# I& e9 k8 Y* x" e( @. g
關掉防火牆後仍無法連線. ?# c: s0 \0 E! L, I }
將下行的 IP 改成 主機 IP
- l1 A9 J1 @: w( U) dDAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl
2 k8 ?: c9 h6 `% E; ]1 _/ H9 M重新轉換設定檔
" c9 Y4 _* P) R5 L* B. p7 R! Y#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf4 t6 I; }4 M8 q$ e: `& b, H
重新啟動服務, \" G, e, i( C4 ~
service sendmail restart- Z* h1 W7 y( H) i% T4 Z' A! S7 O& q
% U# F* V! \. @5 b# `. }
telnet 測試成功
F; k0 U( \2 M; w0 i0 aHELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)1 n5 M# \; h$ T- n; Z$ ~$ f
MAIL FROM: [email protected] -寄件者電郵地址
6 \! D1 C X7 v9 I5 X( CRCPT TO: [email protected] -收件者電郵地址+ i" G% U* S) ^! O7 T4 `
DATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”
1 ]+ Q" k/ s( Z7 Q( d8 j& UQUIT -離開用 QUIT 結束* j: q# u% _; {! Z! p2 }2 }" {
$ s1 v' V$ b7 v/ s& e4 Hsendmail發郵件報錯的解决辦法
5 W L, G+ T: {/ ~
! Q& c9 G& R& rerror: Real domain name required for sender address。1 i) {8 l, G7 v4 S8 [# T
是hostname配置的問題,修改hostname即可。
# I& A7 H* b# ^6 n7 `5 h- 1、hostname av4u.info 【立即生效】# k) m: L p; \1 H% J' F) H1 C
- 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】9 |! X, `0 E- r
- 添加或修改:HOSTNAME=av4u.info
\6 n x3 z- h9 e - 3、vi /etc/hosts 【跟各個應用有關系,一定得改】( N5 n6 ]! b; a8 f
- 在127.0.0.1後面添加主機名av4u.info
複製代碼
) ]( ]; I$ U9 ?! S" xerror: Relaying denied. IP name lookup failed+ Y3 W4 l8 S! z' T4 W) @
解决:
6 s l; ?& q. g4 [. ~2 \6 v修改access文件,將本機ip加入後,問題解决!/ C. @' Z" K/ E* R1 H
具體方法:# X" @: R. Q6 e/ ^
- /etc/mail/access
5 T" K, |7 w1 m, w - 加入
: K5 G4 S5 n/ d9 b w1 k5 E# D - xxx.xxx.xxx.xxx RELAY
複製代碼 6 c* y: x! Q% [/ v: s9 j, u& K
P.S 在我的主機以mail 指令測試收發信件都ok
( l3 @+ P- _, y4 I6 Q# }4 j參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html2 P: K" A# i: m4 R
8 ~4 }1 W2 `) W# K$ Q! ]$ F9 f' H3 F
|
|