歡迎您光臨本站 註冊首頁

Linux下mail伺服器應用之sendmail郵件系統的一個案例

←手機掃碼閱讀     火星人 @ 2014-03-08 , reply:0

Linux下mail伺服器應用之sendmail郵件系統的一個案例

sendmail郵件系統的一個案例

實驗拓撲 :在mail.bj.com安裝sendmail並進行簡單配置 [root@mail ~]# mkdir /mnt/cdrom

[root@mail ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@mail ~]# cd /mnt/cdrom/Server/

[root@mail Server]# rpm -qa |grep -E "sendmail|m4"

m4-1.4.5-3.el5.1 sendmail-8.13.8-2.el5

[root@mail Server]# rpm -ivh sendmail- sendmail-8.13.8-2.el5.i386.rpm #主程序包 sendmail-cf-8.13.8-2.el5.i386.rpm #配置工具包 sendmail-devel-8.13.8-2.el5.i386.rpm sendmail-doc-8.13.8-2.el5.i386.rpm

[root@junjie Server]# rpm -ivh sendmail-cf-8.13.8-2.el5.i386.rpm

[root@mail Server]# cd /etc/mail/ [root@mail mail]# ls Makefile domaintable.db mailertable.db submit.mc access helpfile sendmail.cf trusted-users access.db local-host-names sendmail.mc virtusertable

domaintable mailertable submit.cf virtusertable.db 編輯主要配置文件: [root@mail mail]# vim sendmail.mc

116 DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

[root@mail ~]# netstat -tupln |grep sendmail

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3407/sendmail: acce

[root@mail ~]# service sendmail restart

[root@mail ~]# netstat -tupln |grep sendmail

tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 4440/sendmail: acce

中繼文件: [root@mail mail]# vim access #增加10,11,12行

9 Connect:127.0.0.1

RELAY

10 Connect:10.106.6 RELAY 11 bj.com OK 12 sh.com RELAY 表明郵件伺服器的域名: [root@mail mail]# vim local-host-names

增加:bj.com

重新啟動sendmail伺服器: [root@mail mail]# chkconfig sendmail on [root@mail mail]# service sendmail restart Shutting down sm-client: [ OK ] Shutting down sendmail: [ OK ] Starting sendmail: [ OK ] Starting sm-client: [ OK ]

新建賬戶: [root@mail ~]# useradd user1 [root@mail ~]# useradd user2

[root@mail ~]# echo "123" |passwd --stdin user1

[root@mail ~]# echo "123" |passwd --stdin user2

:搭建dns伺服器,並作相關配置: [root@mail ~]# cd /mnt/cdrom/Server/

[root@mail Server]# rpm -ivh bind-9.3.4-10.P1.el5.i386.rpm

[root@mail Server]# rpm -ivh bind-chroot-9.3.4-10.P1.el5.i386.rpm

[root@....Server]# rpm -ivh caching-nameserver-9.3.4-10.P1.el5.i386.rpm

[root@mail Server]# cd /var/named/chroot/etc/

[root@mail etc]# ll

[root@mail etc]# cp -p named.caching-nameserver.conf named.conf

[root@mail etc]# vim named.conf 15 listen-on port 53 { any; }; 27 allow-query { any; }; 36 match-clients { any; }; 37 match-destinations { any; };

[root@mail etc]# vim named.rfc1912.zones

增加以下幾行:

20 zone "bj.com" IN {

21 type master;

22 file "bj.com.db";

23 allow-update { none; };

24 }; [root@mail etc]# cd ../var/named/ [root@mail named]# ll

[root@mail named]# cp -p localhost.zone bj.com.db

[root@mail named]# vim bj.com.db 2 @ IN SOA ns.bj.com. root (

9 @ IN NS ns.bj.com.

10 ns IN A 10.106.6.254 11 mail IN A 10.106.6.254 12 pop3 IN CNAME mail 13 smtp IN CNAME mail

