Linux基础学习-Postfix与Dovecot部署邮件系统

电子邮件系统

电子邮件系统是我们在日常工作、生活中最常用的一种网络服务。

部署基础的电子邮件系统

[root@qdlinux ~]# yum install bind-chroot -y
[root@qdlinux ~]# vim /etc/hostname 
[root@qdlinux ~]# hostname
mail.linuxprobe.com

//清空iptables防火墙默认策略,并保存策略状态
[root@qdlinux ~]# iptables -F
[root@qdlinux ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  确定  ]

[root@qdlinux ~]# vim /etc/named.conf 

options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };

[root@qdlinux ~]# vim /etc/named.rfc1912.zones 
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update { none; };
};

// cd /var/named
[root@qdlinux named]# cp -a named.localhost linuxprobe.com.zone
[root@qdlinux named]# vim linuxprobe.com.zone 
$TTL 1D
@       IN SOA  linuxprobe.com. root.linuxprobe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.linuxprobe.com.
ns      IN A    192.168.56.25
@       IN MX 10 mail.linuxprobe.com.
mail    IN A    192.168.56.25

[root@qdlinux named]# systemctl restart named
[root@qdlinux named]# systemctl enable named
ln -s '/usr/lib/systemd/system/named.service' '/etc/systemd/system/multi-user.target.wants/named.service'

配置Postfix服务程序

Postfix是一款由IBM资助研发的免费开源电子邮件服务程序,能够很好地兼容Sendmail服务程序,可以方便Sendmail用户迁移到Postfix服务上.

参数 作用
myhostname 邮局系统的主机名
mydomain 邮局系统的域名
myorigin 从本机发出的邮件的域名名称
inet_interfaces 监听的网卡接口
mydestination 可接受邮件的主机名或域名
mynetworks 设置可转发哪些主机的邮件
relay_domains 设置可转发哪些网域的邮件
[root@qdlinux named]# yum install postfix
[root@qdlinux named]# vim /etc/postfix/main.cf 

77 myhostname = mail.linuxprobe.com
84 mydomain = linuxprobe.com
100 myorgin = $mydomain
117 inet_interfaces = all
165 mydestination = $myhostname, $mydomain

//添加本地用户创建密码用于电子邮件系统登录账户
[root@mail named]# systemctl restart postfix.service 
[root@mail named]# systemctl enable postfix

配置Dovecot服务程序

[root@mail named]# yum install dovecot -y
[root@mail named]# vim /etc/dovecot/dovecot.conf 
 25 protocols = imap pop3 lmtp
 26 disable_plaintext_auth = no
 51 login_trusted_networks = 192.168.56.0/24
[root@mail named]# vim /etc/dovecot/conf.d/10-mail.conf 
 24 #   mail_location = maildir:~/Maildir
 25 #   mail_location = mbox:~/mail:INBOX=/var/mail/%u
 26    mail_location = mbox:~/mail:INBOX=/var/mail/%u

[root@mail named]# su - wgzll
上一次登录:二 8月 21 08:52:59 CST 2018:0 上
ABRT has detected 1 problem(s). For more info run: abrt-cli list --since 1534813209
[wgzll@mail ~]$ id
uid=1000(wgzll) gid=1000(wgzll) 组=1000(wgzll),10(wheel) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[wgzll@mail ~]$ mkdir -p mail/.imap/INBOX

[root@mail named]# systemctl restart dovecot
[root@mail named]# systemctl enable dovecot
ln -s '/usr/lib/systemd/system/dovecot.service' '/etc/systemd/system/multi-user.target.wants/dovecot.service'
[root@mail named]# systemctl restart postfix.service 
[root@mail named]# systemctl enable postfix

测试电子邮件系统

主机名称 操作系统 IP地址
电子邮件系统及DNS服务器 RHEL7 192.168.56.25
客户端主机 Windows 7 192.168.56.30
[root@mail named]# mail
Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/spool/mail/root": 2 messages 2 new
>N  1 user@localhost.xyz    Tue Aug 21 09:20 170/6951  "[abrt] full crash report"
 N  2 wgzll                 Sat Aug 25 20:38 119/3662  "Hello~"
& 2
Message  2:
From wgzll@linuxprobe.com  Sat Aug 25 20:38:05 2018
Return-Path: <wgzll@linuxprobe.com>
X-Original-To: root@linuxprobe.com
Delivered-To: root@linuxprobe.com
From: "wgzll" <wgzll@linuxprobe.com>
To: <root@linuxprobe.com>
Subject: Hello~
Date: Sat, 25 Aug 2018 20:38:06 +0800
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0001_01D43CB3.872C58B0"
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: AdQ8cHcGmIa/AAncTiqrA9WpZ+Lqew==
Content-Language: zh-cn
x-cr-hashedpuzzle: oeE= 5hM= ALkx CcEg CvVx EJgt EYbg GBXk GQ56 GSqZ GnVQ Ig73 JIgR Jbgs J
9/E KqFk;1;cgBvAG8AdABAAGwAaQBuAHUAeABwAHIAbwBiAGUALgBjAG8AbQA=;Sosha1_v1;7;{B434BAF0-D9B5
-4FEF-8935-91553750D981};dwBnAHoAbABsAEAAbABpAG4AdQB4AHAAcgBvAGIAZQAuAGMAbwBtAA==;Sat, 25 
Aug 2018 12:38:03 GMT;SABlAGwAbABvAH4A
x-cr-puzzleid: {B434BAF0-D9B5-4FEF-8935-91553750D981}
Status: R

