Sendmail的特点

优点

Sendmail是发展历史悠久的MTA,当前的版本是8.10.2。当然,Sendmail在可移植性、稳定性及确保没有bug方面有一定的保证。但是Internet上有很多帖子都是关于如何攻击Sendmail的,这对于管理员来说是一个噩梦。Sendmail在发展过程中产生了一批经验丰富的Sendmail管理员,并且Sendmail有大量完整的文档资料,除了Sendmail的宝典《O'Reilly's Sendmail》(Bryan Costales和Eric Allman撰写)以外,网络上有大量的tutorial、FAQ和其他的资源。这些大量的文档对于很好的利用Sendmail的各种特色功能是非常重要的。Sendmail当前来说是一个最成熟的MTA。

缺点

1.安全性

Sendmail在过去的版本中出现过很多安全漏洞,所以使管理员不得不赶快升级版本。而且Sendmail的流行也使其成为攻击的目标。

另外一个问题是Sendmail一般缺省配置都具有最小的安全特性,从而使Sendmail往往容易被攻击。

目前对于Sendmail邮件服务器,阻止邮件攻击的方法有两种。一种是升级高版本的服务器软件,利用软件自身的安全功能。第二种就是采用第三方软件,利用其诸如动态中继验证控制功能来实现。

解决方法有:

(1)编译Sendmail时的安全考虑

要利用Sendmail 8.9.3的阻止邮件攻击功能,就必须在系统编译时对相关参数进行设置,并借助相关的软件包。目前主要就是利用Berkeley DB数据库的功能,Berkeley DB包可以从相关站点上下载,并需要预先编译好。然后将Berkeley DB的相关参数写进Sendmail的有关文件中。

(2)相关文件的配置

正确编译好Sendmail是邮件服务器安全控制的基础,而真正的安全设置主要还是利用相关文件进行的。这种包含控制语句的文件主要是access和relay-domains。