14 @ IN MX 10 mail

[root@mail named]# chkconfig named on [root@mail named]# service named start

Starting named: [ OK ]

:客戶端測試dns解析,進行簡單配置:

:進行配置,並安裝接收dovecot伺服器:

進行系統配置:

[root@mail named]# vim /etc/resolv.conf

1 nameserver 10.106.6.254

[root@mail named]# vim /etc/sysconfig/network

3 HOSTNAME=mail.bj.com [root@mail named]# vim /etc/hosts

127.0.0.1 mail.bj.com localhost.localdomain localh ost

[root@mail named]#init 6 [root@mail ~]# yum install -y dovecot [root@mail ~]# chkconfig dovecot on [root@mail ~]# service dovecot start

Starting Dovecot Imap: [ OK ] [root@mail ~]# netstat -tupln |grep dovecot

(110,143,993(imaps),995(pop3s))

:bj.com客戶端發送信息測試:(使用foxmail) user1給user1發送信息:

user1給user2發送信息:

日誌分析:

Mar 23 10:45:50 mail sendmail[3938]: q2N2jovd003938: from=<user1@bj.com>, size=1430, class=0, nrcpts=1, msgid=<201203231044542450591@bj.com>, proto=ESMTP, daemon=MTA, relay=[10.106.6.190]

Mar 23 10:45:50 mail sendmail[3939]: q2N2jovd003938: to=<user1@bj.com>, ctladdr=<user1@bj.com> (501/501), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=31594, dsn=2.0.0, stat=Sent

Mar 23 10:46:08 mail d

ovecot: pop3-login: Login: user=<user1>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 10:46:09 mail dovecot: POP3(user1): Disconnected: Logged out top=0/0, retr=1/1696, del=0/1, size=1679

Mar 23 10:58:20 mail sendmail[4012]: q2N2wKKs004012: from=<user1@bj.com>, size=1481, class=0, nrcpts=1, msgid=<201203231057242513780@bj.com>, proto=ESMTP, daemon=MTA, relay=[10.106.6.190]

Mar 23 10:58:20 mail sendmail[4013]: q2N2wKKs004012: to=<user2@bj.com>, ctladdr=<user1@bj.com> (501/501), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=31645, dsn=2.0.0, stat=Sent

Mar 23 10:59:09 mail dovecot: pop3-login: Aborted login: user=<user2@bj.com>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 10:59:09 mail dovecot: pop3-login: Login: user=<user2>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 10:59:09 mail dovecot: POP3(user2): Disconnected: Logged out top=0/0, retr=1/1748, del=0/2, size=3448

:配置mail.sh.com上海伺服器: 安裝sendmail [root@mail ~]# mkdir /mnt/cdrom

[root@mail ~]# mount /dev/cdrom /mnt/cdrom/

[root@mail ~]# cd /mnt/cdrom/Server/

[root@mail Server]# rpm -qa |grep -E "sendmail|m4"

[root@junjie Server]# rpm -ivh sendmail-cf-8.13.8-2.el5.i386.rpm

[root@mail Server]# cd /etc/mail/ [root@mail mail]# ls 編輯主要配置文件: [root@mail mail]# vim sendmail.mc

116 DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

[root@mail ~]# netstat -tupln |grep sendmail

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3607/sendmail: acce

[root@mail ~]# service sendmail restart

[root@mail ~]# netstat -tupln |grep sendmail

tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 3528/sendmail: acce

中繼文件: [root@mail mail]# vim access #增加10,11,12行

9 Connect:127.0.0.1 RELAY

10 Connect:10.106.6 RELAY 11 sh.com OK 12 bj.com RELAY 表明郵件伺服器的域名:

[root@mail mail]# vim local-host-names

增加:sh.com

重新啟動sendmail伺服器: [root@mail mail]#chkconfig sendmail on [root@mail mail]# service sendmail restart Shutting down sm-client: [ OK ] Shutting down sendmail: [ OK ] Starting sendmail: [ OK ] Starting sm-client: [ OK ] 新建賬戶: [root@mail ~]# useradd user3 [root@mail ~]# useradd user4

