Linux服务器部署系列之八—Sendmail篇

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:




Sendmail是目前Linux系统下面用得最广的邮件系统之一,虽然它存在一些不足,不过,目前还是有不少公司在使用它。对它的学习,也能让我们更深的了解邮件系统的运作。下面我们就来看看sendmail邮件服务器的部署。

本文将从以下几个方面讲解Sendmail邮件系统:
1.Sendmail安装;
2.Sendmail基本配置;
3.Openwebmail安装和配置;
4.配置Mailscanner+clamav过滤病毒;
5.配置SpamAssassin+mimedefang过滤垃圾邮件。
本文系统运行环境: CentOS 5
 
一、安装 Sendmail
1.  软件需求(以下软件在安装光盘上都可以找到)
cyrus-sasl-2.1.22-4.i386.rpm
cyrus-sasl-lib-2.1.22-4.i386.rpm
cyrus-sasl-plain-2.1.22-4.i386.rpm
cyrus-sasl-devel-2.1.22-4.i386.rpm
cyrus-sasl-md5-2.1.22-4.i386.rpm
sendmail-8.13.8-2.el5.i386.rpm
sendmail-cf-8.13.8-2.el5.i386.rpm
sendmail-devel-8.13.8-2.el5.i386.rpm
sendmail-doc-8.13.8-2.el5.i386.rpm
m4-1.4.5-3.el5.1.i386.rpm
dovecot-1.0.7-2.el5.i386.rpm
另外, dovecot 需要两外两个程序包的支持:
perl-DBI-1.52-1.fc6.i386.rpm
mysql-5.0.45-7.el5.i386.rpm
2.  软件安装
1 cyrus-sasl 的安装
先检查一下,系统默认安装了哪些软件包,如下图:
安装 cyrus-sasl-md5-2.1.22-4.i386.rpm ,如下图:
2 )安装 sendmail dovecot 等相关程序包,如下图:
Sendmail 要正常工作,是需要 DNS 支持的,一般企业都有 DNS 服务器,如果没有,可以参考我的另一篇文章: Linux 服务器部署系列之三 —DNS 篇( http://guoxuemin.blog.51cto.com/379574/169718 ),自己搭建一台 DNS 服务器。
 
二、基本配置
1.  修改 local-host-names 文件
# vi  /etc/mail/local-host-names
2.  修改 sendmail 主配置文件,修改部分如下面图红色框内内容:
# vi  /etc/mail/sendmail.mc
使用 m4 命令生成 sendmail.cf 文件,如下图:
修改配置文件,限制用户邮件的大小,如下图:
# vi  /etc/mail/sendmail.cf
3.  添加用户,可以用命令的方式添加,如下图,如果安装了 openldap ,也可以通过图形界面添加(有关 openldap 的安装配置,可以参考我的另一篇文章:Linux服务器部署系列之七—Openldap篇)
4.  修改 dovecot 配置文件
dovecot 安装好后,默认就可以使用 pop3 IMAP 了。接下来我们再来配置下 dovecot ,以便启动 pop3s IMAPS 的支持。
1 )生成私钥和证书,如下图:
2 )修改配置文件,如下图:
# vi  /etc/dovecot.conf
5.  测试
1 )启动 sendmail dovecot 服务:
2 )使用 Outlook 配置两个用户邮箱,如下图:
3 )发送测试邮件,如下图:可以正常收发。 OK sendmail 服务器安装至此完成。
 
三、 Openwebmail
1.  软件需求(工具软件都可以从下载)
CGI.pm-3.05.tar.gz
MIME-Base64-3.01.tar.gz
Digest-1.08.tar.gz
Digest-MD5-2.33.tar.gz
Test-Iconv-1.2.tar.gz
libnet-1.19.tar.gz
perl-suidperl-5.8.8-10.el5_0.2.i386.rpm
另外, openwebmail 需要 Apache 支持,有关 Apache 的配置,可以参加我的另外一篇文章: Linux 服务器部署系列之一 —Apache 篇( http://guoxuemin.blog.51cto.com/379574/168534
2.  安装
1 )支持工具的安装:
安装 CGI.pm MIME-Base64 Digest Digest-MD5 libnet Text-Iconv ,按以下步骤安装:
# tar  zxvf   软件包 .tar.gz
# cd   软件包名
# perl  Makefile.PL
# make
# make  install
这里有一个特殊的情况,就是在安装 Digets-MD5 之前必须先声明一个环境变量,方法如下:
# export  LC_ALL=C
另外,还需要安装 perl-suidperl 支持工具,如下图:
2 )安装 openwebmail
# tar  zxvf  openwebmail-2.53.tar.gz
解压后不需要编译,只要将相关文件 copy 到相关目录就可以了,如下图:
# mv  data/openwebmail  /usr/local/apache/htdocs
# mv  cgi-bin/openwebmail  /usr/local/apache/cgi-bin
3.  配置
1 )修改主配置文件,如下图:
# vi  /usr/local/apache/cgi-bin/openwebmail/etc/openwebmail.conf
2 )修改数据设置文件,如下图:
# vi  /usr/local/apache/cgi-bin/openwebmail/etc/defaults/dbm.conf
3 )修改认证设置文件,如下图:
# vi  /usr/local/apache/cgi-bin/openwebmail/etc/defaults/auth_unix.conf
4 )修改 apache 配置文件,添加一行别名,如下图:
# vi  /usr/local/apache/conf/httpd.conf
4.  测试
打开浏览器,输入: http:// 服务器 IP 地址 /mail ,就可以访问 webmail 了,如下图:
首次启用,会提示设定个人模板,如下图:
对个人模板进行设置,完成后点保存,如下图:
OK webmail 的界面出来了,可以通过它方便的收发邮件和管理,如下图:
我们来发一封邮件测试一下,如下图:
使用 outlook 接收,正常。 OK ,至此, openwebmail 安装配置完成。
 
