设为首页 收藏本站
查看: 1086|回复: 0

[经验分享] CentOS Linux安装postfix邮件服务器

[复制链接]

尚未签到

发表于 2015-11-24 10:06:09 | 显示全部楼层 |阅读模式

  postfix是一个高效的邮件服务器,配置比sendmail简单,这里使用LAMP+postfix+dovecot+SquirrelMail搭建提供SMTP/POP3/IMAP的简单邮件服务。系统是CentOS6.2。
  简单说明:

postfix是一个MTA即邮件传输代理。作为收件服务器。

dovecot是一个开源的IMAP和POP3邮件服务器。作为发件服务器。
  准备工作:

1、卸载sendmail



yum remove sendmail



2、安装LAMP



yum install httpd mysql mysql-devel mysql-server php php-mysql php-bcmath php-gd php-mbstring php-xml php-imap



配置LAMP过程略过。
  一、安装postfix

使用源码编译安装。

1、建立postfix所需的用户和组

建立postfix、postdrop组和postfix用户:



groupadd -g 2001 postfix

useradd -g postfix -u 1001 -s /sbin/nologin -M postfix

groupadd -g 2002 postdrop



2、安装必备软件包



yum install db*-devel



3、到官网http://www.postfix.org/ 找一个下载点下载postfix,目前稳定版为Postfix 2.9



cd /tmp

wget ftp://ftp.reverse.net/pub/postfix/official/postfix-2.9.3.tar.gz

tar -zxvf postfix-2.9.3.tar.gz

cd postfix-2.9.3



更新makefile文件,添加mysql、sasl认证支持:



make -f Makefile.init makefiles \

'CCARGS=-DHAS_MYSQL -I/usr/include/mysql \

-DUSE_SASL_AUTH \

-DDEF_SERVER_SASL_TYPE=\"dovecot\"' \

'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm'



备注:-DUSE_SASL_AUTH表示启用SASL认证,-DDEF_SERVER_SASL_TYPE=\"dovecot\"表示使用dovecot做SASL模块。
  继续安装:



make

make install



4、make install执行后会调用postfix-install脚本

这里设置如下,空白为直接按回车。



install_root: [/]

tempdir: [/tmp/postfix-2.9.3] /tmp/postfix

config_directory: [/etc/postfix]

command_directory: [/usr/sbin]

daemon_directory: [/usr/libexec/postfix]

data_directory: [/var/lib/postfix]

html_directory: [no] /var/www/html/postfix

mail_owner: [postfix]

mailq_path: [/usr/bin/mailq]

manpage_directory: [/usr/local/man]

newaliases_path: [/usr/bin/newaliases]

queue_directory: [/var/spool/postfix]

readme_directory: [no]

sendmail_path: [/usr/sbin/sendmail]

setgid_group: [postdrop]



postfix安装在/usr/sbin/postfix,随后可以访问http://IP/postfix,查看Postfix Documentation。
  5、检验postfix是否支持Dovecot SASL



postconf -a



结果显示dovecot,说明支持。
  其它postconf命令:

postconf -n

postconf -m

postconf -d
  二、安装dovecot

官网:http://dovecot.org,目前稳定版为dovecot 2.1.8。
  1、安装必备软件包



yum install pam pam-devel



2、编译安装dovecot



cd /tmp

wget http://dovecot.org/releases/2.1/dovecot-2.1.8.tar.gz

tar -zxvf dovecot-2.1.8.tar.gz

cd dovecot-2.1.8

./configure --with-sql --with-mysql --with-ssl=openssl --with-pam

make

make install



dovecot安装在/usr/local/sbin/dovecot。
  三、配置postfix

这里域名为live-in.org,FQDN(fully-qualified domain name)为mail.live-in.org。
  0、修改主机名



hostname mail.live-in.org





vim /etc/hosts

127.0.0.1 mail.live-in.org localhost



1、编辑配置文件/etc/postfix/main.cf:



cp /etc/postfix/main.cf /etc/postfix/main.cf.bak

vim /etc/postfix/main.cf



1)设置邮件系统的主机名(FQDN)

找到:



#myhostname = host.domain.tld



修改为相应的域名:



myhostname = mail.live-in.org



2)设置本地域名

默认是将myhostname的第一部分去掉作为mydomain。

找到:



#mydomain = domain.tld



修改为相应的域名:



mydomin = live-in.org



3)设置发件人所在域名

找到:



#myorigin = $mydomain



去掉注释:



myorigin = $mydomain



这里和mydomain设置成一样。
  4)设置postfix要接收邮件的域名

找到:



#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain



去掉注释:



mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain



5)不传递来自其它主机的邮件

找到:



#mynetworks_style = host



去掉注释:



mynetworks_style = host



6)设置postfix监听的网络接口

找到:



#inet_interfaces = all



去掉注释:



inet_interfaces = all



7)找到:



#alias_maps = hash:/etc/aliases



去掉注释:



alias_maps = hash:/etc/aliases



是为了防止出现警告信息:warning: dict_nis_init: NIS domain name not set - NIS lookups disabled。
  8)设置邮件存储位置和格式

找到:



#home_mailbox = Maildir/



去掉注释:



home_mailbox = Maildir/



2、设置使用dovecot作为SASL认证,在最后加入:



smtpd_sasl_type = dovecot