[root@mail ~]# echo "123" |passwd --stdin user3

[root@mail ~]# echo "123" |passwd --stdin user4

:搭建mail.sh.com的dns伺服器,並作相關配置: [root@mail ~]# cd /mnt/cdrom/Server/

[root@mail Server]# rpm -ivh bind-9.3.4-10.P1.el5.i386.rpm

[root@mail Server]# rpm -ivh bind-chroot-9.3.4-10.P1.el5.i386.rpm

[root@....Server]# rpm -ivh caching-nameserver-9.3.4-10.P1.el5.i386.rpm

[root@mail Server]# cd /var/named/chroot/etc/

[root@mail etc]# ll

[root@mail etc]# cp -p named.caching-nameserver.conf named.conf

[root@mail etc]# vim named.conf 15 listen-on port 53 { any; };

27 allow-query { any; };

36 match-clients { any; }; 37 match-destinations { any; };

[root@mail etc]# vim named.rfc1912.zones

增加以下幾行:

20 zone "sh.com" IN {

21 type master;

22 file "sh.com.db";

23 allow-update { none; };

24 }; [root@mail etc]# cd ../var/named/ [root@mail named]# ll

[root@mail named]# cp -p localhost.zone sh.com.db

[root@mail named]# vim sh.com.db 2 @ IN SOA ns.sh.com. root (

9 @ IN NS ns.sh.com. 10 ns IN A 10.106.6.253 11 @ IN MX 10 mail 12 mail IN A 10.106.6.253 13 pop3 IN CNAME mail 14 smtp IN CNAME mail [root@mail named]# chkconfig named on [root@mail named]# service named start

Starting named: [ OK ]

客戶端測試dns解析:

:在sh.com進行系統配置,並安裝接收伺服器:

[root@mail named]# vim /etc/resolv.conf

1 nameserver 10.106.6.253

[root@mail named]# vim /etc/sysconfig/network

3 HOSTNAME=mail.sh.com [root@mail named]# vim /etc/hosts

127.0.0.1 mail.sh.com localhost.localdomain localh ost

[root@mail named]#init 6 安裝接受伺服器: [root@mail ~]# yum install -y dovecot [root@mail ~]# chkconfig dovecot on [root@mail ~]# service dovecot start

Starting Dovecot Imap: [ OK ] [root@mail ~]# netstat -tupln |grep dovecot

(110,143,993(imaps),995(pop3s))

:sh.com的客戶端測試,user3給user4發信息:

:做dns轉發和配置反向解析 在mail.bj.com上做dns轉發和反向解析:

[root@mail ~]# cd /var/named/chroot/etc/

[root@mail etc]# vim named.conf

28 forwarders { 10.106.6.253; };

[root@mail etc]# rndc reload

server reload successful

[root@mail etc]# vim named.rfc1912.zones

55 zone "6.106.10.in-addr.arpa" IN {

56 type master;

57

file "10.106.6.db";

58 allow-update { none; };

59 };

[root@mail etc]# cd ../var/named/

[root@mail named]# ll

[root@mail named]# cp -p named.local 10.106.6.db

[root@mail named]# vim 10.106.6.db

254 IN PTR mail.bj.com.

153 IN PTR mail.sh.com.

[root@mail named]# rndc reload

server reload successful

在mail.sh.com上做dns轉發和反向解析:

[root@mail ~]# cd /var/named/chroot/etc/

[root@mail etc]# vim named.conf

28 forwarders { 10.106.6.254; };

[root@mail etc]# rndc reload

server reload successful

[root@mail etc]# vim named.rfc1912.zones

55 zone "6.106.10.in-addr.arpa" IN {

56 type master;

57 file "10.106.6.db";

58 allow-update { none; };

59 };

