注:大部分内容来自互联网,我做了一点整理和归纳。
1.MX记录
添加
mx mail.xxx.com. 10
a mail ipaddress
确保MX记录生效
#host -t mx xxx.com
xxx.com mail is handled by 10 mail.xxx.com. ← 确认MX记录生效
2.Postfix
安装
#yum -y install postfix
对Postfix进行配置。
[root@sample ~]# vi /etc/postfix/main.cf← 编辑Postfix的配置文件
#myhostname = host.domain.tld← 找到此行,将等号后面的部分改写为主机名
↓
myhostname = sample.centospub.com← 变为此状态,设置系统的主机名
#mydomain = domain.tld← 找到此行,将等号后面的部分改写为域名
↓
mydomain = centospub.com← 变为此状态,设置域名(我们将让此处设置将成为E-mail地址“@”后面的部分)
#myorigin = $mydomain← 找到此行,将行首的#去掉
↓
myorigin = $mydomain← 变为此状态,将发信地址“@”后面的部分设置为域名(非系统主机名)
inet_interfaces = localhost← 找到此行,将“localhost”改为“all”
↓
inet_interfaces = all← 变为此状态,接受来自所有网络的请求
mydestination = $myhostname, localhost.$mydomain, localhost← 找到此行,在行为添加“$mydomain”
↓
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain← 变为此状态,指定发给本地邮件的域名
#relay_domains = $mydestination← 找到此行,将行首的#去掉
↓
relay_domains = $mydestination← 变为此状态,定义允许转发的域名
#mynetworks = 168.100.189.0/28, 127.0.0.0/8← 找到此行,依照自己的内网情况修改
↓
mynetworks = 168.100.189.0/28, 127.0.0.0/8← 变为此状态,指定内网和本地的IP地址范围
#home_mailbox = Maildir/← 找到这一行,去掉行首的#
↓
home_mailbox = Maildir/← 变为此状态,指定用户邮箱目录
# SHOW SOFTWARE VERSION OR NOT
#
# The smtpd_banner parameter specifies the text that follows the 220
# code in the SMTP server’s greeting banner. Some people like to see
# the mail version advertised. By default, Postfix shows no version.
#
# You MUST specify $myhostname at the start of the text. That is an
# RFC requirement. Postfix itself does not care.
#
#smtpd_banner = $myhostname ESMTP $mail_name
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)← 找到这一行,接此行添加如下行:
smtpd_banner = $myhostname ESMTP unknow← 添加这一行,不显示SMTP服务器的相关信息
在配置文件的文尾,添加如下行:
smtpd_sasl_auth_enable = yes← 服务器使用SMTP认证
smtpd_sasl_local_domain = $myhostname← 指定SMTP认证的本地域名(主机名)
smtpd_sasl_security_options = noanonymous ← 不允许匿名的方式认证
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_security_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination←(very important)
message_size_limit = 15728640← 规定邮件最大尺寸为15MB
配置SMTP认证
[root@office-gw ~]# cat /usr/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd
[root@office-gw ~]# cat /etc/sysconfig/saslauthd
# Directory in which to place saslauthd's listening socket, pid file, and so
# on. This directory must already exist.
SOCKETDIR=/var/run/saslauthd
# Mechanism to use when checking passwords. Run "saslauthd -v" to get a list
# of which mechanism your installation was compiled with the ablity to use.
MECH=shadow
# Additional flags to pass to saslauthd on the command line. See saslauthd(8)
# for the list of accepted flags.
FLAGS=
建立用户的邮箱目录
首先建立用户模板下的邮箱目录,以便于建立新用户时,相应用户的邮箱目录自动被建立。
[root@sample ~]# mkdir /etc/skel/Maildir← 在用户模板下建立用户邮箱目录
[root@sample ~]# chmod 700 /etc/skel/Maildir← 设置用户邮箱目录属性为700
然后再为已经存在的用户建立相应邮箱目录。
[root@sample ~]# mkdir /home/centospub/Maildir ← 为用户(这里以centospub用户为例)建立邮箱目录
[root@sample ~]# chmod 700 /home/centospub/Maildir ← 设置该用户邮箱目录属性为700
[root@sample ~]# chown centospub. /home/centospub/Maildir ← 设置该用户邮箱目录为该用户所有
测试smtp验证
#testsaslauthd -u test -p 12345
0: OK "Success."
关闭sendmail服务及设置默认MTA
因为在用Postfix作为SMTP服务器的前提下,我们不准备再用sendmail,所以将sendmail服务关掉,以确保安全及节省系统资源。
[root@sample ~]# /etc/rc.d/init.d/sendmail stop ← 关闭sendmail服务
Shutting down sendmail: [ OK ]
Shutting down sm-client: [ OK ]
[root@sample ~]# chkconfig sendmail off ← 关闭sendmail自启动
[root@sample ~]# chkconfig –list sendmail ← 确认sendmail自启动已被关闭(都为off就OK)
sendmail 0:off 1:off 2:off 3:off 4:off 5:off 6:off
然后再将默认的MTA设置为Postfix。
[root@sample ~]# alternatives –config mta ← 设置默认MTA
There are 2 programs which provide ‘mta’.
Selection Command
———————————————–
*+ 1 /usr/sbin/sendmail.sendmail ← 当前状态:sendmail为默认MTA
2 /usr/sbin/sendmail.postfix
Enter to keep the current selection[+], or type selection number: 2 ← 在这里输入2,使Postfix成为默认MTA
最后启动相应的服务器
#service postfix start
#service saslauthd start
修改chkconfig启动服务列表
验证sendmail服务
telnet localhost 25 //输入helo localhost 此时应该有LOGIN PLAIN的字样,即表示SMTP认证设置成功。
[root@centos5 mail]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 centos5 ESMTP Sendmail 8.13.8/8.13.8; Thu, 6 May 2010 06:21:29 +0800
helo localhost
250 centos5 Hello localhost.localdomain [127.0.0.1], pleased to meet you
mail from:<test@localmail.com>
250 2.1.0 <test@localmail.com>… Sender ok
rcpt to:<testreceive@163.com>
(要测试向外发送邮件就填写网络上存在的邮件地址)
250 2.1.5 <testreceive@163.com>... Recipient ok
data
354 Enter mail, end with "." on a line by itself
From: alin
To: alin
Subject: Hello
test
.
250 2.0.0 o45MLTcH005157 Message accepted for delivery
quit
221 2.0.0 centos5 closing connection
Connection closed by foreign host.
3,POP服务器
POP / IMAP 是 MUA 从邮件服务器中读取邮件时使用的协议。其中,与 POP3 是从邮件服务器中下载邮件比起来,IMAP4 则是将邮件留在服务器端直接对邮件进行管理、操作。这里,我们用 Dovecot 来实现对 POP3 及 IMAP4 等协议支持的邮件接收服务器的搭建。
Dovecot 是一个比较新的软件,由 Timo Sirainen 开发,最初发布于 2002年7月。作者将安全性考虑在第一,所以 Dovecot 在安全性方面比较出众。另外,Dovecot 支持多种认证方式,所以在功能方面也比较符合一般的应用。
---------------------------------------------------------------------------------------------------------------------------------------------------
首先,安装 Dovecot
[root@sample ~]# yum -y install dovecot
修改相应配置文件,配置 Dovecot
[root@sample ~]# vi /etc/dovecot.conf ← 编辑Dovecot 的配置文件
#protocols = imap imaps ← 找到这一行,将协议设置为imap与pop3
protocols = imap pop3 ← 变为此状态
#default_mail_env = ← 找到这一行,定义邮件目录
default_mail_env = maildir:~/Maildir ← 定义邮件目录为用户目录下的Maildir目录
最后,启动 Dovecot ,并将其设置为自启动。
[root@sample ~]# chkconfig dovecot on ← 设置Dovecot为自启动
4.添加防火墙规则
由于 POP3 协议与 IMAP4 协议要分别用到110号和143号端口,所以在启动服务前,配置防火墙,开通这两个端口。
[root@sample ~]# vi /etc/sysconfig/iptables ← 编辑防火墙规则
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT ← 找到此行,接着添加如下两行:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT ← 允许POP使用的110号端口
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT ← 允许IMAP使用的143号端口
[root@sample ~]# /etc/rc.d/init.d/iptables restart ← 重新启动防火墙,使新的设置生效
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
分享到:
相关推荐
本安装文档将带你逐步了解如何在CentOS 5.2上配置和安装Postfix,以及整合Extmail来实现一个功能完备的邮件系统。 首先,让我们了解一下Postfix。Postfix是由Wietse Venema开发的一款邮件服务器,设计目标是安全、...
接下来,按照文档指导继续安装和配置Postfix与Extmail,这通常涉及复杂的步骤,包括但不限于: - **配置Postfix主配置文件**:编辑`/etc/postfix/main.cf`,设置邮件服务器的基本参数。 - **配置Extmail数据库**:...
然而,随着CentOS 5生命周期的结束,建议考虑升级到更现代的操作系统,如CentOS 8或使用RHEL,以获得更好的支持和安全性。同时,对于邮件系统的搭建,也要注意遵守相关的法规和标准,如SPF、DKIM和DMARC,以防止垃圾...
对于更复杂的部署,建议参考Postfix官方文档或相关教程进行深入学习。 在提供的文件中,"Linux源码编译安装postfix.pdf"可能是详细的步骤指南,"教程相关.rar"可能包含其他辅助资料,而"Linux源码编译安装postfix....
5. **安装Postfix** - 解压并安装Postfix源码包。 - 配置Postfix主配置文件(`main.cf`)和虚拟域配置文件(如`virtual_alias_maps`等)。 - 设置Postfix服务启动脚本。 6. **安装Courier Authlib** - 解压并...
本配置文档将详细介绍如何在CentOS 5.1系统上安装和配置Postfix,以构建一个功能完善的企业邮箱系统。 首先,安装Postfix前需要确保系统是最新的,可以使用`yum update`命令进行更新。然后,通过`yum install ...
- 在CentOS 5上安装Postfix,可以通过编译源代码或者使用预编译的RPM包来完成。使用RPM包安装更为简单快捷。 - 安装命令示例:`rpm -ivh postfix-<version>.rpm` ##### 2.2 查看Postfix支持的特性 - 使用命令`...
本文档旨在详细介绍如何在CentOS 5操作系统上安装和配置Postfix与Extmail来搭建邮件服务器。Postfix是一款开源的MTA(邮件传输代理),以其高效稳定而闻名,被广泛应用于企业级邮件服务。Extmail则是一款基于Web的...
5. **安装Postfix邮件服务**: ```bash yum install postfix -y systemctl start postfix.service systemctl enable postfix.service ``` 6. **执行脚本安装GitLab**: ```bash curl ...
在开始安装Postfix前,确保系统已经安装了必要的基础软件,包括但不限于编译工具、库文件等。通常,你需要的软件包可能包括: 1. **Development Tools**: 如`gcc`, `make`, `automake`, `autoconf`等,用于编译源...
进入ispCP的下载目录,使用`yum install`命令安装文档中列出的所有CentOS软件包。 10. **安装Perl模块** 通过CPAN(Comprehensive Perl Archive Network)手动安装ispCP需要的Perl模块。这一步很重要,因为官方...
主要介绍基于centos7下进行posfix+dovecot进行搭建部署得邮箱服务器得一份文档;
本文档提供了在CentOS 4.x或RedHat Enterprise Linux 4.x上安装和配置Postfix邮件服务器的详细步骤,包括SMTP认证、病毒过滤、反垃圾邮件措施,以及Webmail服务和管理后台的部署。此外,文档还强调了对系统有一定的...
在CentOS/RHEL上,使用`sudo yum install postfix`或`sudo dnf install postfix`。在安装过程中,系统会提示选择配置模式,一般选择“Internet Site”以适应大多数网络环境。 **3. Postfix配置** Postfix的配置文件...
首先,安装Postfix: ``` sudo yum install postfix -y ``` 配置`/etc/postfix/main.cf`,如设置域名、邮箱转发等。启动服务并设置开机启动: ``` sudo systemctl start postfix sudo systemctl enable postfix ``` ...