Content-Type: text/plain;
	charset="gb2312"

当您收到这封邮件时,证明我的邮局系统试验已经成功!
& quit
Held 2 messages in /var/spool/mail/root
您在 /var/spool/mail/root 中有邮件

设置用户别名信箱

[root@mail named]# cat /etc/aliases
#
#  Aliases in this file will NOT be expanded in the header from
#  Mail, but WILL be visible over networks or from /bin/mail.
#
#	>>>>>>>>>>	The program "newaliases" must be run after
#	>> NOTE >>	this file is updated for any changes to
#	>>>>>>>>>>	show through to sendmail.
#

# Basic system aliases -- these MUST be present.
mailer-daemon:	postmaster
postmaster:	root

# General redirections for pseudo accounts.
bin:		root
daemon:		root
adm:		root
lp:		root
sync:		root
shutdown:	root
halt:		root
mail:		root
news:		root
uucp:		root
operator:	root
games:		root
gopher:		root
ftp:		root
nobody:		root
radiusd:	root
nut:		root
dbus:		root
vcsa:		root
canna:		root
wnn:		root
rpm:		root
nscd:		root
pcap:		root
apache:		root
webalizer:	root
dovecot:	root
fax:		root
quagga:		root
radvd:		root
pvm:		root
amandabackup:		root
privoxy:	root
ident:		root
named:		root
xfs:		root
gdm:		root
mailnull:	root
postgres:	root
sshd:		root
smmsp:		root
postfix:	root
netdump:	root
ldap:		root
squid:		root
ntp:		root
mysql:		root
desktop:	root
rpcuser:	root
rpc:		root
nfsnobody:	root

ingres:		root
system:		root
toor:		root
manager:	root
dumper:		root
abuse:		root

newsadm:	news
newsadmin:	news
usenet:		news
ftpadm:		ftp
ftpadmin:	ftp
ftp-adm:	ftp
ftp-admin:	ftp
www:		webmaster
webmaster:	root
noc:		root
security:	root
hostmaster:	root
info:		postmaster
marketing:	postmaster
sales:		postmaster
support:	postmaster


# trap decode to catch security attacks
decode:		root

# Person who should get root's mail
#root:		marc

------------------------------------------------------------------------
------------------------------------------------------------------------
[root@mail named]# mail
Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/spool/mail/root": 3 messages 1 new 2 unread
 U  1 user@localhost.xyz    Tue Aug 21 09:20 171/6961  "[abrt] full crash report"
    2 wgzll                 Sat Aug 25 20:38 120/3673  "Hello~"
>N  3 wgzll                 Sat Aug 25 21:06 118/3583  "你好,用户Bin"
& 3
Message  3:
From wgzll@linuxprobe.com  Sat Aug 25 21:06:18 2018
Return-Path: <wgzll@linuxprobe.com>
X-Original-To: bin@linuxprobe.com
Delivered-To: bin@linuxprobe.com
From: "wgzll" <wgzll@linuxprobe.com>
To: <bin@linuxprobe.com>
Subject: 你好,用户Bin
Date: Sat, 25 Aug 2018 21:06:19 +0800
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0006_01D43CB7.783380F0"
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: AdQ8dGhJfCWNrEMJQdynqCBhnZ8rHQ==
Content-Language: zh-cn
x-cr-hashedpuzzle: hBM= CDJ0 CMXa CxHz DMZJ Eusa FJ2V GSHH GqwB GvwW I7Kc I8yv JPcS J+7K K
Qci KTEA;1;YgBpAG4AQABsAGkAbgB1AHgAcAByAG8AYgBlAC4AYwBvAG0A;Sosha1_v1;7;{FEA2CB4E-66DB-46A
6-B45B-893EBA119A6F};dwBnAHoAbABsAEAAbABpAG4AdQB4AHAAcgBvAGIAZQAuAGMAbwBtAA==;Sat, 25 Aug 
2018 13:06:16 GMT;YE99WSwAKHU3YkIAaQBuAA==
x-cr-puzzleid: {FEA2CB4E-66DB-46A6-B45B-893EBA119A6F}
Status: R

Content-Type: text/plain;
	charset="gb2312"

这是一封发给用户Bin的文件.

& quit
Held 3 messages in /var/spool/mail/root
您在 /var/spool/mail/root 中有邮件

[root@mail named]# mail wgzll@linuxprobe.com
Subject: 你好,wgzll
你好,这是一封测试邮件!!!
.
EOT

原文地址:https://www.cnblogs.com/qdlinux/p/9636645.html