热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

RHEL5系统中安装配置Postfix+CyrusSASL+dovecot服务器

默认方式安装RHEL5,不选中任何类型服务器(如WEB服务器,开发服务器,虚拟服务器等)安装postfix[root@rhel5~]#/etc/rc.d/init.d/sendmailstop关闭sm-client:[确定]关闭sendmail:[确定][root@rhel5~]#chkconfigsendmailof

默认方式安装RHEL5,不选中任何类型服务器(如WEB服务器,开发服务器,虚拟服务器等)

安装postfix

[root@rhel5 ~]# /etc/rc.d/init.d/sendmail stop

关闭 sm-client: [确定]

关闭 sendmail: [确定]

[root@rhel5 ~]# chkconfig sendmail off

[root@rhel5 Server]# rpm -ivh postfix-2.3.3-2.i386.rpm

[root@rhel5 Server]# vi /etc/postfix/main.cf

myhostname = mail.mailidc.cn #设置运行postfix服务的邮件主机的主机名、域名

mydomain = mailidc.cn

myorigin = $mydomain #设置由本机寄出的邮件所使用的域名或主机名称

inet_interfaces = all #设置postfix服务监听的网络接口

mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost #设置可接收邮件的主机名称或域名

mynetworks = 127.0.0.1 #设置可转发哪些网络的邮件

relay_domains = $mydestination #设置可转发哪些网域的邮件

保存文件。

检查postfix的配置:

[root@rhel5 Server]# postconf Cn

[root@rhel5 ~]# chkconfig postfix on

postfix加入到root的组:

# usermod -G root postfix

SMTP认证的配置

安装cyrus-sasl

1、确认cyrus-sasl是否安装了

[root@rhel5 Server]# rpm -qa|grep cyrus

cyrus-sasl-plain-2.1.22-4

cyrus-sasl-lib-2.1.22-4

cyrus-sasl-2.1.22-4

Cyrus-SASL V2的密码验证机制

[root@rhel5 ~]# saslauthd -v

saslauthd 2.1.22

authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap

我们准备用的是shadow的密码验证机制。

vi /etc/sysconfig/saslauthd

MECH=shadow

启动sasl的daemon并测试:

# service saslauthd start

# /usr/sbin/testsaslauthd -u 帐号 -p '密码'

0: OK "Success." =>帐号验证成功了

[root@rhel5 ~]# chkconfig saslauthd on

设置postfix启用SMTP认证

[root@rhel5 Server]# vi /etc/postfix/main.cf

smtpd_sasl_auth_enable = yes

smtpd_sasl_local_domain= ''

smtpd_recipient_restrictiOns= permit_mynetworks,permit_sasl_authenticated,

reject_unauth_destination

broken_sasl_auth_clients = yes

smtpd_client_restrictiOns= permit_sasl_authenticated

smtpd_sasl_security_optiOns= noanonymous

wq!保存

此外,由于当postfix要使用SMTP认证时,会读取/usr/lib/sasl2/smtpd.conf文件的内容以确定所采用的认证方式,所以必须保证/usr/lib/sasl2/smtpd.conf文件的内容是:

pwcheck_method: saslauthd

安装设定dovecot(imap、pop3):

1、确认dovecot是否有安装:

[root@rhel5 ~]# rpm -qa|grep dovecot

dovecot-1.0-1.2.rc15.el5

2、设定用pop3来收取信件:

#vi /etc/dovecot.conf

protocols = pop3 # imap imaps pop3 pop3s 支持的功能

3、启动并测试:

#service dovecot start

# telnet localhost 110

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

+OK dovecot ready.

user 账号

+OK

pass 密码

+OK Logged in.

[root@rhel5 ~]# chkconfig dovecot on

到这里postfix、Cyrus SASL、dovecot就可以正常工作了。

让postfix支持MailScanner、spamassassin、f-prot

A、安装 F-PROT (F-PROT Antivirus for Linux)

