CentOS 7.2下安装部署邮件服务器(Postfix)的步骤详解

 更新时间:2017年05月09日 10:22:11   作者:流水无痕  
Postfix 是一种电子邮件服务器,下面这篇文章主要给大家介绍了在CentOS 7.2下安装部署邮件服务器(Postfix)的步骤全过程,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。

本文主要介绍的是在CentOS 7.2安装部署邮件服务器(Postfix)的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:

Postfix 是一种电子邮件服务器,它是由任职于IBM华生研究中心(T.J. Watson Research Center)的荷兰籍研究员Wietse Venema为了改良sendmail邮件服务器而产生的。最早在1990年代晚期出现,是一个开放源代码的软件。

注意:以下所有配置的命名都是根据主机的hostname变量来配置的,如果hostname更换了的话,需要重新生成证书。

生成ssl证书

1、生成证书的脚本代码

以hostname为命名生成证书,运行脚本后需输入四次相同密码(密码须包含数字和字母)

#!/bin/sh
rm -rf $(hostname).*

openssl genrsa -des3 -out $(hostname).key 1024

SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$(hostname)"

openssl req -new -subj $SUBJECT -key $(hostname).key -out $(hostname).csr

mv $(hostname).key $(hostname).origin.key

openssl rsa -in $(hostname).origin.key -out $(hostname).key

openssl x509 -req -days 3650 -in $(hostname).csr -signkey $(hostname).key -out $(hostname).crt

cp $(hostname).crt /etc/pki/tls/certs/$(hostname).crt
cp $(hostname).key /etc/pki/tls/certs/$(hostname).key

echo "the key path:/etc/pki/tls/certs/$(hostname).key"
echo "the crt path:/etc/pki/tls/certs/$(hostname).crt"

rm -rf $(hostname).*

Postfix安装及配置

安装

yum -y install postfix

配置

vim /etc/postfix/main.cf

# line 75: uncomment and specify hostname
myhostname = $(hostname)

# line 83: uncomment and specify domain name
mydomain = test.cn

# line 99: uncomment
myorigin = $mydomain

# line 116: change
inet_interfaces = all

# line 164: add
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

# line 264: uncomment and specify your local network
mynetworks = 127.0.0.0/8, 10.0.0.0/24

# line 419: uncomment (use mailboxdir)
home_mailbox = mailbox/

# line 574: add
smtpd_banner = $myhostname ESMTP


# 在配置文件尾部追加以下内容

# limit an email size for 10M
message_size_limit = 10485760

# limit a mailbox for 1G
mailbox_size_limit = 1073741824

# for SMTP-Auth
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/tls/certs/$(hostname).crt
smtpd_tls_key_file = /etc/pki/tls/certs/$(hostname).key
smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache

vim /etc/postfix/master.cf

# line 26-28: uncomment
smtps  inet n  -  n  -  -  smtpd
 -o syslog_name=postfix/smtps
 -o smtpd_tls_wrappermode=yes

Dovecot 安装及配置

安装

yum -y install dovecot

配置

vim /etc/dovecot/dovecot.conf

# line 24: uncomment
protocols = imap pop3 lmtp
# line 30: uncomment and change ( if not use IPv6 )
listen = *

vim /etc/dovecot/conf.d/10-auth.conf

# line 10: uncomment and change ( allow plain text auth )
disable_plaintext_auth = no
# line 100: add
auth_mechanisms = plain login

vim /etc/dovecot/conf.d/10-mail.conf

# line 30: uncomment and add
mail_location = maildir:~/Maildir

vim /etc/dovecot/conf.d/10-master.conf

# line 96-98: uncomment and add like follows
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
 mode = 0666
 user = postfix
 group = postfix
}

vim /etc/dovecot/conf.d/10-ssl.conf

# line 8: change
ssl = yes
# line 14,15: specify certificates
ssl_cert = </etc/pki/tls/certs/$(hostname).crt
ssl_key = </etc/pki/tls/certs/$(hostname).key

运行

systemctl restart postfix
systemctl enable postfix
systemctl start dovecot
systemctl enable dovecot

firewall-cmd --add-service=smtp --permanent
firewall-cmd --add-port={110/tcp,143/tcp} --permanent
firewall-cmd --add-service={pop3s,imaps} --permanent
firewall-cmd --add-port=465/tcp --permanent
firewall-cmd --reload

邮件日志报告pflogsumm

安装

yum -y install postfix-perl-scripts

查看

perl /usr/sbin/pflogsumm -d yesterday /var/log/maillog

每天1:00AM 定时发送邮件日志摘要到根

crontab -e
00 01 * * * perl /usr/sbin/pflogsumm -e -d yesterday /var/log/maillog | mail -s 'Logwatch for Postfix' root

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • linux后台启动Jar包打印日志方式(windows10)

    linux后台启动Jar包打印日志方式(windows10)

    这篇文章主要介绍了linux后台启动Jar包打印日志方式(windows10),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • linux系统之进程管理详解

    linux系统之进程管理详解

    大家好,本篇文章主要讲的是linux系统之进程管理详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Centos7下用户登录失败N次后锁定用户禁止登陆的方法

    Centos7下用户登录失败N次后锁定用户禁止登陆的方法

    这篇文章主要给大家介绍了关于在Centos7系统下用户登录失败N次后锁定用户禁止登陆的相关资料,文中先对PAM的配置文件进行了简单的介绍,然后通过示例代码将实现的方法介绍的非常详细,对大家的学习或者工作具有一定的参考价值,需要的朋友们下面随着小编来一起看看吧。
    2018-01-01
  • Linux下Apache HTTP Server 2.4.26安装教程

    Linux下Apache HTTP Server 2.4.26安装教程

    这篇文章主要为大家详细介绍了Linux下Apache HTTP Server 2.4.26的安装,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Linux发邮件之mail命令详解

    Linux发邮件之mail命令详解

    这篇文章主要介绍了Linux发邮件之mail命令详解,详细的讲解了mail命令的用法等,非常具有实用价值,需要的朋友可以参考下。
    2016-12-12
  • 使用‘fsck’修复Linux中文件系统错误的方法

    使用‘fsck’修复Linux中文件系统错误的方法

    这篇文章主要给大家介绍了关于如何使用'fsck'修复Linux中文件系统错误的相关资料,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • linux让程序开机自动运行最简单的方法

    linux让程序开机自动运行最简单的方法

    在本篇文章里小编给大家整理的是一篇关于linux让程序开机自动运行最简单的方法以及相关代码,需要的朋友们学习下。
    2019-11-11
  • 如何优雅地删除 Linux 中的垃圾文件的方法

    如何优雅地删除 Linux 中的垃圾文件的方法

    这篇文章主要介绍了如何优雅地删除 Linux 中的垃圾文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 关于Linux下conda安装caffe与pb转caffe问题

    关于Linux下conda安装caffe与pb转caffe问题

    这篇文章主要介绍了关于Linux下conda安装caffe与pb转caffe问题,文中以图文说明了conda安装caffe的方法,需要的朋友可以参考下
    2023-03-03
  • Linux内核宏container_of的深度剖析

    Linux内核宏container_of的深度剖析

    今天小编就为大家分享一篇关于Linux内核宏container_of的深度剖析,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02

最新评论