mx mail.mihost.kmip.net (郵件服務(wù)器是mx記錄)
發(fā)信服務(wù)器 (smtp)
收信服務(wù)器 (pop/imap)
User smtp> MailServer <======> MailServer pop3/imap> User
<pop3/imap <smtp
MTA(Mail Transfer Agent),郵件傳輸代理,如sendmail,qmail
MUA(Mail User Agent),郵件用戶代理, 如outlook,foxmail
SendMail服務(wù)器的安裝
下載sendmail-
準(zhǔn)備編譯環(huán)境
#rpm -e --nodeps sendmail
#rpm -e --nodeps postfix
安裝認(rèn)證庫:
cyrus-sasl、cryus-sasl-plain、cyrus-sasl-devel (cyrus-sasl-gssapi、cyrus-sasl-md5可要可不要)
#rpm -qa |grep sasl
cyrus-sasl-
cyrus-sasl-plain-
cyrus-sasl-devel-
cyrus-sasl-md5-
原代碼安裝配置sendmail
*******************************************
先確認(rèn)網(wǎng)絡(luò)環(huán)境:
ifconfig eth0
./host -t MX mihost.kmip.net
mihost.kmip.net mail is handled by 0 mail.mihost.kmip.net.
./host -t MX benet.com
編譯安裝過程
解壓縮原代碼
tar zxvf sendmail.
手動生成m4文件,內(nèi)容如下:
cd sendmail-
vi devtools/Site/site.config.m4
APPENDDEF(`confENVDEF‘,`-DSASL=2‘)
APPENDDEF(`conf_sendmail_LIBS‘,`-lsasl2‘)
編譯
sh Build –c #可能編譯時會出錯?。?o:p>
sh Build install
確保m4安裝了
rpm -q m4
m4-
建立sendmail目錄
mkdir /usr/share/sendmail
cp -a cf /usr/share/sendmail
生成sendmail.mc文件
cd cf/cf
cp generic-linux.mc sendmail.mc
more sendmail.mc
建立sendmail工作目錄
mkdir /etc/mail
安裝
make install-cf
cp sendmail.mc /etc/mail/
生成配置文件
cd /etc/mail
touch aliases access
echo "mihost.kmip.net" >local-host-names
echo "mail.mihost.kmip.net">>local-host-names
cat local-host-names
生成access.db、aliases.db
makemap hash access < access
makemap hash aliases < aliases
啟動sendmail
mkdir /var/spool/mqueue
/usr/sbin/sendmail -bd -q1h #后臺執(zhí)行,且每小時處理一次郵件隊列
ps -aux | grep sendmail
測試發(fā)信
確認(rèn)25端口開啟了
netstat -tnl | grep :25
tcp 0 0
增加賬號redhat作為root的別名
useradd redhat
passwd redhat
echo "root:redhat" >>/etc/mail/aliases
newaliases #讓aliases生效
連接服務(wù)器測試發(fā)信
[root@RHL9 root]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is ‘^]‘.
220 localhost.localdomain ESMTP Sendmail
mail from: root@mihost.kmip.net
250
rcpt to: redhat@mihost.kmip.net
250
data
354 Enter mail, end with "." on a line by itself
hello,mail from smtp command.
.
250
quit
221
Connection closed by foreign host.
[root@RHL9 root]# tail /var/log/maillog
Mar 8 02:37:57 RHL9 sendmail[6279]: l27IZkc9006279: from=root@mihost.kmip.net, size=30, class=0, nrcpts=1, msgid=<200703071836.l27IZkc9006279@localhost.localdomain>, proto=SMTP, daemon=MTA, relay=RHL9 [127.0.0.1]
Mar 8 02:37:57 RHL9 sendmail[6660]: l27IZkc9006279: to=redhat@mihost.kmip.net, ctladdr=root@mihost.kmip.net (0/0), delay=00:00:58, xdelay=00:00:00, mailer=local, pri=30443, dsn=
[root@RHL9 root]# cat /var/mail/redhat
From root@mihost.kmip.net Thu Mar 8 02:37:57 2007
Return-Path: <root@mihost.kmip.net>
Received: from RHL9 (RHL9 [127.0.0.1])
by localhost.localdomain (
for redhat@mihost.kmip.net; Thu, 8 Mar 2007 02:36:59 +0800
Date: Thu, 8 Mar 2007 02:35:46 +0800
From: root <root@mihost.kmip.net>
Message-Id: <200703071836.l27IZkc9006279@localhost.localdomain>
X-Authentication-Warning: localhost.localdomain: RHL9 [127.0.0.1] didn‘t use HELO protocol
hello,mail from smtp command.
用outlook測試發(fā)信
然后切換到redhat用mail來收信
[root@RHL9 root]# su - redhat
[redhat@RHL9 redhat]$ mail
Mail version 8.1
"/var/spool/mail/redhat": 2 messages 2 new
>N 1 root@mihost.kmip.net Thu Mar 8 02:37 12/487
N 2 redhat@mihost.kmip.net Thu Mar 8 02:54 42/1545 "Hello,Test from outlo"
& 2
配置收信服務(wù)器
安裝
rpm -ivh /mnt/cdrom/RedHat/RPMS/imap* (在2#光盤上)
開始服務(wù)
chkconfig ipop3 on
chkconfig imap on
ls /etc/xinetd.d
chargen daytime-udp imap ntalk rsh sgi_fam time-udp
chargen-udp echo imaps pop3s rsync talk
cups-lpd echo-udp ipop2 rexec servers telnet
daytime finger ipop3 rlogin services time
service xinetd restart
停止 xinetd:[ 確定 ]
啟動 xinetd:[ 確定 ]
grep imap /etc/services
imap 143/tcp imap2 # Interim Mail Access Proto v2
imap 143/udp imap2
grep pop3 /etc/services
pop3 110/tcp pop-3 # POP version 3
pop3 110/udp pop-3
netstat -tnl |grep :143
tcp 0 0
netstat -tnl |grep :110
tcp 0 0
再用outlook測試收發(fā)信(pop3、imap)
郵件轉(zhuǎn)發(fā)的配置:
#cd /etc/mail
#vi sendmail.mc
添加如下內(nèi)容:紅色內(nèi)容
divert(0)dnl
include(`/usr/share/sendmail/cf/m4/cf.m4‘)dnl
VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $‘)
FEATURE(`access_db‘)dnl
OSTYPE(linux)dnl
DOMAIN(generic)dnl
MAILER(local)dnl
MAILER(smtp)dnl
注意:` ‘ 區(qū)別!
#echo “192.168.1 RELAY” >>access
#makemap hash access < access
#killall sendmail
# /usr/sbin/sendmail -bd -q1h 一小時清理郵件隊列!
以上案例在局域網(wǎng)測試成功(外部郵件都能發(fā))。以上用的域名是動態(tài)域名。在路由器設(shè)置ip轉(zhuǎn)發(fā)功能。