Linux网络服务_邮件服务器-Redhat Enterprise 5.9

Linux网络服务_邮件服务器-Redhat Enterprise 5.9


案例环境:

邮件服务器:mail.tarena.com192.168.1.100

邮件域:@tarena.com

邮件账号:服务器的系统用户

发信服务软件:postfix

授信服务软件:dovecot


第一部分:安装并测试发信服务软件postfix

第一步:与邮件相关的DNS设置

需要事先配置dns,在正向文件中添加相应的MX记录、A记录

[root@server1 ~]# cat /var/named/chroot/var/named/tarena.com.zheng

$TTL    86400

@       IN      SOA    tarena.com. root.tarena.com.  (

                                     2014031001 ; Serial

                                     28800      ; Refresh

                                     14400      ; Retry

                                     3600000    ; Expire

                                     86400)     ; Minimum

       IN      NS       server1.tarena.com.

      IN     MX  5   mail.tarena.com.

server1 IN      A        192.168.1.100

mail    IN    A       192.168.1.100

[root@server1 ~]#


第二步:安装postfix服务

注:

1,在安装postfix服务之前,需要先关闭sendmail服务,避免端口冲突

2,依赖包为perl-DBI,安装完后要添加postfix服务

3,需要手动添加postfix服务:chkconfig --add postfix


[root@server1 ~]# service sendmail stop

关闭 sm-client:                                           [确定]

关闭 sendmail:                                            [确定]

[root@server1 ~]# chkconfig sendmail off

[root@server1 ~]# yum -y install postfix

[root@server1 ~]# chkconfig --add postfix

[root@server1 ~]# chkconfig --list postfix

postfix         0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

[root@server1 ~]# service postfix start

启动 postfix:                                             [确定]

[root@server1 ~]#


第三步:修改主配置文件:/etc/postfix/main.cf

注:

服务配置:/etc/postfix/main.cf

主程序配置:/etc/postfix/master.cf

postconf辅助工具:

无选项时,查看当前的有效配置

选项-n,查看非默认配置

选项-d,查看默认的配置

利用postconf提取有效配置,排除干扰项、只保留非默认的配置

注:由于postconf-n在输出信息的过程中,需要读取main.cf文件,所以,先执行

post -n >test.txt,之后再将main.cf更名为main.cf.old,否则,非默认的配置内容将会改变,最后再在将text.txt改名为main.cf,那么main.cf里面的内容就为非默认的配置了。

[root@server1 ~]# cd /etc/postfix/

[root@server1 postfix]# postconf -n > test.txt

[root@server1 postfix]# mv main.cf main.cf.old

[root@server1 postfix]# mv test.txt main.cf

[root@server1 postfix]# vim main.cf

[root@server1 postfix]# cat main.cf

alias_database = hash:/etc/aliases

alias_maps = hash:/etc/aliases

command_directory = /usr/sbin

config_directory = /etc/postfix

daemon_directory = /usr/libexec/postfix

debug_peer_level = 2

html_directory = no

#inet_interfaces = localhost       //把这一行注释掉,否则只允许本地回环地址

mail_owner = postfix

mailq_path = /usr/bin/mailq.postfix

manpage_directory = /usr/share/man

mydestination = $myhostname, localhost.$mydomain,localhost

newaliases_path = /usr/bin/newaliases.postfix

queue_directory = /var/spool/postfix

readme_directory =/usr/share/doc/postfix-2.3.3/README_FILES

sample_directory =/usr/share/doc/postfix-2.3.3/samples

sendmail_path = /usr/sbin/sendmail.postfix

setgid_group = postdrop

unknown_local_recipient_reject_code = 550

myhostname = mail.tarena.com       //邮件服务器名子

mydomain = tarena.com       //邮件域

myorigin = $mydomain     //显示发件域,随邮件域变化

mydestination = $mydomain,$myhostname     //本地投递域

home_mailbox = Maildir/         //邮箱类型,这里指定在家目录的Maildir下

[root@server1 postfix]# service postfix restart

关闭 postfix:                                             [确定]

启动 postfix:                                             [确定]

[root@server1 postfix]# netstat -anpt | grep 25

tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      11475/master

[root@server1 postfix]#


第四步:测试SMTP发信

使用telnet工具:连接到25端口,执行发信指令

基本的SMTP指令

   HELO:宣告客户机地址(大小写均可)

   MAIL FROM:指定发件人邮箱地址

   RCPT TO:指定收件人邮箱地址

   DATA:编写邮件内容,SUBJECT为主题,结束则需另起一行,一点“.”结束

[root@server1 ~]#telnet mail.tarena.com 25

Trying192.168.1.100...

Connected tomail.tarena.com (192.168.1.100).

Escape character is'^]'.

220 mail.tarena.comESMTP Postfix

helo mail.tarena.com            //给mail.tarena.com打招呼

250 mail.tarena.com             //mail.tarena.com给出250回应,如果是501则失败

