首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

邮件服务器

技术前沿 | Qmail | IMail | MDaemon | Exchange | Domino | 其它 | Foxmail | James | Kerio | JavaMail | WinMail | Sendmail | Postfix | Winwebmail | Merak | CMailServer | 邮件与开发 | 金笛 |
首页 > 邮件服务器 > Qmail > Cyrus IMAP服务器安装与配置 > 正文

Cyrus IMAP服务器安装与配置

出处:未知 作者:未知 时间:2005-8-25 12:01:00

  IMAP(Internet Mesage Access Protocol)是INTENET上标准的访问消息(mail/news等),IMAP服务器上存储消息,并提供客户访问能力。有关安装的问题的一些回答请到以下网址查找:
http://andrew2.andrew.cmu.edu/cyrus/imapd/install-FAQ.
有关该软件的一些反馈的文档请发送到cyrus-bugs@andrew.cmu.edu. 另外,info-cyrus@andrew.cmu.edu邮件列表讨论cyrus IMAP服务器与其他IMAP服务软件的一些情况。更多的信息请到in the mailing-list document.
升级情况(略)
首先要说明信息
必须下列的程序或软件包:
1.makedepend 在本安装包的makedepend子目录下,在安装IMAPD之前先安装。如果失败的话,配置脚本将会用一个假的shell脚本代替makedepend,在用“make all”之前,需用“make clean”清除.
2.Tcl 版本必须是.7.5以上。怎样获得Tcl请参看comp.lang.tcl FAQ。
3.如果需要Kerberos支持,那么在在安装Kerberos时必须包含DES库文件,包括Solaris在内的一些商业版本可能没有DES支持,不能用。下面介绍的美国或加拿大的一些网站上可能可以获得ftp://athena-dist.mit.edu/pub/kerberos/README.KRB4。你也可以从这个网站获得有关的信息http://www.pdc.kth.se/kth-krb/
4.建议你的网站安装snedmail8.7.1以上的版本(笔者用的postfix)。有关sendmail的包可以从以下的网站获得from ftp://ftp.sendmail.org/ucb/sendmail
5.如果你希望你的IMAP能提供网络新闻组服务,必须从INN的服务器上接收。
编译IMAP服务器
如果你解开了压缩包(看README文件以获得更多的信息),“cd”到“cyrus-imapd-1.5.19”目录(如果你版本是1.5.19.)配置文件和许多子目录都在此目录下,用“./configure”就能配置该软件。
配置的程序在配置过程中将试图正确地赋予系统变量适当的值,并将结果存在每个目录的生成的Makefile中,最后,它将生成“config.status”文件,使你可以用它再次创建当前的配置。“config.cache”文件保存结果使得能把配置加速。“ config.log”保存编译器的输出结果。
运行“configure”需要一些时间,在运行过程中,它将显示一些检查的结果信息。
你可以在不同的目录下编译这些源码,这样做允许你能同时编译适合各种情况的IMAP服务器。不过,make的版本必须支持“VPATH”变量(比如GNU的“make”),”cd”到你所需的目录下,并执行“configure”。它将自动检测源码所在目录。。。。。。
“make install”默认地把文件安装在“/usr/local/bin”“/usr/local/man”……下,你也可以通过用“-prefix=PATH”指定安装路径。
你也可以单独列出安装中的明确或不依赖结构的文件,如果在配置中带上“—exec-prefix=PATH”的选项,安装包将会用这个路径安装程序和支持库。文档和数据文件将会仍然用比较规则的路径。
默认情况下,服务进程将被安装在“/usr/cyrus/bin”.你也可以在配置中特别用“—with-cyrus-prefix-PATH”去指定。
以下将简要列出“configure”选项的说明:
--cache-file=FILE 指定测试输出文件(默认为config.cache),也可以用“/dev/null/表示关闭”
--help 显示帮助信息,会显示有关的选项
--quiet --silent -q
不输出任何信息
--srcdir=DIR 指定源码目录,一般配置程序自动能搜寻。
--version 显示版本
--with-cyrus-user=USER
指定用户
--with-cyrus-group=USER
指定组用户
--with-startdir=PATH
指定pwcheck和ptclient的目录,默认在/var下。
--with-login=METHOD
指定登陆认证的模块,一般有如下模块:
unix /etc/passwd文件
unix_pwcheck unix shadow文件通过pwcheck守侯进程
krb Kerkeros 4
krb_pwcheck krb 和 pwcheck
如果你用shadow来认证,配置时带上—with-login=unix_pwcheck的悬想。而且不要以root的身份运行它。
--with-pwcheck=METHOD
指定用pwcheck进行密码检验,只有在登陆名称以“-pwcheck”结尾时这割选项才有用。
--with-auth=METHOD
指定认证模块,有unix\krb\krv_pts
--with-notify=METHOD
--without-notify
指定邮件确认的方法。确定方法有如下几种:zephyr/no,默认是zephyr
--with-krb=PATH
--without-krb
指定kerberos的库文件和头文件。默认在”/usr/local”下。
--with-inn=PATH
指定INN NEWSLIB库的目录。默认会搜索一些目录。只有在你需提供新闻组服务的时候用这个选项。另外,Kerkeros 4需要DES库的支持,
--with-tcl=PATH
--without-tcl
指定tcl库和头文件的路径,默认将在“/usr/local”下,在编译“cyradm”时必须TCL。如果没有请带上选项“—disable-cyradm”。
--with-zephyr=PATH
--with-zephyr
指定zephyr库和头文件。默认在“/usr/local/”下,
--with—lock=METHOD
指定锁定方法,一般有两种:flock(),fcntl().默认是flock();
--disable-cyradm
不编译cyradm管理客户端。
--disable-privacy
关闭网络安全验证选项
--enable-amssync
打开AMS支持
--enbale-cmulocal
打开CMU的内置支持
可能有些系统需要一些不常用的配置选项,你可以通过“./configure”来初始化一些变量的环境。如果你用的是B_shell,可以用如下的命令;
CC=c89 CFLAGS=-02 LIBS=-lposix ./configure
在有“env”的系统里可以用如下命令:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
在编译时,你可能需要修改以下这些环境变量:
CC C编译器,默认是cc/gcc,
CFLAGS C编译器的调试和优化选项
CPPFLAGS C预编译的头文件搜索项和其他混合选项,默认是空的
DEFS 配置选项,如“-Dfoo -Dbar”
LIBS 链接的库,如“-lfoo –lbar”
如果你需要一些不常用的包编译,建议你先仔细熟悉configure的配置,或mail to cyrus-bugs@andrew.cnu.edu
在你顺利完成配置后,运行下面命令:
make depend
make all CFLAGS=-0
如果你想设CFLAGS LDFLAGS 或者:
make all CFLAGS=-02 LDFLAGS=-s
配置imap服务器
以下将介绍shell脚本的运行和配置文件的修改。
1. 为Cyrus建个用户和组,比如:“Cyrus”用户,“mail”组。这是configure默认的选项。
2. 以root身份运行
make install
3.Cyrus的IMAP服务器用BSD4.3的SYSLOG记录系登录消息。如果你的系统中没装syslog
请到cyrus-imapd-1.5.14/syslog/目录下拷贝:
mv syslogd /etc/syslogd
mv syslog.conf /etc/syslog.conf
如果你没copy syslog,请确认支持“local6.debug”:文件应该被包括:
local6.debug /var/adm/imapd.log
创建 imapd.log文件:
touch /var/adm/impad.log
4.创建”/etc/imap.conf”文件,这里给个例子
configdirectory: /var/imap
partition-default: /var/spool/imap
srvtab: /var/imap/svrtab
要想详细了解配置文件的信息,请用“man imapd.conf”。
注意:平时的用户不能是管理员,管理员有权授予普通用户接收MAIL的权限。
5.创建配置目录(目录名为你在imapd.conf已指定的),配置目跟“/usr/lib/news”目录很相似,它存储IMAP的全部信息。
本文已“/var/imap”为例,记住该目录的所有者是用户cyrus和mail组,禁止其他用户访问。操作命令如下:
cd /var
mkdir imap
chown cyrus imap
chgrp mail imap
chmod 750 imap
6.在该配置目录下,创建空文件“mailbox”和一些子目录。
cd imap
true >> mailbox
mkdir user quota proc log msg
chown cyrus *
chgrp mail *
7.创建“/etc/imapd.conf”里指定的partition目录,本文以“/var/spool/imap”为例,主要是用来存储邮箱信息的.不象新闻组,Cyrus允许你可以有多个partition。但不能用“new”作为名称,它是网络新闻组专用的。
cd /var/imap
mkdir imap
chown cyrus imap
chgrp mail imap
chmod 750 imap
8.LINUX.系统上的设置:设置user,quota,partition.,mqueue:
cd /var/imap
chattr +S . user quota
chattr +S /var/spool/imap
chattr +S /var/spool/mqueue
9.如果IMAP被配置成使用pwcheck进程,讲用pwcheck进程验证,而非shadow。创建“/var/pwcheck”目录,并为cyrus只读,并且把进程/usr/cyrus/bin/pwcheck设成系统启动时就运行的。
mkdir /var/pwcheck
chown cyrus /var/pwcheck
chmod 700 /var/pwcheck
10.如果IMAP被编译成支持Kerberos v4认证,为服务创建一个Kerberos v4身份,在“srvtab”文件里增加服务的关键字。此文件为cyrus用户只读。IMAP服务器的身份标识格式为“imap.HOST@REALM ”host为主机的节点名,“REALM”是机器的Kerberos域。
下面给出一例子(主机节点名为foobar,域名为ANDREW。CMU。EDU):
ksrutil –f /var/imap/srvtab add
文件srvtab如下:
Name: imap
Instance: foobar
Realm:ANDREW.CMU.EDU
Version number:
New principal:imap.foobar@ANDEW.CMU.EDU;version 0
Is this correct?(y,n)[y]
Password:
Vrifying ,please re-enter Password:
Key successfully added.
Would you like to add another key?(y,n)[y]n
如果你要装Kerberized POP,在srvtab中也要为之创建一个关键字pop.HOST@REALM
改该文件的属主:
chown cyrus /var/imap/srvtab
11.在/etc/services下打开相关服务。
pop3 110/tcp
imap 143/tcp
imsp 406/tcp
kpop 1109/tcp
12.在/et/inetd.conf文件中增加
imap stream tcp nowait cyrus /usr/cyrus/bin/imapd imapd
如果你想运行pop3协议,加入;
pop3 stream tcp nowait cyrus /usr/cyrus/bin/pop3d pop3d
如果你想运行KPOP,课加入:
kpop stream tcp nowait cyrus /usr/cyrus/bin/pop3d pop3d
13.如果你想支持finger服务,请把“/etc/services”和“/etc/inetd.conf”下的有关选项打开,
注意,必须有finger的客户端支持,然后分别做如下操作:
在“/etc/services”下增添:
fud 4201/udp
在“/etc/inetd.conf”下增添:
fud dgram udp wait cyrus /usr/cyrus/bin/fud fud
14.重启inted.在很多系统可以用如下命令“kill –HUP pid”
15.你的sendmail(如果你用sendmail)版本必须是8.7以上的。
16.配置sendmail使它能发送当地的邮件到IMAP的服务器。详细可看sendmail压缩包中的cf/README和cf/cf/cyrusproto.mc.
17.编辑/etc/group并增加“daemon”用户到“mail”组,即允许sendmail运行“deliver”程序来投递邮件给IMAP服务器。
18.Cyrus IMAP默认重复投递,可用“deliver”加“-e”来实现,从而使投向同一个邮箱的邮件不会有相同的ID.你也可以用cron来调用“/usr/cyrus/bin/deliver –E 3”每天定时地清除投递的数据库。也可以用“mkdir /var/imap/deliverdb”来创建“deliverdb”目录储存数据库文件。
如果你想让你的IMAP服务器能提供netnets newsgroup服务,接着以下步骤:
1.为“news”分区创建一个目录,此目录不同于news的spool目录,比如“/var/spool/imap-news”,则操作如下:
cd /var/spool
mkdir imap-news
chown cyrus imap-news
chgrp mail imap-news
chmod 750 imap-news
2.设置partition-news,newsspool的值。
partition-news:/var/spool/imap-news
newsspool:var/spool/news
3. 用户cyrus必须对out.going目录有写的权限。
4. 在newsfeeds文件增加以下一行:
collectnews!:*:Tf,WO:collectnews
5. 在crontab中增加两项调用;
“/usr/cyrus/bin/feedcyrus”(每隔10分钟)
“/usr/cyrus/bin/syncnews/var/news/active>/dev/null 2>&1”(每晚)