access是邮件安全控制的主要数据库文件,在该文件中可以按照特定的格式将需要控制的域名、IP地址或目标邮件地址,以及相应的动作值写入。然后使用makemap命令生成access.db文件(#makemap hash access.db < access),从而使服务器允许或屏蔽邮件中继和邮件轰炸。

(3)版本号的修改

对于一台邮件服务器,可以通过远程的25端口telnet命令来获取服务器的版本信息。如:“telnet Sendmail服务器主机25”就可以查看Sendmail的当前版本。为了防止一些恶意的查看版本信息操作,Sendmail提供了可以对显示的版本进行修改的操作。

在Sendmail.cf文件中有一句“SmtpGreetingMessage=$j Sendmail $V/$Z; $b”的语句,其中$V/$Z就是版本信息,正常情况下由该参数显示的版本信息为Sendmail本身的版本。如果要设定成管理员给定的版本信息,只需将该参数改掉,然后加入你所希望的信息即可。例如:当把这句改成“SmtpGreeting Message=$j Sendmail 0.0/0.0; $b”,重启Sendmail服务,则Sendmail的版本就会变成“Sendmail 0.0”。从而达到隐蔽版本信息的目的。

以上是Sendmail 8.9.3本身带有的安全功能设置,通过这些安全设置可以大大加强服务器安全性能。但是在防止邮件中继和邮件炸弹的设置时,如何确定哪些目标地址是需阻止中继的,哪些又是允许中继的,似乎只能通过管理员对日志文件的分析和观测,或者在发现了安全问题后才能确定。因此这种安全控制还仅是事后控制,并且对相关文件修改后还必须重新启动服务器。如要实现事先动态安全控制还需要采用其他方法。

(4)动态中继验证控制

DRAC(Dynamic Relay Authorization Control)动态中继验证控制是专门为邮件服务器设计的一个服务器端软件(),它可以安装在一台SMTP服务器上,并同时为多个邮件服务器提供动态中继验证服务。DRAC主要通过自动获取和动态更新中继验证数据库中的信息来允许合法pop3或IMap用户使用邮件服务器,从而有效地控制邮件炸弹和非法的邮件中继。DRAC的原理就是利用pop3或IMap服务器固有的功能来获取用户名、密码和客户机IP地址等信息,并将这些信息及时映像到验证数据库中,供SMTP服务器调用,同时在经过一段时间以后(缺省为30分钟),其验证信息将自动失效,需要用户重新输入验证信息。这样不仅可以保证合法的pop3或IMap用户能够正常使用邮件服务器,也可以阻止任何非注册用户(包括本地)利用邮件服务器来发送邮件。这种邮件安全控制常常被称为:“邮件服务之前的pop验证”(POP-before-SMTP)。

2.效率问题

传统的UNIX系统下的电子邮件系统由于设计所能承受的用户数有限,其系统结构存在一定的缺陷,难以承受大用户量的访问。比如:

◆将用户信息存放于/etc/passwd文件中,在大用户量的情况下认证效率将会大大降低。

◆邮件存放通常在/var/mail目录下面,每个人的邮件是一个文件,用户数多则邮件文件就多。而在UNIX系统中,同一级目录中的文件超过一定数量后,文件系统运转效率将会大大降低。

◆由于每一个用户的多封邮件都位于同一个文件中,所以如果在用户取信过程中出现网络异常,则很容易引起邮箱的死锁。

上述问题大大限制了Sendmail邮件系统在用户数量较大情况下的应用。另外,如果完全以系统用户做为邮件系统的用户也存在严重的安全隐患。

因此,如果要适应大容量的需要,必须从邮件系统体系结构上,特别是邮件存贮方式和用户认证方式上进行改进,使之在大用户量的情况下仍旧保持良好的性能。

Qmail的特点

优点

安全——Qmail将E-mail处理过程分为多个分过程,尽量避免以root用户身份运行。同时Qmail也禁止对特权用户(root、daemon等)直接发信。

可靠——Qmail的直接投递保证了E-mail在投递过程中不会丢失。Qmail同时支持新的更可靠的信箱格式—Maildir,保证系统在突然崩溃情况下不至破坏整个信箱。

高效——运行在奔腾的BSD上,Qmail每天可以轻松地投递20万封电子邮件。

简单——Qmail要比其他的Internet Mail系统小得多。它通过统一的转发机制完成Forwarding、Alias和Maillist等功能, Qmail使用简单高效队列来处理投递。Qmail-SMTPD可以由Inetd启动,节省了一定资源。

缺点

1.代码结构不好。

2.不是完全遵从标准,它不支持DSN。

3.不遵从支持7bit系统标准,而每次都发送8bit。若邮件接收一方不能处理这种情况,就会出现邮件乱码的情况。

Sendmail与Qmail的比较

MTA

成熟性

安全性

特色

性能

Sendmail兼容性

模块化设计

Qmail

支持

Sendmail

支持

企业邮件问题突显

企业在使用电子邮件时存在着大量的问题,归纳起来主要有以下几点:

1.用户计算机运用水平不高,对基本设置不了解,造成错误。在日常工作中,部分企业员工计算机基本知识不够,应用水平低,包括上网浏览、收发电子邮件都存在着不同程度的障碍。

2.电子邮件系统资金投入与维护成本的影响。建立自己企业的电子邮件系统,需要购买专门的电子邮件系统软件,需要专业系统管理员来配置和维护。如果技术力量不够,系统出现问题时还会影响工作的开展。在软件和硬件方面的投资额也比较大,这些都影响着企业建立自己的电子邮件系统。

3.无专业邮件服务提供商为企业服务,客户服务水平不高。有45.45%的企业把电子邮件系统建立在虚拟主机服务提供商的服务器上,而虚拟主机提供商在技术实力和解决问题等诸多方面都不尽如人意,落后的客户服务水平制约了企业电子邮件的广泛运用。

linux局邮软件,Unix/Linux平台上常用的邮件系统软件相关推荐

  1. 推荐 Mac 平台上常用的 5 款 PDF 阅读编辑软件

    众所周知,Adobe 创建 PDF 这个电子文档格式,是为了让用户可以不因操作系统的语言.字体和显示设备的不同而改变文件原貌.这个在 PostScript 语言的基础上创建的文件完整的封装了源文档中的 ...

  2. linux 开发设计软件,在Linux平台下开发和设计聊天软件

    在网络无所不在的今天,在Internet上,有ICQ.MSN.Gtalk.OICQ等网络聊天软件,极大程度上方便了处于在世界各地的友人之间的相互联系,也使世界好像一下子缩小了,不管你在哪里,只要你上了 ...

  3. Linux下ms软件,在linux下有没有什么软件可以连接windows上的MSSQL SERVER

    在linux下有没有什么软件可以连接windows上的MSSQL SERVER GUI的http://dbeaver.jkiss.org/ http://bbs.csdn.net/topics/391 ...

  4. linux查看地址和,UNIX/LINUX平台下查看MAC和WWN地址的方法

    归纳了一下,在UNIX/LINUX平台下查看MAC和WWN地址的方法 查看MAC地址 hp-ux #lanscan tru64 unix #netstat -ia aix #lsdev -Cc if ...

  5. linux看电影软件下载,LINUX总结第5篇:Cent os常用软件(看电影、听音乐、看pdf、看word等)...

    掐指一算,我用LINUX已经有2年的时间,但是仔细向来,貌似常用的也就是cp\ls\cd等命令,搭建服务器等一概没玩过.故,痛下绝心,将自己的电脑改装成Cent OS 6.4,能不用WINDOWS坚决 ...

  6. 远程链接linux桌面的软件,远程linux桌面软件

    Windows系统怎么远程登陆桌面Linux 用putty.xshell等软件远程linux的命令行模式大家应该都会了,假如需要远程linux的桌面要怎么办呢?下面本人就讲下在Windows系统平台下 ...

  7. 目前已完成linux适配的软件,WPS Linux版与国产统一操作系统UOS完成适配:符合国人使用习惯...

    据统信软件官方消息,近日,WPS Office 2020 for Linux专业版办公软件与统一操作系统UOS完成适配工作,对比2016版本,2020版本总体性能有大幅提升.这不仅体现在整体的启动速度 ...

  8. linux安装音乐软件教程,Linux上好用的五款音乐播放器

    Jack Wallen 盘点他***的五款 Linux 音乐播放器. 不管你做什么,你都有时会来一点背景音乐.不管你是开发.运维或是一个典型的电脑用户,享受美妙的音乐都可能是你在电脑上最想做的事情之一 ...

  9. linux puppy 安装软件,puppy linux(linux操作系统)V5.7.2 官方版

    puppy linux(linux操作系统)是一款十分优秀的全新linux发行系统.平常linux操作系统太过简陋,puppy linux集合了大量所需功能.但它自带了大量的描扫仪.打印机.数码相机的 ...

  10. linux ftp 命令lcd,Unix/Linux 中经常使用的 ftp 命令小例

    FTP 是一种文件传输协议.用于将文件从一台服务器转移到另一台服务器,FTP是使用一个客户端和服务端进行链接.默认端口 21; 通过ftp连接到服务器. # ftp domain.com # ftp ...

最新文章

  1. ubuntu mysql5.6 编译安装_Ubuntu14.04编译安装mysql5.6.26
  2. 用python画动态皮卡丘_利用Python绘制萌萌哒的皮卡丘
  3. Django+Echarts画图实例
  4. Working with FBX SDK (2)
  5. 远程连接mysql库问题
  6. 玩转C#控件-常用控件属性
  7. AllenAI | 用GPT-3帮助增建数据,NLI任务直接提升十个点!?
  8. android 调用系统短信接口开发,聚合数据Android SDK 短信api接口验证演示示例
  9. SQLServer 系统数据库
  10. 利用nc测试服务器之间端口之间的连通性
  11. 目标检测:Segmentation is All You Need ?
  12. 继承扩展DataGrid的editors
  13. 全新版本的SoundSource for Mac 优质的音频控制软件
  14. 家政上门预约服务小程序源码+前端后端
  15. Python choice() 函数
  16. SSH-keygen linux教程
  17. 解决Appium Desktop 测试中,元素不能准确定位的问题
  18. L->data 与 L.data比较
  19. 高中数学必修五:数列压轴小题秒杀技巧
  20. linux下的go富集分析,GO富集分析(转载)-Go语言中文社区

热门文章

  1. Android Studio的反编译工具使用。
  2. 设计模式之职责链模式(责任链模式)
  3. 三级等保 服务器设置密码策略 centos
  4. js 简单的鼠标指针小图标
  5. C语言实现99乘法表
  6. Rwordseg包如何加载本地词典
  7. ICEM 网格划分技巧(21-5)
  8. Tool-windows用自带命令行,将webm的视频格式转为mp4
  9. mp4文件如何转换为webm格式 1
  10. 正确的座机号码格式_固定电话的格式