最近帮人在乌班图16.04.4版本的服务器上(代号:好客的干毛地松鼠)搭建了邮件系统。搜索一下,没有在乌班图16.04.4版本上使用postfix3+dovecot2+mysql5.7搭建的中文教程。这样我不妨将这过程写下来,尤其本人在搭建过程遇到俩个由于版本升级导致的配置“坑”,需要查阅外文资料才能解决。有了此篇,大家以后遇到类似问题就不用查阅英文文档了。本文档分上下两部分,本文为上半部分,介绍软件基本安装以及postfix和dovecot配置,下半部分预料在月底写好,主要是反病毒软件和网页访问的配置。
本文介绍的是ubuntu 16.04.4长期支持版做的基础服务器,搭载postfix3.1.0处理邮件服务,用mysql5.7邮件存储数据库,加上dovecot2.2.22分发邮件,阿帕奇和松鼠邮箱支持的网页服务,构成基本邮件系统的组建和配置步骤。
1.安装前准备工作:
在防火墙或路由器、域名服务器上将以下端口做好相关映射,将有关服务转发到邮件服务器上。此篇文档着重讲述邮件服务器上的配置,就不累述了此步骤的工作。
- 25 (SMTP)
- 80 (HTTP)
- 110 (POP3)
- 143 (IMAP)
- 443 (HTTPS)
- 465 (SMTPS)
- 993 (IMAPS)
- 995 (POP3S)
2. 安装ubuntu16.04.4服务器:
安装乌班图时,个人建议配置网络时,选择手动:
这样可以手动指定邮件服务器的IP地址方便日后配置。
本事例中,主机名采用了mailbox,dns选择了拥有的公有IP域名(为论述方便,下文使用mytest.com,大家具体设置的时候,根据自己需要来替换),这样主机的完全及格域名就是mailbox@mytest.com了。然后需要在域名服务器上添加A记录指向公网ip,还有MX记录指向mailbox的完全及格域名。
另外本文没有在系统初始化aptitude安装界面中,选择直接安装邮件服务器。因为ubuntu会自动选择安装PostgreSQL来存储邮件,选择安装基本服务standard system utilities ,有更多选择权,比如说用mysql构建邮件储存,还有安装openssh server方便管理员使用ssh远程连接管理。
安装完毕后进入字符界面,使用ssh连接。更新所有软件后正式开始搭建邮件服务器。
3.搭建邮件服务器
3.1安装必须软件
先安装阿帕奇网页服务器,安装postfix时候,会让你选择网页服务器的,所以应装网页服务器在前:
$ sudo apt-get install apache2
然后正式安装邮件服务器必备软件:
输入以下命令:
$ sudo apt-get install postfix-mysql mysql-server dovecot-pop3d dovecot-imapd dovecot-mysql amavisd-new libclass-dbi-mysql-perl
简单介绍各组建,postfix是邮件服务器主要部件,可以理解成邮局,mysql是管理邮件的数据库,dovecot鸽舍的作用看做是邮递员,负责将邮件分发到各信箱,pop/imap是电子邮箱协议版本, amavis是邮件反病毒审查器,负责扫描非法邮件。
值得注意的是需要安装 dovecot-mysql软件模块,本人学习linux ubuntu的时候使用的是10.04版本,当时架设邮件服务器的时候是不需要安装此模块的,安装dovecot的时候已经配置好自动支持mysql,但这次在16.04乌班图版本上实际操作的时候,发现自从ubuntu12.04起,就必须安装此模块,否则测试的时候,mail.log日志会提示以下类似的鉴权错误(这是本次配置过程中遇到的第一个坑):
status=deferred (temporary failure)
dovecot: auth: Fatal: Unknown database driver ‘mysql’
mailbox dovecot: master: Error: service(auth): command startup failed, throttling
在安装postfix时候,要求输入完全合格域名,以及在postfix 通用邮件配置中,应该选择“Internet site” 因特网场景:
接着安输入命令安装反垃圾邮件和病毒过滤程序:
$ sudo apt-get install spamassassin clamav-daemon razor pyzor cpio arj zoo nomarch lzop cabextract pax lhasa unrar zip unzip rar
安装邮件系统网页访问程序松鼠邮:
$ sudo apt-get install squirrelmail squirrelmail-locales php7.0-imap
安装访问管理数据库的phpadmin以及邮件测试小工具:
$ sudo apt-get install phpmyadmin telnet mutt bsd-mailx
自止,所有必要软件安装完毕,下面进入配置。