CentOS 7.2下安装部署邮件服务器(Postfix)的步骤详解
程序员文章站
2022-06-29 08:30:50
本文主要介绍的是在centos 7.2安装部署邮件服务器(postfix)的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:
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
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。