[root@mail etc]# cd ../var/named/

[root@mail named]# ll

[root@mail named]# cp -p named.local 10.106.6.db

[root@mail named]# vim 10.106.6.db

254 IN PTR mail.bj.com.

153 IN PTR mail.sh.com.

[root@mail named]# rndc reload

server reload successful

:測試通信情況

(bj.com的客戶user1@bj.com與sh.com的客戶user3@sh.com通信)

:監控的日誌信息:

mail.bj.com的日誌信息:

[root@mail ~]# tail -f /var/log/maillog

Mar 23 15:46:07 mail dovecot: pop3-login: Aborted login: user=<user2@bj.com>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:46:07 mail dovecot: pop3-login: Login: user=<user2>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:46:07 mail dovecot: POP3(user2): Disconnected: Logged out top=0/0, retr=0/0, del=0/3, size=5025

Mar 23 15:46:13 mail sendmail[2298]: q2N7kCbh002298: from=<user1@bj.com>, size=1458, class=0, nrcpts=1, msgid=<2012032316322753227112@bj.com>, proto=ESMTP, daemon=MTA, relay=[10.106.6.190]

Mar 23 15:46:16 mail sendmail[2300]: q2N7kCbh002298:

to=<user3@sh.com>, ctladdr=<user1@bj.com> (500/500), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=121458, relay=mail.sh.com. [10.106.6.253], dsn=2.0.0, stat=Sent (q2N8W6jM003583 Message accepted for delivery)

Mar 23 15:48:38 mail sendmail[2307]: q2N7mc6a002307: from=<user3@sh.com>, size=3353, class=0, nrcpts=1, msgid=<001a01cd08cf$bcf83cd0$c8066a0a@hp3aea877158e2>, proto=ESMTP, daemon=MTA, relay=[10.106.6.253]

Mar 23 15:48:38 mail sendmail[2308]: q2N7mc6a002307: to=<user1@bj.com>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=33514, dsn=2.0.0, stat=Sent

Mar 23 15:48:54 mail dovecot: pop3-login: Aborted login: user=<user1@bj.com>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:48:54 mail dovecot: pop3-login: Login: user=<user1>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:48:54 mail dovecot: POP3(user1): Disconnected: Logged out top=0/0, retr=1/3623, del=0/1, size=3606

Mar 23 15:51:04 mail sendmail[2320]: q2N7p4Pg002320: from=<user1@bj.com>, size=1470, class=0, nrcpts=1, msgid=<2012032316372380506613@bj.com>, proto=ESMTP, daemon=MTA, relay=[10.106.6.190]

Mar 23 15:51:04 mail sendmail[2322]: q2N7p4Pg002320: to=<user3@sh.com>, ctladdr=<user1@bj.com> (500/500), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=121470, relay=mail.sh.com. [10.106.6.253], dsn=2.0.0, stat=Sent (q2N8aucK003603 Message accepted for delivery)

Mar 23 15:52:25 mail sendmail[2325]: q2N7qPlW002325: from=<user3@sh.com>, size=3514, class=0, nrcpts=1, msgid=<002401cd08d0$4378c360$c8066a0a@hp3aea877158e2>, proto=ESMTP, daemon=MTA, relay=[10.106.6.253]

Mar 23 15:52:25 mail sendmail[2326]: q2N7qPlW002325: to=<user1@bj.com>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=33675, dsn=2.0.0, stat=Sent

Mar 23 15:52:34 mail dovecot: pop3-login: Aborted login: user=<user1@bj.com>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:52:34 mail dovecot: pop3-login: Login: user=<user1>, method=PLAIN, rip=::ffff:10.106.6.190, lip=::ffff:10.106.6.254

Mar 23 15:52:34 mail dovecot: POP3(user1): Disconnected: Logged out top=0/0, retr=1/3786, del=0/2, size=7375

mail.sh.com

的日誌信息:

[root@mail ~]# tail -f /var/log/maillog