四、防病毒
1.  软件需求
MailScanner-4.55.10-3.rpm.tar.gz
clamav-0.95.tar.gz
2.  安装、配置 MailScanner
1 )安装
# tar  zxvf  MailScanner-4.55.10-3.rpm.tar.gz
# cd  MailScanner-4.55.10-3
# ./install.sh
2 )配置 MailScanner ,修改内容如下图红框内内容。
# vi  /etc/MailScanner/MailScanner.conf
3.  安装、配置 Clamav
1 )安装
首先,为 clamav 建立自己的执行帐户:
# vi  /usr/sbin/useradd  -s  /bin/false  -d  /var/run/clamav  clamav
然后,安装 clamav
# tar  zxvf  clamav-0.95.tar.gz
# cd  clamav-0.95
# ./configure  --prefix=/usr/local/clamav
# make
# make  install
2 )建立 clamav socket 文件存放路径,如下图:
3 )修改配置文件 clamd.conf ,修改部分见下列图红框标示部分内容。
# vi  /usr/local/clamav/etc/clamd.conf
4 )修改配置文件 freshclam.conf ,修改部分见下列图红框标示部分内容。
# vi  /usr/local/clamav/etc/freshclam.conf
5 )创建 freshclam.log 文件,并设定权限。如下图:注意:如果不创建该文件,在启动时会报错。
4.  配置启动项
1 )启动 clamav ,如下图:
修改系统启动项,以便在系统启动时自动启动 clamav ,如下图:
# vi  /etc/rc.d/rc.local
2 )更新 clamav 病毒库
使用命令: /usr/local/clamav/bin/clamdscan -V 查看当前系统的 clamav 版本,如下图:
使用命令: /usr/local/clamav/bin/freshclam 更新病毒库,如下图:
再次使用命令: /usr/local/clamav/bin/clamdscan -V 查看当前系统的 clamav 版本,如下图:病毒库已经更新了。
3 )配置 MailScanner 管理邮件系统启动
我们必须停用 sendmail ,启动 MailScanner ,让 MailScanner 来接管邮件服务器的启动,这样才能正常检查病毒。如下图:
哦,有错误了。检查下:
MailTools 的版本为 2.04 ,版本太高。我们来装个低版本的试一下。
# tar  zxvf  MailTools-1.77.tar.gz
# cd  MailTools-1.77
# perl  Makefile.PL
# make
# make  install
我们再来检查一下 MailTools 的版本,如下图:
我们再试试启动 MailScanner OK 了,一切正常。
Sendmail 查毒模块的安装至此完成,不过, clamav 只是一个查毒程序,不能杀毒,如果它检查到邮件含有病毒会直接将它丢弃。
 
