Mail服务器安装配置与使用

443 阅读3分钟

一、关闭防火墙

# 关闭防火墙
systemctl stop firewalld    
# 禁止防火墙开机自启动
systemctl disable firewalld 
# 查看防火墙状态
systemctl status firewalld  

将未注释的SELINUX行的值改为disabled
vim /etc/sysconfig/selinux
SELINUX=disabled

二、搭建DNS环境

1. 安装DNS服务器
# 安装DNS服务器
yum install -y bind

vim /etc/hostname

将主机名更改为邮件服务器域名 mail.test.com

vim /etc/named.conf

修改这两行的内容:

listen-on port 53 { any; };
allow-query { any; };

2. 修改子配置文件

vim /etc/named.rfc1912.zones

在结尾处添加一个正向和一个反向解析区域 (IP改为自己的IP地址)

zone "test.com" IN {
        type master;
        file "test.com.zone";
};

zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "test.com.local";
};  
3. 进入DNS服务器区域配置文件目录
cd /var/named/ 
# 复制模板区域配置文件为指定区域配置文件。保留源文件权限,确定属组为named
cp -p named.localhost test.com.zone
cp -p named.localhost test.com.local 
4. 编辑正反向区域配置文件(在cd /var/named/目录中) (IP改为自己的IP地址)

vim test.com.zone

vim test.com.local

5. 启动DNS域名解析服务器
  • 给本机的DNS指向自己的dns服务器
    vim /etc/resolv.conf
nameserver 192.168.1.3
  • 启动后测试
# 启动
systemctl start named

# 安装nslookup命令测试dns能否解析成功
yum install -y bind-utils
  • 解析服务器地址测试

[root@mail named]nslookup mail.test.com # 正向解析

Server:192.168.1.3

Address:192.168.1.3#53

Name:mail.test.com

Address: 192.168.1.3

[root@mail named] nslookup 192.168.1.3# 反向解析

3.1.168.192.in-addr.arpa         name = mail.test.com. # 成功

三、安装postfix服务进行收发件测试

一般Centos7是默认自动安装postfix服务器的。检查系统是否已经安装了postfix服务器,使用以下命令

[root@mail named] rpm -q postfix

postfix-2.10.1-6.el7.x86_64

检查postfix是否支持cyrus dovecot功能.

[root@mail named]postconf -a

cyrus

dovecot

1. postfix配置

vim /etc/postfix/main.cf

  • 在配置文件中修改以下参数
myhostname = mail.test.com //本机主机名
mydomain = test.com        //服务器域名
myorigin = $mydomain       //初始域名
inet_interfaces = all      //监听接口
inet_protocols = ipv4      //监听网络版本,可以不改
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
home_mailbox = Maildir/    //邮件目录,在用户家目录下       
  • 启动后设置用户和密码 请记住设置的密码
#检查配置文件是否有语法错误
[root@mail named] postfix check 
# 启动postfix服务器
[root@mail named] systemctl start postfix

# 添加邮件账号组
groupadd mailusers 

# 设置用户jack和tom                        
useradd -g mailusers -s /sbin/nologin jack 
passwd jack
useradd -g mailusers -s /sbin/nologin tom
passwd tom                                
2. 邮件服务器发件测试
# 安装远程登录插件,用于登录25端口测试
yum install -y telnet       

# 重启postfix服务
systemctl restart postfix

远程登录25端口,如报错连接不上,重启postfix

[root@mail ~] telnet mail.test.com 25

Trying 192.168.1.3...

Connected to mail.test.com.

Escape character is '^]'.

220 mail.test.com ESMTP Postfix

mail from:<root@test.com>

250 2.1.0 Ok

rcpt to:jack

250 2.1.5 Ok

data

354 End data with <CR><LF>.<CR><LF>

Hello, this is a test mail.

.

250 2.0.0 Ok: queued as 6B1E6801BBC

quit

221 2.0.0 Bye

Connection closed by foreign host.

[root@mail ~] tail /var/log/maillog|grep sent # 查看发送状态

Dec 10 11:23:31 mail postfix/local[7136]: 6B1E6801BBC: to=jack@test.com, orig_to=, relay=local, delay=33, delays=33/0.01/0/0, dsn=2.0.0, status=sent (delivered to maildir)

3. 邮件服务器收件测试
# 在Mail服务器上安装配置Dovecot以接收邮件
yum install -y dovecot   
  • 修改这三个配置文件
 vim /etc/dovecot/dovecot.conf 
 protocols = imap pop3 lmtp
 listen = *, ::
      
 vim /etc/dovecot/conf.d/10-auth.conf
 disable_plaintext_auth = no 

 vim /etc/dovecot/conf.d/10-mail.conf
 mail_location = maildir:~/Maildir 
     
 # 重启服务   
 systemctl restart dovecot

[root@mail ~] telnet mail.test.com 110

Trying 192.168.1.3...

Connected to mail.test.com.

Escape character is '^]'.

+OK Dovecot ready.

user jack

+OK

pass admin      # 这里格式为pass+密码,我前面设置的密码是admin,改为自己的密码。

+OK Logged in.

list

+OK 1 messages:

1 404

.

retr 1 (输入邮件编号查看邮件,需要自行输入)

+OK 404 octets

Return-Path: root@test.com

X-Original-To: jack

Delivered-To: jack@test.com

Received: from mail.test.com (mail.test.com [192.168.1.3])

by mail.test.com (Postfix) with SMTP id 6B1E6801BBC

for ; Tue, 10 Dec 2024 11:22:58 +0800 (CST)

Message-Id: 20241210032311.6B1E6801BBC@mail.test.com

Date: Tue, 10 Dec 2024 11:22:58 +0800 (CST)

From: root@test.com

Hello, this is a test mail.

.

quit

+OK Logging out.

Connection closed by foreign host.


相关文章