当前位置: 首页 > Linux学院 > 网络服务 > Mail > 实战构建安全Postfix电子邮件服务器

实战构建安全Postfix电子邮件服务器

2013-04-25 10:20 来源:IBM 作者:李洋 人气指数: 我要评论

本系列的第一部分介绍了企业开源电子邮件系统原理及 Sendmail、Qmail 邮件服务安全防护实战,本文将详细介绍 Postfix 的安全防护实战,以及如何进行企业垃圾邮件防范。

Postfix 是一个由 IBM 资助、由 Wietse Venema 负责开发的自由软件工程产物,它的目的就是为用户提供除 Qmail 之外的邮件服务器选择。Postfix 在快速、易于管理和提供尽可能的安全性方面都进行了较好的考虑。Postfix 是基于半驻留、互操作的进程的体系结构,每个进程完成特定的任务,没有任何特定的进程衍生关系,使整个系统进程得到很好的保护。同时 Postfix 也可以和 Qmail 邮件服务器保持兼容性以满足用户的使用习惯。

与 Qmail 相比,Postfix 最被人称道的地方就在于其配置文件的可读性很高。Postfix 的主配置文件是 /etc/postfix/main.cf。虽然该配置文件的内容比较多,但其中大部分内容都是注释(“#”号开头的行),真正需要自行定义的参数并不多。然而,为了对其进行安全配置,还是需要针对某些选项进行细心的设置。

在 main.cf 文件中,参数都是以类似变量的设置方法来设置的,这些参数的使用主要包含两部分的内容:

(1)定义和声明变量:例如 definename = good-better-best。等号左边是变量的名称,等号右边是变量的值。

(2)引用变量:可以在变量的前面加上符号“$”来引用该变量,如:myname = $ definename(相当于 definename = good-better-best)。

需要注意的是:等号两边需要有空格字符。此外,如果变量有两个以上的设置值,就必须用逗号“,”或者空格符“ ”将它们分开。

在熟悉了上述变量的定义和引用方法后,下面详细介绍如何安全、高效地配置 Postfix 服务器的相关选项。

设置 Postfix 服务监听的网络接口

默认情况下,inet_interfaces 参数的值被设置为 localhost,这表明只能在本地邮件主机上寄信。如果邮件主机上有多个网络接口,而又不想使全部的网络接口都开放 Postfix 服务,就可以用主机名指定需要开放的网络接口。不过,通常是将所有的网络接口都开放,以便接收从任何网络接口来的邮件,即将 inet_interfaces 参数的值设置为“all”,如下所示:

inet_interfaces = all

安全设置可接收邮件的主机名称或域名

mydestination 参数非常重要,因为只有当发来的邮件的收件人地址与该参数值相匹配时,Postfix 才会将该邮件接收下来。通过该选项的设置可以过滤掉许多没有经过认证和授权的邮件,从而节省服务器的存储空间,以及节省用户的邮件处理时间。举一个简单的例子,用户可以将该参数值设置为如下:

 accept_domain = test.net 
 mydestination = $accept_domain 

这就表明无论来信的收件人地址是 X@test.net(其中 X 表示某用户在 test.net 域中的邮件账户名),Postfix 都会接收这些邮件。而除此之外的邮件,Postfix 都不会接受。

安全设置可转发邮件的网络(IP 设置)

有关安全设置可转发邮件的网络可以使用 mynetworks 参数来设置。可将该参数值设置为所信任的某台主机的 IP 地址,也可设置为所信任的某个 IP 子网或多个 IP 子网(采用“,”或者“ ”分隔)。

比如,用户可以将 mynetworks 参数值设置为 172.168.96.0/24,则表示这台邮件主机只转发子网 172.168.96.0/24 中的客户端所发来的邮件,而拒绝为其他子网转发邮件:

 mynetworks = 172.168.96.0/24 

除了 mynetworks 参数外,还有一个用于控制网络邮件转发的参数是 mynetworks-style,它主要用来设置可转发邮件网络的方式。通常有以下三种方式:

  • class:在这种方式下,Postfix 会自动根据邮件主机的 IP 地址得知它所在的 IP 网络类型(即 A 类、B 类或是 C 类),从而开放的它所在的 IP 网段。
  • subnet:这是 postfix 的默认值,Postfix 会根据邮件主机的网络接口上所设置的 IP 地址、子网掩码来得知所要开放的 IP 网段。
  • host:在这种方式下,Postfix 只会开放本机。

通常,用户一般不需要设置 mynetworks-style 参数,而直接设置 mynetworks 参数。如果这两个参数都进行了设置,那么 mynetworks 参数的设置有效。

大家感兴趣的内容
小伙伴最爱的新闻
小伙伴还关注了以下信息
小伙伴关注的焦点

小伙伴都在关注的热门词

新服 缤纷活动 航海世纪 芈月传 暗黑道具 萌乐网 苹果发布会 最新谍照 三国令 剑雨江湖 怎样修炼战骑 页游 怎样修炼伙伴 木甲世界 仙侠道2 推黑科技 页游模式 武圣试炼场 街机玩法 蓝月传奇 个人BOSS玩法 哥们网 九阴绝学 仗剑出鞘 全新模式 范伟打天下 全新元神玩法 七大神兵简介 新手攻略 跑腿任务 门派五行 城战礼包 页游界 泥石流 傅园慧 经典网页游戏 耐玩 盘点 玉石攻略 提升角色 大黑 实装属性 神兵攻略 问鼎莽荒 莽荒纪 手持神兵 土豪梦 万世 开学清单 财富赚不停 天书世界 大黑游戏 资源战场 ppwan 天问 激战 全国大战 雄霸一方 新增宠物技能 绝对小能手 花千骨 三尾章鱼 风色轨迹 双枪手 弑之神 缤纷好礼 惊喜六重连 帮会 中秋福利 自制月饼 九阴真经 玩家 五周年纪念 纪念银币 名动三界 新服资料片 画江山 勇战妖魔 邪恶势力 上古降魔 老司机玩法 坐骑揭秘 黑科技 竞技场攻略 铁血皇城 披风玩法 书剑恩仇录 装备强化攻略 野外BOSS玩法 全网曝光 赤壁传说 半回合制国 ACT 奇珍商城 热血战歌 传奇宝藏抽奖 打开方式 门徒 门徒获取玩法 三大萌宠简介