Linux系统中配置构建Postfix文档

而另一个被广泛应用于邮件服务方面的“Postfix”的缺点就少得多,或者说它就是针对于sendmail的缺点,而被设计的。对应sendmail的短处,它在各方面也比较成熟。所以,无特殊要求,这里不推荐用sendmail来构建邮件服务器。本站介绍的邮件服务器配置方法,也将基于Postfix。

确认MX记录的添加是否生效的方法:

 代码如下 复制代码

[root@sample ~]# host -t mx centospub.com
centospub.com mail is handled by 10 mail.centospub.com.  确认MX记录生效

然后安装postfix

 代码如下 复制代码

[root@sample ~]# yum -y install postfix   在线安装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

message_size_limit = 15728640  规定邮件最大尺寸为15MB

2、 配置SMTP认证的相关选项
为了提高安全性,我们不将系统用户的密码作为相应用户SMTP认证的密码,而将在后面为用户建立SMTP认证专用的密码。

 代码如下 复制代码

[root@sample ~]# vi /usr/lib/sasl2/smtpd.conf   编辑SMTP认证的配置文件
pwcheck_method: saslauthd   找到此行,将“saslauthd”改为“auxprop”
pwcheck_method: auxprop   不使用系统用户密码作为用户的SMTP认证密码
[root@sample ~]# vi /etc/sysconfig/saslauthd
MECH=shadow   找到这一行,在前面加#
#MECH=shadow   不使用shadow机制
FLAGS=  找到此行,在等号后面添加“sasldb”
FLAGS=sasldb    定义认证方式为sasldb2

3、建立用户的邮箱目录

首先建立用户模板下的邮箱目录,以便于建立新用户时,相应用户的邮箱目录自动被建立。

 代码如下 复制代码

[root@sample ~]# mkdir /etc/skel/Maildir   在用户模板下建立用户邮箱目录
[root@sample ~]# chmod 700 /etc/skel/Maildir   设置用户邮箱目录属性为700

然后再为已经存在的用户创建相应有项目了。 www.111cn.net

 代码如下 复制代码

[root@sample ~]# mkdir /home/centospub/Maildir  为用户(这里以centospub用户为例)建立邮箱目录
[root@sample ~]# chmod 700 /home/centospub/Maildir   设置该用户邮箱目录属性为700
[root@sample ~]# chown centospub. /home/centospub/Maildir   设置该用户邮箱目录为该用户所有

4、为用户设置smtp认证密码

 代码如下 复制代码

[root@sample ~]# saslpasswd2 -u sample.centospub.com -c centospub   为centospub用户设置SMTP认证密码
Password: 在这里输入密码(不会显示)
Again (for verification):  再次输入密码

5、改变SALS的属性及归属

 代码如下 复制代码

[root@sample ~]# chgrp postfix /etc/sasldb2  将数据库归属改为postfix,
[root@sample ~]# chmod 640 /etc/sasldb2    将数据库属性改为640

6、关闭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

启动相应服务

最后,启动SMTP认证及Postfix服务,并设置相应服务为自启动。

 代码如下 复制代码

[root@sample ~]# chkconfig saslauthd on   将SMTP-Auth设置为自启动
[root@sample ~]# chkconfig –list saslauthd   确认SMTP-Auth服务状态
saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off   确认2~5为on的状态就OK
[root@sample ~]# /etc/rc.d/init.d/saslauthd start   启动SMTP-Auth
Starting saslauthd:  [ OK ]
[root@sample ~]# chkconfig postfix on   将Postfix设置为自启动
[root@sample ~]# chkconfig –list postfix   确认Postfix服务状态
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off   确认2~5为on的状态就OK
[root@sample ~]# /etc/rc.d/init.d/postfix start   启动Postfix
Starting postfix:  [ OK ]

至此,就完成了SMTP服务器方面的配置,但目前只具从备客户端通过服务器发送邮件的功能。做为完整的邮件服务器,还需具备从客户端通过POP/IMAP协议接受邮件到本地的功能。

时间: 2024-10-14 14:02:47

Linux系统中配置构建Postfix文档的相关文章

分析Apache 与linux系统中配置

1.备份Apache服务的主配置文件 [root@KCentOS5C ~]# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.backup 2.linux系统中配置Apache服务的主配置文件 [root@KCentOS5C ~]# vi /etc/httpd/conf/httpd.conf 这里主要改动以下这些参数: ServerName *:80 配置Apache的服务器名,如果有域名的话请填写正确的服务器名. Include

linux系统中如何构建LAMP网站服务平台