Mar 23 16:24:06 mail dovecot: pop3-login: Login: user=<user3>, method=PLAIN, rip=::ffff:10.106.6.200, lip=::ffff:10.106.6.253

Mar 23 16:24:06 mail dovecot: POP3(user3): Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0

Mar 23 16:24:07 mail dovecot: pop3-login: Login: user=<user4>, method=PLAIN, rip=::ffff:10.106.6.200, lip=::ffff:10.106.6.253

Mar 23 16:24:07 mail dovecot: POP3(user4): Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0

Mar 23 16:32:07 mail sendmail[3583]: q2N8W6jM003583: from=<user1@bj.com>, size=1617, class=0, nrcpts=1, msgid=<2012032316322753227112@bj.com>, proto=ESMTP, daemon=MTA, relay=mail.bj.com [10.106.6.254]

Mar 23 16:32:08 mail sendmail[3584]: q2N8W6jM003583: to=<user3@sh.com>, delay=00:00:01, xdelay=00:00:01, mailer=local, pri=31791, dsn=2.0.0, stat=Sent

Mar 23 16:32:51 mail dovecot: pop3-login: Login: user=<user3>, method=PLAIN, rip=::ffff:10.106.6.200, lip=::ffff:10.106.6.253

Mar 23 16:32:51 mail dovecot: POP3(user3): Disconnected: Logged out top=0/0, retr=1/1898, del=1/1, size=1881

Mar 23 16:34:29 mail sendmail[3595]: q2N8YTvQ003595: from=<user3@sh.com>, size=3193, class=0, nrcpts=1, msgid=<001a01cd08cf$bcf83cd0$c8066a0a@hp3aea877158e2>, proto=SMTP, daemon=MTA, relay=[10.106.6.200]

Mar 23 16:34:29 mail sendmail[3597]: q2N8YTvQ003595: to=<user1@bj.com>, ctladdr=<user3@sh.com> (500/500), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=123193, relay=mail.bj.com. [10.106.6.254], dsn=2.0.0, stat=Sent (q2N7mc6a002307 Message accepted for delivery)

Mar 23 16:36:56 mail sendmail[3603]: q2N8aucK003603: from=<user1@bj.com>, size=1629, class=0, nrcpts=1, msgid=<2012032316372380506613@bj.com>, proto=ESMTP, daemon=MTA, relay=mail.bj.com [10.106.6.254]

Mar 23 16:36:56 mail sendmail[3604]: q2N8aucK003603: to=<user3@sh.com>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=31803, dsn=2.0.0, stat=Sent

Mar 23 16:37:04 mail dovecot: pop3-login: Login: user=<user3>, method=PLAIN, rip=::ffff:10.106.6.200, lip=::ffff:10.106.6.253

Mar 23 16:37:04 mail dovecot: POP3(user3): Disconnected: Logged out top=0/0, retr=1/1909, del=1/1, size=1892

Mar 23 16:38:16 mail sendmail[3611]: q2N8cGVM003611: from=<user3@sh.com>, size=3354, class=0, nrcpts=1, msgid=<002401cd08d0$4378c360$c8066a0a@hp3aea877158e2>, proto=SMTP, daemon=MTA, relay=[10.106.6.200]

Mar 23 16:38:16 mail sendmail[3613]: q2N8cGVM003611: to=<user1@bj.com>, ctladdr=<user3@sh.com> (500/500), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=123354, relay=mail.bj.com. [10.106.6.254], dsn=2.0.0, stat=Sent (q2N7qPlW002325 Message accepted for delivery)

《完》

--xjzhujunjie

--2012/03/23-19:35

本文出自 「xjzhujunjie」 博客,請務必保留此出處http://xjzhujunjie.blog.51cto.com/3582724/815292


[火星人 ] Linux下mail伺服器應用之sendmail郵件系統的一個案例已經有571次圍觀

http://coctec.com/docs/linux/show-post-46285.html