测试IMAP服务器
必须重启你的机器以及执行以下的步骤,也可以参看瑞、http://andrew2.andrew.cmu.edu/cyrus/imapd/install-FAQ.
1. 如果你的IMAP服务是支持Kerberos v4认证的,以cyrus用户的身份运行“krbck”。该程序能诊断你的配置错误。
2. telnet到服务器的IMAP端口:
如:telnet foobar imap
如果服务正在运行,你将看到如下信息:
Trying 128.2.232.95...
Connected to foobar.andrew.cmu.edu.
Escape character is ^].
* OK foobar.andrew.cmu.edu Cyrus IMAP4 v1.5.14 server ready
如果看不到OK的信息,就可能出了问题了。可以用“logout”命令终止连接。
3.用“imtest”命令测试登录的认证;
/usr/local/bin/imtest –p foobar imap
如果服务正在运行,你将看到如下信息;
* OK foobar.andrew.cmu.edu Cyrus IMAP4 v1.5.14 server ready
Password:
. LOGIN smith X
. OK User logged in
如果看不到OK的信息,就可能出了问题了,而且在syslog里会有相关的报错记录。可以用“logout”命令终止连接。
4.如果你的IMAP服务器编译时支持Kerberos v4 认证,用imtest命令测试,转向cyrus的目录,做如下操作:
/usr/local/bin/imtest -k foobar imap
* OK foobar.andrew.cmu.edu Cyrus IMAP4 v1.5.14 server ready
. AUTHENTICATE KERBEROS_V4
+ Ln8h6Q==
BAcBQU5EUkVXLkNNVS5FRFUAOCA+0y5YnrqIVikng46sam7RSObZXCVSA9xCx
BZSGgOy9ehHRj8NQjLjxDpib0D9uT0fo7QaXhLM6zCp9dQ1pX4FfNO2V39vBp
Q19QIK4S1410prvM2c45qeizecI7zAvA=
2cRhIC+aH70WHqYaW18YnQ==
. OK User logged in (no protection)
__No integrity protection__

