tid=24709& 本帖最後由 IT_man 於 2016-4-15 18:36 編輯
( J3 e, t$ O2 I2 \4 K1 T
" U; G( F+ [7 f) i8 S
. P* `& d* k) s0 l& U/ J# cat /etc/redhat-release I/ _- g& Q. j. X
CentOS release 6.5 (Final)6 ^. W& h4 Q' G$ `& c
: {9 l3 u2 H7 a9 e1 u( ^) H
; l% a$ ]; J }0 ~
查詢是否已安裝
; r: v/ Y( z; Q j% @2 ?9 `6 m# rpm -qa | grep sendmail) [2 G" Z+ z) g
# rpm -qa | grep m4
6 X' j; n& w2 H$ j8 F' A3 x
8 h/ u j) ^% f% p安裝$ V. c7 G5 g& C* Z
# yum install sendmail sendmail-cf m4* ]; G+ {! L+ F7 \' X+ K2 |
4 h: n& w: t7 `. c8 {) G$ T7 a設定主機名稱' {% `. e0 Z$ y, c B5 L
#vi /etc/mail/local-host-names$ \3 ]1 g* q% t5 u. F, P
加入
+ k( B A/ b: vwww.52av.tv* Q" | R, f7 Y
www.av4u.info
: }4 B0 R, j6 ] B4 S4 ^2 q9 |! C' b+ |( s5 n% r0 b. e& K6 u
修改設定檔) I" Y' @3 z1 ^
先備份再修改4 y* ?3 d; O% j9 }- S* k
# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default
^% O6 U, B7 p- [9 A9 X# vi /etc/mail/sendmail.mc) S+ w6 A, }5 J+ ^% d5 S% V
將下行的 127.0.0.1 改成 0.0.0.0# R" F5 S4 R- h& Q; Y
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
: R* Z- d7 w1 t5 l
" Z7 l4 W, b0 I/ ?) e8 z# d備份設定檔; h" S+ U; T! k3 e# L L
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default$ B \( w% M. }: G
4 V# l: ~3 q+ ]6 n7 ^
轉換設定檔& ^+ }% m' g3 S
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf C) X; c8 f$ w4 \# a. Q, r7 [
& M& P' h; s% V4 ^設定 Relay+ Q% l* Z) p4 |; s r6 e
# vi /etc/mail/access
2 m0 E& \; c* n# D加一行" D' b0 J4 W$ H% b; w+ j
Connect:www.52av.tv RELAY
8 ^! p" z! Q8 U" f, |
3 j8 D$ v& d5 ~) m9 s% p/ ~製作出 hash 格式的資料庫 |- W; x, o( E, @
# cd /etc/mail: c( [8 S* d4 Z+ F5 o
# makemap hash access < access
1 F- o E" Y5 P$ s: V! @" |% R$ f, X" Z2 V& }$ s5 W
啟動服務
* D. ^+ j. c5 \9 g2 Rservice sendmail start; d B+ X* X4 ^" ?$ t
1 C2 f1 s4 k3 ?5 J
設定開機就啟動0 P$ a# L/ p+ t2 z" P2 U
chkconfig sendmail on7 i% R% k, R, c0 O8 ^
5 @, p6 Q- j7 M* n# w/ x) Zsu 成其他使用者測試時 m" M; c/ R1 b9 }
出現錯誤訊息
; C2 H$ g, h; ]( g4 ^8 D* u# L; ]# B& ~( f/var/spool/mail/root: 拒絕不符權限的操作0 }: }3 k5 r1 j& _
原因& m5 A( X6 \1 l0 K' T
要用 su - 使用者
/ W% _& y2 p( M不可用 su 使用者/ s! o9 [& {5 U; J7 f
" w- A1 A6 j* L
使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)1 U3 T, u0 s; ^( B8 p2 X
telnet www.52av.tv 25
* a& o9 M" N7 ~% Z9 a) A正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗' B! A k0 V( B! B& S- f) o7 X
本來以為是本機防火牆擋住了
7 O: _+ Y: j# L, F6 t4 E關掉防火牆後仍無法連線
( X' {* D, h8 }, ]- O% I! W將下行的 IP 改成 主機 IP, w+ v" N/ L! d) {
DAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl+ g1 v8 J0 J! O; d$ M" x2 f/ y* s4 S# A
重新轉換設定檔
. U3 D- E% L& M( x& Z4 L0 o#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf6 T5 i& \: \* D, ^
重新啟動服務& @: g3 X( |9 B7 s0 F$ J
service sendmail restart
; b5 c+ D% N0 Q+ k' r5 u# K4 q( I/ u# |( U7 Z: X4 `% v
telnet 測試成功2 f$ K' H( z! h
HELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)5 v: H" T3 s) a
MAIL FROM: email@server.com -寄件者電郵地址
1 M/ T: u( g! a) K. g6 [RCPT TO: email@smtpserver.com -收件者電郵地址
# N7 S5 Z! ?+ D& sDATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”
t. J) Z4 f7 @/ v! k4 \/ HQUIT -離開用 QUIT 結束+ }8 C9 T, Z0 n- f! s) B( a
/ {: x( ^8 n# Z4 Usendmail發郵件報錯的解决辦法
: d0 d4 h& c4 [% R
, S3 x& s& Z& |( C# cerror: Real domain name required for sender address。
4 R0 j! ]$ q3 x; a是hostname配置的問題,修改hostname即可。. S( k3 E, Z( a, A; ]9 h) q7 _
- 1、hostname av4u.info 【立即生效】
3 V/ M$ a; Y, u2 H7 ~' E3 j$ q - 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】- Q8 \3 T" m9 N) f& i
- 添加或修改:HOSTNAME=av4u.info* Q* F; i- ~) g+ }6 }) d9 x
- 3、vi /etc/hosts 【跟各個應用有關系,一定得改】
6 Y) b8 v: m$ s6 C - 在127.0.0.1後面添加主機名av4u.info
複製代碼
' i5 K% Z' H' V1 O- D9 d3 b5 oerror: Relaying denied. IP name lookup failed
9 W" j8 t; e4 v解决:
# G. Y) |- s5 e$ k/ H修改access文件,將本機ip加入後,問題解决!. D( r- Y/ F' P; t+ `
具體方法:6 C3 F$ D" H: W2 q4 ?
- /etc/mail/access
$ \9 @+ G4 A; G" t# A - 加入* M2 l @3 T# R+ D* }
- xxx.xxx.xxx.xxx RELAY
複製代碼
3 F" \+ R. t7 {. ~P.S 在我的主機以mail 指令測試收發信件都ok, | r Z4 q. e# {5 q& I
參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html
Y8 R5 ?3 y; q3 K# _
7 b3 T" j" Z. V: r$ {
# x; E: g) a% j3 g" A! ~. y! E |