搭建邮箱服务器

Sakura 发布于 2023-10-08 182 次阅读


# 禁用SELINUX
vi /etc/selinux/config
SELINUX=disabled

# 设置时区语言
localectl set-locale LANG='zh_CN.UTF-8'

# 禁用防火墙
systemctl disable firewalld

# 卸载sendmail
yum remove -y sendmail*

#  配置域名映射
vim /etc/hosts
127.0.0.1   mail.canistudy.com canistudy.com

# 安装Postfix
yum install -y postfix

# Postfix服务配置
# 备份配置文件
cp /etc/postfix/main.cf /etc/postfix/main.cf.back

# 编辑配置文件
vim /etc/postfix/main.cf
    myhostname = mail.canistudy.com # 设置域名
    mydomain = canistudy.com # 设置邮箱后缀
    myorigin = $mydomain # 设置监听地址
    inet_interfaces = all # 监听所有网卡
    #inet_interfaces = localhost # 注释掉
    inet_protocols = ipv4 # 打开IPV4或者IPV6
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain # 设置能够接收信件的主机名称
    mynetworks = 0.0.0.0/0 # 设置指定受信任SMTP的列表(受信任的SMTP客户端允许通过Postfix传递邮件)
    relay_domains = $mydestination # 设置转发邮件域名
    alias_maps = hash:/etc/aliases # 设置邮件别名路径
    alias_database = hash:/etc/aliases  # 设置邮件别名数据库路径

# 安装cyrus-sasl
rpm -qa|grep cyrus
yum install -y cyrus-sasl*

# 安装Dovecot
yum install -y dovecot*
# Dovecot服务配置
vim /etc/dovecot/dovecot.conf
    protocols = imap pop3 lmtp # 开启imap pop3 lmtp
    listen = * # 监听全部

# 配置禁止SSL登录,同时设置邮箱路径
vim /etc/dovecot/conf.d/10-ssl.conf
    ssl = no
vim /etc/dovecot/conf.d/10-auth.conf
    disable_plaintext_auth = no
vim /etc/dovecot/conf.d/10-mail.conf
    mail_location = mbox:~/mail:INBOX=/var/mail/%u

# 创建用户、邮箱、开启服务
useradd -s /sbin/nologin test
echo 123456|passwd --stdin test
# 创建邮箱并设置权限
mkdir -p /home/test/mail/.imap/INBOX
chown -R test.test /home/test

# 开启服务
systemctl enable postfix
systemctl enable dovecot
systemctl enable saslauthd
systemctl restart postfix
systemctl restart dovecot
systemctl restart saslauthd

# 检查端口是否以及在启用(此时监听25、110、143端口)
yum install -y net-tools  #安装TCP/IP工具箱
netstat -tnl

# 配置域名解析
![](https://oss.canistudy.com/canistudy/2023/10/20231008184144719.png)

# Postfix别名设置
# Postfix服务器中可以使用aliases机制属性邮件别名和邮件群发功能,也可以创建用户组,将用户加入某个组中,实现邮件群发
# 在/etc目录下存在aliases和aliases.db两个文件
# aliases是文本文件可以编辑修改
# aliases.db是数据库文件,是由aliases文本文件通过命令newaliases生成
vim /etc/aliases
    admin:          yangwn,test#生成数据库文件
    newaliases#修改Postfix配置文件确保邮件别名路径和邮件别名数据库路径已经设置
vim /etc/postfix/main.cf
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases
    postmap hash:/etc/postfix/access
    postalias hash:/etc/aliases #重启sendmail服务

systemctl restart postfix