点击这里获取免费大流量卡

软件准备
操作系统:centos5.6
邮件系统:
            sendmail
            sendmail-cf
            m4
pop3认证:dovecot
smtp认证:
cyrus-sasl
cyrus-sasl-md5
cyrus-sasl-plain
     cyrus-sasl-lib
sendmail-8.13的rpm包默认已经支持了cyrus-sasl 认证方式,也就是说,sendmail会在cyrus-sasl的工作目录下自动创建相关认证配置文件,并监听25号端口,就不用你去手动自己建立配置文件和监听端口了。当有请求进入25号端口的时候,sendmail会自动找到/usr/lib/sasl2/Sendmail.conf读取认证方法。
2.安装软件
yum install xxxx   安装这些软件 (这些软件centos光盘也都自带)
3.认证配置
pop3:
网上说修改/etc/dovecot.conf文件,将第17行的:#protocols = imap imaps pop3 pop3s的#去掉。其实不用,它默认已经启用了这些服务,除非你只想用dovecot-auth的认证,你可以改成protocols = none,否则不用改。
貌似升级cyrus-sasl-2.1.22之后启动dovecot会报错Error: POP3 enabled but pop3_uidl_format not set
各种配置没法解决.
改用 uw-imap,直接 yum install uw-imap
vim /etc/xinetd.d/ipop3
        log_on_success          += USERID
        log_on_failure          += USERID
        disable                = no
