首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络编程
Cyrus IMAP服务器安装与配置-网管专栏,邮件服务
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 

  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.当然这就不是本章的话题了


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·使用windows脚本入侵WINDOWS服务器-网管专栏,网络技术
·清除网页历史记录-ASP教程,ASP应用
·在java中利用动态编译实现eval-JSP教程,Java技巧及代码
·如何制作Asp.Net界面模板-.NET教程,Asp.Net开发
·C#实现的18位身份证格式验证算法-.NET教程,数据库应用
·如何用PHP发电子邮件(1)-PHP教程,邮件处理
·Java 中的 XML:Java 文档模型的用法-JSP教程,Java与XML
·如何更新父窗体-.NET教程,Asp.Net开发
·用Windows 2003实现软RAID-网管专栏,操作系统
·使用Magic Winmail Server轻松架设邮件服务器(五)-网管专栏,邮件服务
最新文章
·photoshop让花卉照片更加清晰嫩绿_photoshop教程
·论c#变得越来越臃肿是不可避免的_c#应用
·杜少军:行走在网络世界的奇才_站长访谈
·教你用photoshop外插滤镜做卷页效果_photoshop教程
·通过dreamweaver设计网页时组织css的建议_dreamweaver教程
·草根网站比门户网站更有前途_站长心得
·如何针对google进行网站优化_google推广
·google推“我的搜索历史”测试版 提高个性化搜索竞争力_google推广
·八大要领 做网站就这么简单2_站长心得
·关闭widnows vista偷偷共享的文件_windows vista
相关主题
  • cyrus imap服务器安装与配置_qmail
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