debian下搭建邮件服务器

第一步

#apt-get update

#apt-get upgrade

#apt-get install postfix libsasl2-2 sasl2-bin libsasl2-modules dovecot-imapd dovecot-pop3d dovecot-common

第二步

配置邮件服务器

首先,停掉这三项服务:

  #postfix stop

  #service dovecot stop

  

  接下来,修改postfix的配置文件/etc/postfix/main.cf

 

  由于采用了sasl做认证,同时用dovecot作为pop3、imap和smtp的服务,所以需要修改postfix的配置文件以适应需求。

  在/etc/postfix/main.cf文件中增加以下信息以支持sasl认证和dovecot服务。

 

  smtpd_sasl_type = dovecot

  smtpd_sasl_path = private/auth

  smtpd_sasl_auth_enable = yes

  smtpd_sasl_local_domain = yourdomain.com

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

  smtpd_sasl_security_options = noanonymous

      message_size_limit = 10240000

  另外main.cf中的以下两个参数

  myhostname = yourhostname

  mydestination = yourdomain.com, localhost.localdomain, localhost

  分别代表了你的服务器信息,myhostname是你当前主机名,mydestination其中的yourdomain.com则是邮件服务器名。

 

  修改完毕后保存该文件。

 

  

  接下来,修改/etc/dovecot/dovecot.conf文件

  修改参数protocols为

  protocols = pop3 imap

      修改mail_location为

      mail_location = mbox:~/mail:INBOX=/var/mail/%u (这里需要注意dovecot设置的邮件类型为mbox,而postfix默认邮件格式也能是Maildir。如果这里设置的为mail_location=mail:~/Maildir,会出现收件箱里没有东西)

  设置参数disable_plaintext_auth为

  disable_plaintext_auth = no

  找到auth default,将auth default改名为auth default2。

  然后在这行前面增加如下信息

auth default {

mechanisms = plain login

passdb pam {

}

userdb passwd {

}

socket listen {

client {

path = /var/spool/postfix/private/auth

mode = 0660

user = postfix

group = postfix

}

 

}

}

  注意:这里的每个‘{’前都有个空格。

  然后保存该文件。

 

 

  接下来,修改sasl配置文件。

  debian默认的安装配置中sasl并不会自动启动,需要修改/etc/default/saslauthd文件。

  将其中的START=no修改为START=yes。

  修改

  OPTIONS="-c -m /var/run/saslauthd"

  为

  OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

  然后保存该文件。

 

 

  在启用sasl的情况下postfix运行需要sasldb2文件在postfix的chroot环境中。

  同时为了保证saslauthd能和postfix通讯,需要作如下的修改。

 

  删除位于/va/run目录下的saslauthd目录,然后创建一个指向/var/spool/postfix/var/run/saslauthd的符号连接。

 

  sudo rm -r /var/run/saslauthd/

 

  sudo mkdir -p /var/spool/postfix/var/run/saslauthd

 

  sudo ln -s /var/spool/postfix/var/run/saslauthd /var/run

 

  sudo chgrp sasl /var/spool/postfix/var/run/saslauthd

 

  sudo adduser postfix sasl

 

  另外postfix在运行的时候需要将/etc/sasldb2文件拷贝到chroot环境中。

  修改/etc/init.d/postfix文件,修改其中的FILES变量,在其中增加etc/sasldb2

 

 

  完成以上工作后启动三个服务。

  #postfix start

     #service dovecot start

  然后新增用户

  adduser username

  至此,邮件服务器的配置成功。

     查询系统邮件日志文件:/var/log/mail.log

启动Postfix 和 Dovecot

  首先检查系统中是否安装了sendmail,一般情况都有sendmail,这里要先将sendmail服务关闭,或者是卸载sendmail

#service sendmail stop       #关闭sendmail服务

#chkconfig sendmail off      #关闭开机自动运行sendmail服务

#postfix start               #打开postfix服务

#chkconfig postfix on        #开机自动运行postfix服务(我设置后开机任旧不会自动运行postfix)  

#service dovecot start       #打开dovecot服务

#chkconfig dovecot on        #开机自动运行dovecot服务

postfix加入到root的组:

#usermod -G root postfix

检查服务是否开启,如果服务打开会显示如下结果

#nmap localhost

PORT      STATE    SERVICE

22/tcp    open      ssh 

25/tcp    open      smtp

110/tcp   open      pop3

如果没有安装nmap命令,可以使用netstat命令

#netstat -nlt

添加邮件服务器用户并分配邮箱

首先添加邮件服务器用户

#adduser username       //添加用户

#passwd username        //设置密码

    由于前面设置mail_location=mbox:~/mail:INBOX=/var/mail/%u,所以,所创建的用户目录下有具有mail目录,如果不存在该目录,如下操作

#telnet ip地址 110

#user username

+OK

#pass password

+login

#chmod 700 /home/username/Maildir   //很重要

posted @ 2015-07-15 00:02 hellowoody 阅读(...) 评论(...) 编辑 收藏