启动即可 /etc/init.d/xinetd restart
################
smtp:
注意,smtp稍微麻烦一下。
我讲下原理:
当用户请求进入 25号端口后,sendmail调用cyrus-sasl的saslauthd进程,saslauthd要求对方输入本地系统用户的用户名和密码,当用户输入好后,saslauthd会去查找系统的/etc/shadow文件,密码确认无误,放行,告诉sendmail,这个用户合法,可以使用邮件服务来发邮件。
这时候你去/usr/lib/sasl2/下看看,sendmail已经做好了一个sendmail.conf文件,里面指明了:pwcheck_method=saslauthd,说明sendmail认证时就要调用saslauthd
所以要实现上述功能,就要设置cyrus-sasl的saslauthd,给它指定认证方式。
首先,进入/etc/sysconfig/,打开saslauthd的脚本,找到第7行的:
MECH=
等号后面不管写什么,我们都要改成:
MECH=shadow
保存
这样saslauthd才会去找shadow文件给用户做认证。
其实saslauthd还可以用自己的用户名和密码数据库做验证,但这样不方便,还要另外创建用户,不如直接用系统自身存在的用户名和密码。
4.Sendmail配置.
配置邮件服务器名称:
打开/etc/mail/local-host-names
加入你 @后面的邮箱地址。比如我这里是otto@linuxedentest.com
那么,你要在local-host-names文件里的第二行添加:
linuxedentest.com
保存
当然
local-host-names还可以设置邮箱别名,这个不多说,大家查文档看看。
改好后还要去你的dns服务器上,打上mx标志,添加A标记,用来解析dns名和地址。具体方法就要查查bind的设置方法了,或者win2003的dns设置方法。
配置sendmail.mc:
打开/etc/mail/sendmail.mc文件,
找到:
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(confAUTH_MECHANISMS', EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
把前面的dnl注释去掉,变成:
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
//不注释这句话则access中即使清空也能允许外发邮件,如果注释了这句则需要根据access文件的内容来允许转发邮件(默认清空的话只能发本域).
define(confAUTH_MECHANISMS', EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
//如果使用openwebmail需要smtp认证该行需要如下修改:define(confAUTH_MECHANISMS',LOGIN PLAIN')dnl .并且在openwebmail.conf需要增加smtpauth yes .以及smtpauth.conf 中加入一组认证帐号.
上面两句的意思是:
放行那些通过EXTERNAL, LOGIN, PLAIN, CRAM-MD5或DIGEST-MD5等方式验证的邮件用户,无视access文件中的设置(REJECT设置依然有效)。
access规则的文件对服务器本机不能限制,如:清空access,其它机器不能发外域,但服务器本机可以发外域.(REJECT设置依然对所以机器有效),编辑access文件后使用makemap -v hash /etc/mail/access.db < /etc/mail/access 生效
confAUTH_MECHANISMS,确定系统支持的认证方式。LOGIN PLAIN 方式下,outlook用的多。
还不算完,找到:
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA') dnl
注释掉:
dnl DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA') dnl
//这句是不需要认证使用的smtp发信端口,因为我们需要认证所以要注释掉这句
找到这句
dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
改成:
DAEMON_OPTIONS(`Port=smtp, Name=MSA, M=Ea')dnl
//使用这句就会启动smtp认证功能.也可以两句都启动使用不同的端口来认证和不认证
到此为止,保存sendmail.mc
用m4重新生成sendmail.cf文件
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
启动dovecot进程:
/etc/init.d/dovecot start
启动saslauthd进程:
/etc/init.d/saslauthd start
启动sendmail进程:
/etc/init.d/sendmail start
把这些进程加入到启动脚本中去:
chkconfig dovecot on
chkconfig saslauthd on
chkconfig sendmail on
ok,所有设置全部完成,可以正常认证和收发邮件了。
=============================分割线==============================================
                            smtp测试方法:
以下sh#表示在shell上输入;C 为客户端输入, S为服务器端返回信息 。
sh# telnet <邮件服务器地址/IP> <port(一般是25)>
S : 220 localhost.localdomain ESMTP Sendmail 8.13.8/8.13.8; Sun, 18 May 2008 01:55:03 +0800
C : ehlo <名字> (不带认证功能的是helo +名字)
S : 250-localhost.localdomain Hello zhangzb.nec-as.nec.com.cn [172.28.90.9], pleased to meet you
S : 250-ENHANCEDSTATUSCODES
S : 250-PIPELINING
S : 250-8BITMIME
S : 250-SIZE
S : 250-DSN
S : 250-ETRN
S : 250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN
S : 250-DELIVERBY
S : 250 HELP
C : auth login
S : 334 VXNlcm5hbWU6
注:{ 下面先输入username后passwd,两者需要输入encode base64码,转换方法:
sh# perl -MMIME::Base64 -e 'print encode_base64("username")'
(注意print前后 是单引号,username 处替换成你需要的单词)
}
C : MQ== (这是我的用户名:1)
S : 334 UGFzc3dvcmQ6
C : MQ==   (密码,也是1)
S : 235 2.0.0 OK Authenticated
C : MAIL FROM:<XXXX@XXXX> (部分服务器设置后,需要真实的邮箱后缀名,具体方法不详)
S : 250 2.1.0 <XXXX@XXXX>... Sender ok
C : RCPT TO:<XXXX@XXXX>   (目标邮箱)
S : 250 2.1.5 <XXXX@XXXX>... Recipient ok
C : DATA
S : 354 Enter mail, end with "." on a line by itself
C : 〈这里添邮件内容〉
C :.
/////////////////////////////////////////////////////////////////////////////////////////////////////////
安装dovecot-1.0-1.2.rc15.el5.i386.rpm时提示缺少libmysqlclient.so.152009-03-03 23:34
[root@localhost ~]# rpm -ivh /mnt/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm
warning: /mnt/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
error: Failed dependencies:
        libmysqlclient.so.15 is needed by dovecot-1.0-1.2.rc15.el5.i386
        libmysqlclient.so.15(libmysqlclient_15) is needed by dovecot-1.0-1.2.rc15.el5.i386
如果出现以上提示,需要安装以下两个软件包:
[root@localhost ~]# rpm -ivh /mnt/Server/perl-DBI-1.52-1.fc6.i386.rpm
warning: /mnt/Server/perl-DBI-1.52-1.fc6.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
  1:perl-DBI               ########################################### [100%]
[root@localhost ~]# rpm -ivh /mnt/Server/mysql-5.0.22-2.1.i386.rpm
warning: /mnt/Server/mysql-5.0.22-2.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
  1:mysql                  ########################################### [100%]
有的人可能还会提示:
libpq.so.4 is needed by dovecot-1.0-1.2.rc15.el5.i386
则还需要安装:
[root@localhost ~]# rpm -ivh /mnt/Server/postgresql-libs-8.1.4-1.1.i386.rpm
warning: /mnt/Server/postgresql-libs-8.1.4-1.1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
  1:postgresql-libs        ########################################### [100%]
以上3个软件包都在第二张光盘中,安装后即可安装dovecot
[root@localhost ~]# rpm -ivh /mnt/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm
warning: /mnt/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
  1:dovecot                ########################################### [100%]

点击这里获取免费大流量卡

如果您喜欢本站,点击这儿可以捐赠本站
这些信息可能会帮助到你: 联系作者 | 报毒说明
修改版本软件,加群提示等均为修改者自留,非本站信息,注意鉴别