背景
为了某些不可告人的秘密,我决定搭建一个自己的邮箱服务器。
当然,被人要你的邮箱的时候,你拿出自己域名的邮箱,也挺有场(zhuang)子(bi)的。
资源准备
ubuntu公网服务器一台(其他linux系统同理)
有效一级域名一个,假设是
example.com
若干邮件客户端、其他邮箱账户,供测试用
配置步骤
配置DNS解析
配置DNS是为了告诉其他人,你的域名收发件服务器是哪一个;以及防止自己的邮件被其他站点认为是垃圾邮件(这一点折腾了我很久,所以先写)
配置一下几条记录
主机记录 | 记录类型 | 记录值 | 备注 |
---|---|---|---|
@ | A | <server ip> |
这一点其实容易忽略,但是如果不把你的一级域名直接指向你的邮箱服务器,gmail很可能把你的邮件扔到垃圾邮件里面。 |
A | <server ip> |
这里的“mail”其实可以为任意值,通常为“mail” | |
@ | MX | mail.example.com |
指定你的域名的收发件服务器是哪个 |
@ | TXT | v=spf1 a mx -all |
配置SPF记录,用于反垃圾邮件,想进一步了解可以查阅相关资料 |
_dmarc | TXT | v=DMARC1;p=none;rua=yourname@example.com |
配置DMARC记录,用于反垃圾邮件,想进一步了解可以查阅相关资料 |
smtp | CNAME | mail.example.com |
|
pop3 | CNAME | mail.example.com |
|
imap | CNAME | mail.example.com |
以上为常用地址 |
配置主机名hostname
执行命令sudo hostnamectl set-hostname mail.example.com
重启机器。
安装postfix
postfix是用来做“对外”任务的,就是与其他站点进行收发件交互。
执行命令sudo apt install postfix
一路确定,除了第二步,输入example.com
。
然后执行命令sudo vim /etc/postfix/main.cf
修改配置文件。
这里先上我的配置文件。
1 | smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) |
安装dovecot
dovecot是用来做“对内”任务的,就是与各个邮箱客户端进行同步(毕竟我们不能每次都登陆这台主机来收发邮件)
执行命令sudo apt install dovecot-common dovecot-imapd dovecot-pop3d
dovecot完整的配置文件比较复杂。
先进入/etc/dovecot/conf.d/
打开10-master.conf
,找到第95行,修改为如下:
1 | unix_listener /var/spool/postfix/private/auth { |
打开10-auth.conf
,找到第100行,修改为:
auth_mechanisms = plain login
打开10-mail.conf
,找到第30行,修改为:
mail_location = maildir:~/.Mail
注:此处与postfix配置文件中的home_mailbox
一项配置相同即可。
打开20-pop3.conf
,找到第50行,去除注释:
pop3_uidl_format = %08Xu%08Xv
重启
sudo service postfix restart
sudo service dovecot restart
此时,使用邮箱客户端即可连接使用。
服务器内所有都可以登陆。
smtp: smtp.example.com port: 25
imap: imap.example.com port: 143
pop3: pop3.example.com port: 110
后续
下一篇文章将会讲解如何配置postfix及dovecot的SSL证书。