五、反垃圾邮件
1.  软件需求
Mail-SpamAssassin-3.1.9.tar.gz
mimedefang-2.67.tar.gz
另外, mimedefang 安装需要以下软件包的支持:
Digest-SHA1-2.12.tar.gz
IO-String-1.08.tar.gz
MailTools-1.77.tar.gz
MIME-Base64-3.03.tar.gz
MIME-tools-5.420.tar.gz
Net-DNS-0.65.tar.gz
2.  安装、配置
1 SpamAssassin 安装
# tar  zxvf  Mail-SpamAssassin-3.1.9.tar.gz
# cd  Mail-SpamAssassin-3.1.9
# perl  Makefile.PL
# make
# make  install
2 )添加中文垃圾邮件过滤规则
将该规则存放在/etc/mail/SpamAssassin目录下。
3 )安装mimedefang
安装支持工具:Digest-SHA1IO-StringMIME-toolsNet-DNS,按以下步骤安装:
# tar  zxvf   软件包.tar.gz
# cd  软件包名
# perl  Makefile.PL
# make
# make  install
这里由于MailToolsMIME-Base64前面已经安装过了,这里就不需要再重复安装。
安装mimedefang
# tar  zxvf  mimedefang-2.67.tar.gz
# cd  mimedefang-2.67
# ./configure
# make
# make install
# cp examples/init-script  /etc/init.d/        // 将启动文件Copy/etc/init.d
# /etc/init.d/init-script  start              // 启动mimedefang
mimedefang 可以正常启动,不过还需要对sendmail.cf文件进行配置才能让它正常工作。
4 )配置sendmail.cf文件
# vi  /etc/mail/sendmail.cf
修改# Input mail filters下面行,如下图:
#### MAIL FILTER DEFINITIONS下面添加一行,如下图:
垃圾邮件过滤网关会在每一封邮件头中加上X-Scanned-By: MIMEDefang 2.67,通过查看邮件头可以检查系统配置是否成功,如下图:
 
    OK ,至此,整套Sendmail邮件系统部署完成。限于篇幅,本篇只讲述了sendmail服务器的部署,对于Sendmail的应用会在后续的文档中讲解。





     本文转自Tonyguo 51CTO博客,原文链接:http://blog.51cto.com/tonyguo/186474,如需转载请自行联系原作者

相关文章
|
3天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
Node.js 是一种高效的 JavaScript 运行环境,基于 Chrome V8 引擎,支持在服务器端运行 JavaScript 代码。本文介绍如何在阿里云上一键部署 Node.js 环境,无需繁琐配置,轻松上手。前提条件包括 ECS 实例运行中且操作系统为 CentOS、Ubuntu 等。功能特点为一键安装和稳定性好,支持常用 LTS 版本。安装步骤简单:登录阿里云控制台,选择扩展程序管理页面,安装 Node.js 扩展,选择实例和版本,等待创建完成并验证安装成功。通过阿里云的公共扩展,初学者和经验丰富的开发者都能快速进入开发状态,开启高效开发之旅。
|
5天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
|
5天前
|
机器学习/深度学习 弹性计算 人工智能
在阿里云ECS上一键部署DeepSeek-R1
Open WebUI 和 Ollama 的联合,通过集成 DeepSeek-R1 的强大功能,赋予每一位用户使用尖端 AI 技术的能力,使得复杂的 AI 技术不再是遥不可及的梦想。无论是研究人员、开发者,还是企业用户,您都能从这一创新中获得新的灵感和增长点。本文介绍通过计算巢一键部署和使用DeepSeek-R1。
在阿里云ECS上一键部署DeepSeek-R1
|
21天前
|
安全 前端开发 Go
轻松部署翼龙面板社区版:您的游戏服务器管理新体验
翼龙面板(Pterodactyl)社区版正是为此而生,它通过强大的开源技术栈(PHP、React 和 Go)和可靠的安全设计,让游戏服务器管理变得简单而高效。本文将带您通过阿里云计算巢快速部署翼龙面板社区版,尽享流畅的管理体验。
轻松部署翼龙面板社区版:您的游戏服务器管理新体验
|
24天前
|
XML Java 应用服务中间件
Spring Boot 两种部署到服务器的方式
本文介绍了Spring Boot项目的两种部署方式:jar包和war包。Jar包方式使用内置Tomcat,只需配置JDK 1.8及以上环境,通过`nohup java -jar`命令后台运行,并开放服务器端口即可访问。War包则需将项目打包后放入外部Tomcat的webapps目录,修改启动类继承`SpringBootServletInitializer`并调整pom.xml中的打包类型为war,最后启动Tomcat访问应用。两者各有优劣,jar包更简单便捷,而war包适合传统部署场景。需要注意的是,war包部署时,内置Tomcat的端口配置不会生效。
188 17
Spring Boot 两种部署到服务器的方式
|
2天前
|
机器学习/深度学习 人工智能 开发者
DeepSeek服务器繁忙?拒绝稍后再试!基于阿里云PAI实现0代码一键部署DeepSeek-V3和DeepSeek-R1大模型
阿里云PAI平台支持零代码一键部署DeepSeek-V3和DeepSeek-R1大模型,用户可轻松实现从训练到部署再到推理的全流程。通过PAI Model Gallery,开发者只需简单几步即可完成模型部署,享受高效便捷的AI开发体验。具体步骤包括开通PAI服务、进入控制台选择模型、一键部署并获取调用信息。整个过程无需编写代码,极大简化了模型应用的门槛。
65 7
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
29天前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
2月前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
168 6
|
2月前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
172 8