从http://files.f-prot.com/files/linux-x86/fp-linux-ws.rpm下载 f-prot

[root@rhel5 ~]# rpm -ivh fp-linux-ws.rpm

B、安装MailScanner

下载http://www.mailscanner.info/file ... 4.60.8-1.rpm.tar.gz

版本.rpm.tar.gz

(这里可能会少些perl的套件,出现错误讯息!请照着错误讯息要的rpm装完即可!)

# tar zxvf MailScanner-4.60.8-1.rpm.tar.gz

# cd MailScanner-4.60.8-1

# ./install.sh

C、安装spamassassin

1、确认spamassassin是否有安装:

# rpm -qa |grep spam

如没有安装就安装该包

[root@rhel5 Server]# rpm -ivh spamassassin-3.1.7-4.el5.i386.rpm

2建立Mailscanner支持spamassassin所需的目录:

# mkdir /var/spool/MailScanner/spamassassin

# chmod 700 /var/spool/MailScanner/spamassassin

# chown postfix.postfix /var/spool/MailScanner/spamassassin

3、修改spamassassin的设定档local.cf

可到站点http://www.yrex.com/spam/spamconfig.php自动生成local.cf的内容。

# vi /etc/mail/spamassassin/local.cf

# How many hits before a message is considered spam.

required_hits 5.0

# Whether to change the subject of suspected spam

rewrite_subject 1

# Text to prepend to subject if rewrite_subject is used

subject_tag *****SPAM*****

# Encapsulate spam in an attachment

report_safe 1

# Use terse version of the spam report

use_terse_report 0

# Enable the Bayes system

use_bayes 1

# Enable Bayes auto-learning

auto_learn 1

# Enable or disable network checks

skip_rbl_checks 1

use_razor2 0

use_dcc 0

use_pyzor 0

# Mail using languages used in these country codes will not be marked

# as being possibly spam in a foreign language.

ok_languages all

# Mail using locales used in these country codes will not be marked

# as being possibly spam in a foreign language.

ok_locales all

4、启动spamassassin

# service spamassassin start

MailScanner设定

1修改MailScanner.conf

# vi /etc/MailScanner/MailScanner.conf

Run As User = postfix

Run As Group = postfix

Incoming Queue Dir = /var/spool/postfix/hold

Outgoing Queue Dir = /var/spool/postfix/incoming

MTA = postfix

Virus Scanners = f-prot

Always Include SpamAssassin Report = yes

Use SpamAssassin = yes

Required SpamAssassin Score = 4

SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin

SpamAssassin Install Prefix = /usr/bin

SpamAssassin Local Rules Dir = /etc/MailScanner

2、修改 postfix支持mailscanner

# vi /etc/postfix/main.cf

变更以下的值

header_checks = regexp:/etc/postfix/header_checks

# vi /etc/postfix/header_checks

/^Received:/ HOLD

注意, 在 / 之前不可以有空白!

3、变更目录权限

# chown postfix.postfix /var/spool/MailScanner/incoming

# chown postfix.postfix /var/spool/MailScanner/quarantine

停止postfix执行、启动MailScanner

# service postfix stop

# chkconfig postfix off

# service MailScanner start

设定MailScanner,当MTA = postfix时,会自己启动postfix,如有设定启动postfix的请先将它停掉

4、定期更新病毒定义文件

# crontab -e

0 4 * * * /usr/local/f-prot/tools/check-updates.pl

并将原本在/etc/cron.hourly/update_virus_scanners 删除掉

测试SpamAssassin

发一封邮件带如下内容,接收后,标题应该带有标记:

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

这样,我们就已经搭建起一个基本的邮件系统。


推荐阅读
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
  • 1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ... [详细]
  • 环境配置tips
    一、MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:  1、数据库名与表名是严格区分大小写的;  2、表的别名是严格区分大小写的& ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
author-avatar
手机用户2502854361
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有