1. 背景 这里介绍一下我在Centos 7上搭建邮件服务器的过程。 邮件服务器:mail.test.com
2. 系统环境 系统平台: CentOS 7 系统IP:192.168.66.214
关闭防火墙
1 2 systemctl stop firewalld systemctl disable firewalld
3. 搭建过程 3.1 搭建dns服务器 3.1.1 安装bind软件包 1 2 3 4 5 6 7 yum -y install bind * systemctl start named.service systemctl enable named.service netstat -anlp | grep named
3.1.2 修改配置 修改DNS服务的配置
在上面的配置文件中我们只需要修改其中两行
1 2 3 4 5 ... listen-on port 53 { any; }; ... allow-query { any; }; ...
添加域的信息到配置文件中
1 vim /etc/named.rfc1912.zones
在/etc/named.rfc1912.zones
文件最后添加如下内容,其中test.com
就是我使用的域名,读者可以根据自己的需要修改和添加其他的域名。
1 2 3 4 5 zone "test.com" IN { type master; file "data/test.com.zone"; allow-update {none;}; };
编辑域的信息配置文件
1 vim /var/named/data/test.com.zone
在该文件中添加如下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 $TTL 1D # 缓存时间 @ IN SOA test.com. root.test.com. ( 20221119 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ IN NS dns.test.com. # DNS服务器的域名地址 dns.test.com. IN A 192.168.66.214 # DNS服务器的IP地址 @ IN MX 10 mail.test.com # 邮件服务器的域名地址 mail IN A 192.168.66.214 # 邮件服务器IP地址 www.test.com. IN A 192.168.66.214 # 域名为test.com的IP地址 ftp.test.com. IN A 192.168.66.213 # 域名为ftp的IP地址
配置好后重启DNS服务
1 systemctl restart named.service
到这里,DNS服务器的配置就完成,剩下的就是读者找一台测试机,将测试机的DNS服务器地址设置为本机,进行测试了,也可以使用dig
直接测试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 $ dig @192.168.66.214 mail.test.com ; <<>> DiG 9.18.8 <<>> @192.168.66.214 mail.test.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6549 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: a0bff6936e959483909dbf8e637aebda6155562a66504ec0 (good) ;; QUESTION SECTION: ;mail.test.com. IN A ;; ANSWER SECTION: mail.test.com. 86400 IN A 192.168.66.214 ;; AUTHORITY SECTION: test.com. 86400 IN NS dns.test.com. ;; ADDITIONAL SECTION: dns.test.com. 86400 IN A 192.168.66.214 ;; Query time: 0 msec ;; SERVER: 192.168.66.214#53(192.168.66.214) (UDP) ;; WHEN: Mon Nov 21 11:09:14 CST 2022 ;; MSG SIZE rcvd: 120
3.2 搭建邮件服务器 3.2.1 准备环境 配置服务器主机名称,需要保证服务器主机名称与发信域名保持一致
1 2 cat /etc/hostname hostname
修改主机名为mail.test.com
1 2 hostnamectl set-hostname mail.test.com vim /etc/hosts
添加用户
1 2 useradd -m test passwd test
3.2.2 安装Postfix软件
3.2.3 配置Postfix 1 vim /etc/postfix/main.cf
调整如下几行
1 2 3 4 5 6 7 8 9 10 11 myhostname = mail.test.com mydomain = test.com myorigin = $mydomain inet_interfaces = all mydestination = $myhostname , $mydomain
重启postfix
服务
1 2 systemctl restart postfix systemctl enable postfix
3.2.4 安装Dovecot服务
3.2.5 配置Dovecot 1 vim /etc/dovecot/dovecot.conf
修改如下几行:
1 2 3 protocols = imap pop3 lmtp disable_plaintext_auth = no
1 vim /etc/dovecot/conf.d/10-mail.conf
修改如下几行:
1 2 # 设置邮件存储位置 mail_location = mbox:~/mail:INBOX=/var/mail/%u
1 2 3 su - test mkdir -p mail/.imap/INBOX exit
重启dovecot
服务
1 2 systemctl restart dovecot systemctl enable dovecot
4. 使用邮件客户端进行测试 这里使用了thunderbird
软件进行测试