mail from:[email protected]       //发信人为nick

250 2.1.0 Ok

rcpt to:[email protected]       //收信任为hunter

250 2.1.5 Ok

data        //正文的开始

354 End data with<CR><LF>.<CR><LF>     //提示以“.”结束

subject:Test mail           //邮件标题,subject开头

this is a test mail...         //这是邮件内容

.           //以“.”结束

250 2.0.0 Ok: queuedas A68ED41BFB3

quit        //quit退出邮件系统

221 2.0.0 Bye

Connection closed byforeign host.

[root@server1 ~]# ls /home/hunter/Maildir/new/      //查看新邮件列表

1394448613.V803I30cf17M502725.server1.tarena.com

[root@server1 ~]# cd /home/hunter/Maildir/new/      //邮件存放位置

[root@server1 new]# cat 1394448613.V803I30cf17M502725.server1.tarena.com

Return-Path:<[email protected]>

X-Original-To:[email protected]

Delivered-To:[email protected]

Received:from mail.tarena.com (server1.tarena.com [192.168.1.100])

       by mail.tarena.com (Postfix) with SMTPid A68ED41BFB3

       for <[email protected]>; Mon, 10Mar 2014 18:49:16 +0800 (CST)

subject:Testmail

Message-Id:<[email protected]>

Date:Mon, 10 Mar 2014 18:49:16 +0800 (CST)

From:[email protected]

To:undisclosed-recipients:;


thisis a test mail ...

[root@server1 new]#


第二部分:安装并测试收信服务软件dovecot


第一步:安装dovecot软件并启动该服务

[root@server1 ~]#yum install dovecot

[root@server1 ~]#chkconfig --list dovecot

dovecot         0:关闭  1:关闭  2:关闭  3:关闭  4:关闭  5:关闭  6:关闭

[root@server1 ~]#service dovecot start

启动 DovecotImap:                                        [确定]

[root@server1 ~]#chkconfig dovecot on

[root@server1 ~]#


第二步:配置收信服务

调整dovecot配置:

1,整个配置文件基本不需更改,只需保证以下三个字段正确即可:

/etc/dovecot.conf配置文件中

ssl_disable = yes                   //禁用ssl加密

disable_plaintest_auth= no         //允许明文认证通信

mail_location =maildir:~/Maildir   //设置邮箱路径

2,重新启动服务:service dovecot restart

3,保证tcp的110和143端口开启

[root@server1 ~]# netstat -anpt | grep dovecot

tcp        0      0 :::993           :::*            LISTEN      12138/dovecot      

tcp        0      0 :::995           :::*            LISTEN      12138/dovecot      

tcp        0      0 :::110           :::*            LISTEN     12138/dovecot      

tcp        0      0 :::143           :::*            LISTEN     12138/dovecot      

[root@server1 ~]#



第三步:测试POP3/IMAP收信

使用telnet工具:连接到110或143端口,执行收信指令

基本的SMTP指令:

   USER:指定登录账号

   PASS:指定用于验证的密码

   LIST:查看邮件列表

   RETR:获取指定编号的邮件内容


[root@server1 ~]# telnet mail.tarena.com 110

Trying192.168.1.100...

Connected tomail.tarena.com (192.168.1.100).

Escape character is'^]'.

+OK Dovecot ready.

user hunter

+OK

pass 123

+OK Logged in.

list

+OK 2 messages:

1 473

.

retr 1

+OK 491 octets

Return-Path:<[email protected]>

X-Original-To:[email protected]

Delivered-To:[email protected]

Received: frommail.tarena.com (server1.tarena.com [192.168.1.100])

       by mail.tarena.com (Postfix) with SMTPid A68ED41BFB3

       for <[email protected]>; Mon, 10Mar 2014 18:49:16 +0800 (CST)

subject:Test mail

Message-Id:<[email protected]>

Date: Mon, 10 Mar2014 18:49:16 +0800 (CST)

From:[email protected]

To:undisclosed-recipients:;


this is a test mail...

.

quit

+OK Logging out.

Connection closed byforeign host.

[root@server1 ~]#


需要注意的几点:

1,在安装postfix之前,需要先停了sendmail服务,同样的邮件软件,占用的端口都是25,如果不停用,可能会导致无法启动postfix;

2,postfix是发送邮件的服务,dovecot是接收邮件的服务,两个软件合起来才能完成发送和接受的服务,所以需要完成两个部分的安装和配置;

3,在做测试的过程中,可以通过一个windows的客户端,安装foxmail软件,在foxmail中建立账户,互发和接受信件,进行测试!


扩展:邮件服务器的安全

1:SMTP认证控制:http://murongqingqqq.blog.51cto.com/2902694/1372074

2:搭建Webmail系统:http://murongqingqqq.blog.51cto.com/2902694/1372074



你可能感兴趣的:(postfix,邮件服务器,Mail服务器,devecot)