Postfix邮件系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Postfix邮件系统相关的知识,希望对你有一定的参考价值。
邮件服务器是一种用来负责电子邮件收发管理的设备。它比网络上的免费邮箱更安全和高效,因此一直是企业公司的必备设备。
本次实验是由DNS、postfix、dovecot服务共同组建成为邮件服务器
实验准备
- linux虚拟机(Red Hat Enterprise 6.5)
- 主机IP192.168.175.101
实验开始
搭建邮箱地址解析(DNS)服务
DNS服务如何搭建,我在之前的文章中有过介绍,本篇中就简单介绍。
rpm安装named软件
- 主配置文件中修改监听地址和允许解析的主机地址
- 区域配置文件中,设置服务器名称及区域数据配置文件名称(配置在正向解析区域)
- 复制模板,修改配置文件,文件复制时,需要注意的是要保留文件的属组、属主。(cp -p)
- 指定DNS地址
echo "nameserver 192.168.175.101" >> /etc/resolv.conf
启动服务并测试解析结果
service named start //启动dns服务
搭建postfix服务
rpm安装postfix软件
修改配置文件//etc/postfix/main.cf
inet_interfaces = all //监听服务的IP地址
#inet_interfaces = localhost //注释掉这一行
myhostname = mail.benet.com //邮件服务器主机名
mydomain = benet.com //邮件域名
myorigin = $mydomain //发件人地址邮件域名
mydestination = $mydomain, $myhostname //收件人地址邮件域名
home_mailbox = Maildir/ //邮件存放位置
重启服务
service postfix restart //重启postfix‘服务
搭建dovecot服务
rpm安装软件
rpm -ivh /mnt/Packages/dovecot-2.0.9-7.el6.x86_64.rpm
修改配置文件/etc/dovecot/dovecot.conf
protocols = imap pop3 lmtp //开启协议
login_trusted_networks = 192.168.175.0/24 //指定服务器所在网段
修改配置文件/etc/dovecot/conf.d/10-mail.conf,开启邮箱位置及格式
mail_location = maildir:~/Maildir //去掉行首#即可
收发邮件测试
发送邮件
接收邮件
shell脚本快速搭建邮箱服务器
系统不同脚本编写也不尽相同,仅供参考
#!/bin/bash
#提供邮件服务
#搭建DNS服务
#安装软件
rpm -ivh /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm
#配置主配置文件
sed -i ‘s/127.0.0.1/any/‘ /etc/named.conf
sed -i ‘s/localhost;/any;/‘ /etc/named.conf
echo "主配置文件修改成功"
#配置区域配置文件
sed -i ‘24c zone "benet.com" IN {\ntype master;\nfile "benet.com.zone";\nallow-update { none; };\n};‘ /etc/named.rfc1912.zones
echo "区域配置文件修改成功"
#配置区域数据配置文件
cp -p /var/named/named.localhost /var/named/benet.com.zone
sed -i ‘s/@ rname.invalid./benet.com. admin.benet.com./‘ /var/named/benet.com.zone
sed -i ‘s/127.0.0.1/192.168.175.101/‘ /var/named/benet.com.zone
sed -i ‘10c IN MX 5 benet.com.\nmail IN A 192.168.175.101‘ /var/named/benet.com.zone
echo "区域数据配置文件修改成功"
#关闭防火墙及selinux防火墙
service iptables stop
setenforce 0
#启动服务
service named start
echo "nameserver 192.168.175.101" >> /etc/resolv.conf
host mail.benet.com
#修改postfix配置文件
sed -i ‘s/#inet_interfaces = all/inet_interfaces = all/‘ /etc/postfix/main.cf
sed -i ‘s/inet_interfaces = localhost/#inet_interfaces = localhost/‘ /etc/postfix/main.cf
sed -i ‘s/#myhostname = host.domain.tld/myhostname = mail.benet.com/‘ /etc/postfix/main.cf
sed -i ‘s/#mydomain = domain.tld/mydomain = benet.com/‘ /etc/postfix/main.cf
sed -i ‘s/#myorigin = $myhostname/myorigin = $mydomain/‘ /etc/postfix/main.cf
sed -i ‘s/mydestination = $myhostname, localhost.$mydomain, localhost/mydestination = $mydomain, $myhostname/‘ /etc/postfix/main.cf
sed -i ‘s/#home_mailbox = Maildir/home_mailbox = Maildir/‘ /etc/postfix/main.cf
echo "main.cf配置文件修改完成"
service postfix restart
echo "服务启动完成"
#安装dovecot软件
rpm -ivh /mnt/Packages/dovecot-2.0.9-7.el6.x86_64.rpm
#修改dovecot.conf配置文件
sed -i "20c protocols = imap pop3 lmtp" /etc/dovecot/dovecot.conf
sed -i "38c login_trusted_networks = 192.168.175.0/24" /etc/dovecot/dovecot.conf
echo "dovecot.conf配置文件修改完成"
sed -i "24c mail_location = maildir:~/Maildir" /etc/dovecot/conf.d/10-mail.conf
echo "10-mail.conf修改完成"
service dovecot start
#创建测试用账号
groupadd mailusers
useradd -g mailusers -s /sbin/nologin zhangsan
echo "123123" | passwd --stdin zhangsan
useradd -g mailusers -s /sbin/nologin lisi
echo "123123" | passwd --stdin lisi
echo "测试账号zhangsan,lisi创建完成"
以上是关于Postfix邮件系统的主要内容,如果未能解决你的问题,请参考以下文章