邮箱管理
用“cyradm”可以创建、删除、限制和控制邮箱(详细可看帮助)。可用“cyradm ”命令启动,提示符将变成“>”。你可以用“help”命令,将会出现如下信息:
createmailbox, cm create a mailbox
deleteaclmailbox, dam delete an ACL on a mailbox
deletemailbox, dm delete a mailbox
help get help on commands
listaclmailbox, lam list the ACL on a mailbox
listmailbox, lm list mailboxes
listquota, lq list quota on root
listquotaroot, lqr, lqm list quota roots on mailbox
quit exit program
renamemailbox, renm rename a mailbox
setaclmailbox, sam set an ACL on a mailbox
setquota, sq set quota limits
注意:如果你的系统中,Kerberos v4 没有在运行,那你必须为用户设置密码。
根据邮箱的命名惯例,要求任何用户的第一级邮箱(收件箱)必须时“user.”格式的。可以用如下命令创建一个新邮箱:
createmailbox user.
比如为userid为"smith"的用户创建邮箱,可用如下命令:
createmailbox user.smith
用如下命令可限制空间:
setquota user.smith 10000。
在用户的第一级邮箱建立(收件箱)后,用户能自己建立下一级的邮箱,比如“smith”用户为自己分别建立工作和休闲的邮箱:
user.smith.work
user.smith.play
在cyradm的帮助页(1)里有有关访问权限的详细内容。必须注意的是,管理员在删除一个邮箱之前必须授权她自己可以删除访问。你可用如下命令:
setaclmailbox d
deletemailbox
在你的IMAP服务配置好之后,还要再配置一个MAIL接口,比如Pine.当然这就不是本章的话题了