smtpd_sasl_path = private/auth

smtpd_sasl_auth_enable = yes

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination



3、启动postfix



/usr/sbin/postfix start



四、配置dovecot

1、复制样例配置文件



cd /usr/local/etc/dovecot

cp -R /usr/local/share/doc/dovecot/example-config/* /usr/local/etc/dovecot/



2、编辑配置文件dovecot.conf



vim dovecot.conf



找到以下几句将前面的注释去掉:



protocols = imap pop3 lmtp

listen = *, :: 修改为 listen = *

base_dir = /var/run/dovecot/



3、编辑配置文件10-master.conf



vim conf.d/10-master.conf



1)找到service auth块中的以下两句:



#unix_listener /var/spool/postfix/private/auth {

#mode = 0666



修改为:



unix_listener /var/spool/postfix/private/auth {

mode = 0666

user = postfix

group = postfix

}



2)找到:



default_login_user = dovenull

default_internal_user = dovecot



将注释去掉。
  4、编辑配置文件10-auth.conf



vim conf.d/10-auth.conf



1)找到:



#disable_plaintext_auth = yes



修改为:



disable_plaintext_auth = no



允许明文密码验证。
  2)找到:



auth_mechanisms = plain



修改为:



auth_mechanisms = plain login



使Outlook能使用与接收邮件服务器相同的设置认证SMTP。
  5、编辑配置文件10-mail.conf



vim conf.d/10-mail.conf



找到:



#mail_location = maildir:~/Maildir



去掉注释:



mail_location = maildir:~/Maildir



6、建立dovecot用户



useradd -M -s /sbin/nologin dovenull

useradd -M -s /sbin/nologin dovecot



7、建立PAM认证文件



vim /etc/pam.d/dovecot



添加:




auth    required        pam_unix.so
account required        pam_unix.so

  
  

8、查看配置文件是否有错



dovecot -n



没有报错即可。
  9、启动dovecot



dovecot



报错:

  doveconf: Fatal: Error in configuration file /usr/local/etc/dovecot/conf.d/10-ssl.conf line 12: ssl_cert: Can't open file /etc/ssl/certs/dovecot.pem: No such file or directory

  是找不到/etc/ssl/certs/dovecot.pem文件。
  进入dovecot解压后的源代码目录:



cd /tmp/dovecot-2.1.8/doc

mkdir -p /etc/ssl/certs

mkdir -p /etc/ssl/private

sh mkcert.sh



再次启动dovecot



dovecot



10、日志文件

这里postfix和dovecot日志都在/var/log/maillog里。
  11、在域名的DNS解析处添加一个mail二级域名的A记录,和MX邮件交换记录。

自建的邮箱发给gmail和hotmail认为是垃圾邮件。还要做一个邮箱域名反向解析。即mail.xxx.com的A记录指向邮件服务器的IP,还要把该IP的PRT指向到mail.xxx.com。IP反向解析需要联系上级的ISP来做了。因为我们对邮件域名有管理权,但对这个IP没有管理权。
  12、整理下思路

这里设置的邮件用户为Linux系统内的实际用户,使用pam验证密码,邮件存储在~/Maildir(家目录下的Maildir目录中)。
  但是root用户没有/home/root/Maildir这个目录如何收发邮件呢?



vim /etc/aliases



在最后加入:




root:     test3

  
  

做一个别名重定向,随后更新资料库:



newaliases



建立test3用户:



useradd test3



另外好像root用户不能用POP3、IMAP登录发邮件?
  五、安装SquirrelMail

SquirrelMail是一个基于PHP的webmail邮件系统。目前稳定版为squirrelmail-webmail-1.4.22。
  1、下载SquirrelMail



cd /tmp

wget http://www.squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fprdownloads.sourceforge.net%2Fsquirrelmail%2Fsquirrelmail-webmail-1.4.22.tar.gz

tar -zxvf squirrelmail-webmail-1.4.22.tar.gz

mv squirrelmail-webmail-1.4.22 /var/www/html/webmail

chown -R apache:apache /var/www/html/webmail



2、配置参数



cd /var/www/html/webmail

./configure



会看到一个可选择的菜单,要修改几个地方:

输入D(Set pre-defined settings for specific IMAP servers),再输入dovecot

输入2(Server Settings),再输入1,设置Domain

输入10(Languages),再输入1,设置Default Language为zh_CN

输入10(Languages),再输入2,设置Default Charset为UTF8
  建立SquirrelMail Data和Attachment:



mkdir -p /var/local/squirrelmail/data/

mkdir -p /var/local/squirrelmail/attach/

chown -R apache:apache /var/local/squirrelmail



访问:http://IP/webmail 登录SquirrelMail。
  参考资料:

http://www.postfix.org/STANDARD_CONFIGURATION_README.html

http://wiki2.dovecot.org/HowTo/PostfixAndDovecotSASL

http://www.postfix.org/MYSQL_README.html

http://blog.csdn.net/stuartjing/article/details/6792508

http://hi.baidu.com/delphiss/blog/item/38571c94f7a7d50e7af48052.html
  
  
  http://www.live-in.org/archives/1392.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-142969-1-1.html 上篇帖子: zimbra启动时出现postfix is not running解决办法 转自:http://hi.baidu.com/dlbinary/blog/item/ 下篇帖子: Linux常用的postfix命令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表