一.安装httpd服务器 1.编辑安装 在配置Apache Web服务器之前,需要正确安装好httpd服务器软件. 1). 获取软件包 2). 解压并释放源码包 3). 配置编译选项 在配置前可以先执行"./configure –help"命令查看各种配置项的详细信息,以便实现更灵活,更丰富的功能定制配置. --prefix用于指定httpd服务程序将要安装到的系统目录,这里设置的是缺省目录"/usr/local/apache2": --enable-so用于能够使

详解Linux系统中配置静态路由的方法

  主机只有一块网卡的时候,不会涉及到默认路由和静态路由的问题.两块网卡时,也可以一块配置有网关(默认路由走这个网卡),另外一块只配置IP和掩码确认(该主机同网络的可以互通).不过在稍大型的.有多网段的环境里就需单独进行默认路由和静态路由的配置了. 一.需求 目前有如下的一个网络,主机有两个网卡,两个网段分别是是业务地址eth0和管理地址eth1. 业务地址段为:192.168.3.0/24段 管理地址段:10.212.52.0/24段 防火墙段:10.211.6.0/24段 现在的需求是,默认

如何在win7旗舰版系统中清除索引记录文档?

  想必大家都知道,在咱们的win7 64位旗舰版的开始菜单中,是有一个搜索功能的,需要在咱们的win7旗舰版电脑中搜索文件或者是程序的朋友,很多都曾经使用过这个功能,但是大家可能不知道的是,win7旗舰版系统中的这个搜索功能会在C盘自动建立索引记录文档,而这些文档会占用大量的C盘空间,对于系统盘空间本身就不足的win7旗舰版系统来说,这无疑是一个致命伤,那么咱们如何才能将这个索引记录文档清除掉,扩大咱们win7旗舰版电脑的系统盘空间呢?下面,小编就来详细的介绍一下吧! 1.如果大家平时不需要使

linux系统中配置vsftpd及用户权限

先确认下安装上了没,可以使用  代码如下 复制代码 [root@localhost sv005-mongodb]# service vsftpd restart Shutting down vsftpd:                                      [  OK  ] Starting vsftpd for vsftpd:                                [  OK  ] 或者使用命令 [root@localhost sv005-mong

linux系统中如何构建域名服务器

一.DNS系统介绍 1.)DNS系统的作用 就是维护一个主机域名与IP地址的对应关系数据库.在需要的时候为客户端网络程序提供地址解析功能 正向解析:将主机的名称(域名)解析为对应的IP地址. 反向解析:将主机的IP地址解析为对应的域名. 2.)DNS的管理是分层的,每一层主机只需要记录下一 层的主机的名称即可.比如".cn"管理着".com.cn" , ".net.cn" ,".org.cn", ".edu.cn&q

在linux中创建和解压文档的11个 tar 命令例子

在linux中创建和解压文档的11个 tar 命令例子 linux中的tar命令 tar(磁带归档)命令是linux系统中被经常用来将文件存入到一个归档文件中的命令. 其常见的文件扩展包括:.tar.gz 和 .tar.bz2, 分别表示通过了gzip或bzip算法进一步进行了压缩. 在本教程中我们会管中窥豹一下在linux桌面或服务器版本中使用tar命令来处理一些创建和解压归档文件的日常工作的例子. 使用tar命令 tar命令在大部分linux系统默认情况下都是可用的,所以你不用单独安装该软件

Linux系统中如何查看和修改DNS配置

DNS是指计算机域名系统,它由域名解析器和域名服务器组成,提供DNS服务的就是DNS服务器.一般运作中的域名最好有两台或以上的DNS服务器,分别称为主域名服务器和从域名服务器,其中第二个DNS服务器往往用于故障转移.不少用户都不知道该怎么查看和修改DNS,因此小编接下来就给大家介绍下Linux系统中查看和修改DNS配置的方法. 查看服务器的DNS信息: 1:查看/etc/resolv.con文件 [root@localhost ~]# cat /etc/resolv.conf nameserve

Linux系统中掩耳盗铃的sudo配置_linux shell

 今天在这里讨论Linux系统中一个非常滑稽的系统配置失误,就是sudo,为什么说是滑稽的配置呢,就是因为如果配置不当的话,普通用户非常容易就可以提权到root用户,而且没有一点技术含量,系统管理员自己以为已经做好了权限管理,其实如果配置不当,权限漏洞已经出现. 很多公司Linux系统都会用到sudo来配置普通用户可以执行的超级用户权限,一是为了系统管理员更安全的操作系统,二是可以为研发人员提供可控的权限范围,下面就看一下我们在系统中常见的sudo配置文件. 复制代码 代码如下: admin A