Linux下邮件系统的搭建
前端时间尝试了下自己搭建邮件系统,遇到了很多难点,主要是不了解邮件系统,如果你和一样不了解邮件系统,你可以先看下我的另一篇文章《邮箱系统的新认识》,相信在看完后再去搭建就会很明确。那假如你已经了解了邮箱系统,于是你可以继续往下看。
步骤1 - 申请域名及添加MX记录
这里就不多说,可以去Google,这里贴下我的解析配置,我的域名是smallmuou.xyz
记录类型 | 主机记录 | 记录值 | MX优先级 |
---|---|---|---|
A | xxx.xxx.xxx.xxx | ||
MX | @ | mail.smallmuou.xyz | 10 |
A | @ | xxx.xxx.xxx.xxx |
步骤2 - 修改FQDN为邮件域名
可以去Google,贴下我的结果
[root@mail ~]# hostname -f mail.smallmuou.xyz
步骤3 - 选择服务软件
这里需要SMTP和POP3/IMAP服务软件,别问我为何。
-
针对SMTP,查了下有Sendmail、Postfix,其实很多系统已经预装了Sendmail,但考虑到最优性,这里选择Postfix;
-
针对POP3/IMAP服务,大家比较推荐的是Dovecot
步骤4 - 安装Postfix
请使用Linux系统自带安装工具安装,Debain的apt-get、Centos的yum
apt-get install postfix 或 yum install postfix
步骤5 - 配置Postfix
vim /etc/postfix/main.cf myhostname = mail.smallmuou.xyz mydomain = smallmuou.xyz myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain home_mailbox = Maildir/
步骤6 - 启动Postfix
在启动前,可以先查看下25端口占用情况,如果端口被占用,将会导致无法启动
[root@mail ~]# lsof -i:25 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME master 11093 root 12u IPv4 430554452 0t0 TCP *:smtp (LISTEN)
PS: 这里我已经启动了postfix,因此25端口是被占用
通过service postfix start
或/etc/init.d/postfix start
启动postfix
步骤7 - 测试Postfix
搭建完服务必备的动作就是测试,这里可以通过telnet来测试
telnet localhost 25 ehlo mail.smallmuou.xyz mail from: root@smallmuou.xyz rcpt to:root@smallmuou.xyz data subject:11212 test
PS: <Ctrl+D> 发送,可以通过postqueue -p
查看发送队列,当然可以安装mailutils来简化发送流程
步骤8 - SMTP认证
vim /usr/lib/sasl2/smtpd.conf pwcheck_method: saslauthd
smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = $myhostname smtpd_sasl_security_options = noanonymous smtpd_banner = $myhostname ESMTP "SMTP Auth Required." broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,reject_rbl_client smtpd_sasl_path = private/auth smtpd_sasl_type = dovecot
PS: 启动saslauthd和postfix
步骤9 - 安装Dovecot
yum install dovecot 或 apt-get install dovecot
步骤10 - 配置Dovecot
vim /etc/dovecot/dovecot.conf protocols = imap pop3 lmtp listen = * mail_location = maildir:~/Maildir
步骤11 - 启动Dovecot
通过service dovecot start
或/etc/init.d/dovecot start
启动dovecot
启动后查看下端口信息,POP3默认端口是110,IMAP默认端口143
步骤12 - 测试Dovecot
- 检测POP3服务
[root@mail ~]# telnet localhost 110 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK Dovecot ready.
PS:quit退出
- 检测IMAP服务
[root@mail ~]# telnet localhost 143 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
PS:e logout退出
步骤13 - 新建用户
邮件用户对应的就是系统的用户,可以通过useradd添加用户
useradd test passwd test
步骤14 - 客户端连接
通过foxmail、outlook设置邮箱,其中认证部分需要用用户名+密码登录,用户名不用带后缀
,否则会提示帐号密码错误
步骤15 - 完成
以上是配置邮箱的所有步骤
写在最后
最最重要
:如果用户量、发送量、容量要求不大,可以使用第三方免费企业邮,如网易企业邮、腾讯企业邮,这样不用自己去维护. 上面只是邮件系统的简单版,还需要添加垃圾邮件机制、用户管理等.