tid=24709& 本帖最後由 IT_man 於 2016-4-15 18:36 編輯 0 B& w1 f( e& c4 o3 r& o1 R
# | P8 [3 Y( S4 t& k. J; G& h" J2 F( y; C* n; v
# cat /etc/redhat-release8 K! j' W; H: i5 F5 V% M% o- V
CentOS release 6.5 (Final)
6 `& D. H4 s( V4 {' ~ r+ v' O" S; f; V/ q0 l
; q- Z2 E3 u! ~8 A查詢是否已安裝; d& C# @7 W; s1 t
# rpm -qa | grep sendmail# B6 H( @7 K7 b: F4 }( h, [
# rpm -qa | grep m47 G1 m9 o6 w; T& m# J: b0 s. M
: `% e, A3 S4 b; L) a' S* q) k
安裝
9 O. }/ A% M* F; @7 v$ ?1 a# yum install sendmail sendmail-cf m4& P3 L; O; w$ p1 a1 m. P2 `4 e9 Z
6 V4 a# R1 `9 M7 k" t
設定主機名稱
6 r5 t3 F7 ~' Q" l/ M+ i ]#vi /etc/mail/local-host-names
( K* @$ ~8 Y" S4 \加入
5 q# E4 t. Y8 F9 b$ _2 |www.52av.tv$ x. D! N0 X; [" s2 ?3 E
www.av4u.info
6 D- p5 K1 r& Q# D- G
& Z, J( }6 t: J. z) d0 ?3 m修改設定檔+ D3 M! _; u2 [( a3 X" A8 E
先備份再修改
+ r; r2 ^" W, O8 J- q: b# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.default
+ m9 D* q/ E7 f; h. V( i# vi /etc/mail/sendmail.mc( P2 ?8 q; B o/ {7 P
將下行的 127.0.0.1 改成 0.0.0.01 }4 I8 N e! ^
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl$ |! W s! {' I
o2 u' w! w4 W8 S& t0 V備份設定檔; O8 C$ W2 T1 o% O- D6 }" {: ~
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.default- Y4 M+ g3 m( `% g1 a5 \8 U
4 C$ ^! ~+ S( y: R" t( O9 B轉換設定檔+ V1 ~, r' P$ J9 O
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf1 Z" f, P. r5 ]/ I/ G2 d' p4 e
M2 t& o* [) k# v% {
設定 Relay
2 Y# U, s) Z" L0 a: e( M5 z# vi /etc/mail/access+ o8 t- Q! T& M; C! j: y
加一行. p+ c, `& q; E$ q$ }
Connect:www.52av.tv RELAY- |0 Q! o' h/ Q8 C, N
: V7 ?- ^0 I b0 z; I! `6 R製作出 hash 格式的資料庫: \ Z M4 d; `9 q, r: v2 @$ D
# cd /etc/mail
O0 B- p( P, X4 D# makemap hash access < access, m) r7 G0 ]& q# M4 ]
; @! [7 y6 T6 R啟動服務
- z. P& t1 a% yservice sendmail start
2 {) _6 v F0 q' j! s' Y$ W) S6 w1 E! K" i, o; \) g8 L$ _6 V7 ]( u5 `
設定開機就啟動% p( ~: C4 w! Q3 ?% A4 m
chkconfig sendmail on" q- r( A" s# r( M( E' \
- \" M% U7 A- |' E. G
su 成其他使用者測試時
% _1 G# g- g% C( ]6 a( y: N出現錯誤訊息# ~! Z, M9 d1 f$ K$ x
/var/spool/mail/root: 拒絕不符權限的操作( s) `/ y& P r$ C) ^
原因! N* j! ?; N: b0 c+ A9 {
要用 su - 使用者
1 T2 Z4 W1 s7 @- N不可用 su 使用者1 f/ b5 q5 z+ {; O9 e
/ ]. I& e# _( c2 n4 A4 P- Z, P5 a使用 telnet 測試出現錯誤訊息(假如無telnet client,則可以 yum install telnet 在CentOS下安裝telnet client)
% k& z* D* R" a7 m1 B* ?telnet www.52av.tv 25
' g& g8 |7 L9 U) |正連線到 www.52av.tv ....無法開啟連接到主機的連線: 連線失敗
# P( i) |% A8 L# M% U& q本來以為是本機防火牆擋住了
! q" [% B- `7 `: W7 `. i7 L關掉防火牆後仍無法連線
( D0 y ]# ^& g7 X; h7 k7 A將下行的 IP 改成 主機 IP! T. S6 r6 [" R9 ]( Q
DAEMON_OPTIONS(`Port=smtp,Addr=XXX.XXX.XXX.XXX, Name=MTA')dnl
0 y: L; a& |: Z; U5 W& R重新轉換設定檔
" Z# t; L/ m' A' {. x* m& P! a) }#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf0 ?# H0 O5 h6 z4 R% E( g0 S
重新啟動服務3 O" W' v$ B9 q+ ? a
service sendmail restart6 T2 r6 |3 e7 N1 H
! _) E W, z( @, ctelnet 測試成功
; v; n4 f; Y. c/ t, xHELO yourname -通知 SMTP Server 你是誰(在linux mail server上有帳號)
8 E. W+ t! x/ Y8 S* }7 ~- x2 P y5 jMAIL FROM: email@server.com -寄件者電郵地址) W1 T1 W) J6 V, |" B5 j
RCPT TO: email@smtpserver.com -收件者電郵地址: y. k& B3 A( G
DATA -以上步驟通過後,可以用 DATA 開頭並輸入信件內容,結束時用 “.”% H8 X6 n6 j. y5 R; H" n
QUIT -離開用 QUIT 結束
+ N1 Q7 y+ m' T: a7 v' b' x$ ]( o' j Q. e; e9 ~
sendmail發郵件報錯的解决辦法, H9 K( H$ \9 s6 D) T
7 q( M* j H3 W9 K* {) merror: Real domain name required for sender address。
1 f1 O0 d, b3 J, J) R% P是hostname配置的問題,修改hostname即可。% F% f- W/ s& O- E9 x. E2 u: \# }2 w: T
- 1、hostname av4u.info 【立即生效】& {5 x) d* E6 j
- 2、vi /etc/sysconfig/network 【重啟後會讀這個文件】
; i% w7 C& v4 X9 K7 S c7 r - 添加或修改:HOSTNAME=av4u.info l5 ]" P5 M! j4 L
- 3、vi /etc/hosts 【跟各個應用有關系,一定得改】/ ~2 R% `2 C2 e6 T! b
- 在127.0.0.1後面添加主機名av4u.info
複製代碼 . J% A7 [; ~* Z, j
error: Relaying denied. IP name lookup failed4 j' h3 Z+ U' Z/ X- k! S
解决:0 Y2 u( U& w) {/ y) h
修改access文件,將本機ip加入後,問題解决!+ r% w% x6 b/ E! F- n( ~' ^) f
具體方法:
0 W1 h0 O; o( P* U5 Y" K/ }- /etc/mail/access
; p* P. h4 t0 | d6 ~" w2 C" E" \$ h - 加入
" j' x0 ~1 z. B# `/ g o - xxx.xxx.xxx.xxx RELAY
複製代碼 ) ?" N& f( T9 V% C7 F0 S
P.S 在我的主機以mail 指令測試收發信件都ok
9 _( F; L# Y0 _/ ^8 I參考:http://pejslin.blogspot.tw/2014/04/centos-sendmail.html3 |" D. M4 H' M- V- n
2 P5 V S/ m( W" {* p% M7 I; |2 N# [6 O/ z4 z1 e4 s
|