,
相关文章 热门文章
  • 在Outlook的POP/IMAP4帐号中配置LDAP通讯录
  • SquirrelMail IMAP登录请求拒绝服务漏洞
  • OfflineIMAP SSL凭证验证安全绕过漏洞
  • office outlook 2010 如何修改IMAP电子邮件的数据文件位置
  • POP与IMAP优缺点比较
  • IMAP4协议标准的全面分析
  • 解决Gmail的imap收发邮件无法连接服务器的问题
  • 开通IMAP服务 用Foxmail远程遥控QQ邮箱
  • Cyrus IMAP Server SIEVE脚本栈溢出漏洞
  • IBM Lotus Domino IMAP服务器远程拒绝服务漏洞
  • QQ邮箱支持IMAP协议,轻松实现移动办公
  • UW-IMAP tmail及dmail本地栈溢出漏洞
  • Linux邮件服务器软件比较
  • 域名和邮件服务器FAQ
  • Qmail自动安装包Qmail_setup-v1.5.3发布
  • freebsd+qmail+mysql+vpopmail之完全ports安装
  • qmail+vpopmail+MySQL+igenus+RedHat 7下建立邮件系统
  • QMAIL终极安装指南
  • 配置你的第一台e-mail服务器
  • qmail+webmail on Linux9 安装全过程
  • 分布式的Qmail邮件系统
  • qmail+vpopmail+mysql+qmailadmin+ezmlm+igenus构建企..
  • qmail+webmail on Linux9 安装全过程
  • Qmail Server Howto
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号