作者:红星闪闪小肉肉 | 来源:互联网 | 2014-05-28 08:57
在rh5下默认是安装sendmail的,也就是说可以实现发信了,如果要实现在oe中接收信件,那就要安装相应的收件服务。这就介绍cyrus-imap来实现收信。Cyrus要自己安装。可将RedHatEnterpriseLinux5的第2和第3张安装光盘放入光驱,加载光驱后在光盘的Server目
在rh5下默认是安装sendmail的,也就是说可以实现发信了,如果要实现在oe中接收信件,那就要安装相应的收件服务。这就介绍cyrus-imap来实现收信。Cyrus要自己安装。
可将Red Hat Enterprise Linux
5的第2和第3张安装光盘放入光驱,加载光驱后在光盘的Server目录下找到以下与cyrus-imapd服务相关的RPM包文件:
cyrus-imapd-perl-2.3.7-1.1.el5.i386.rpm
cyrus-imapd-utils-2.3.7-1.1.el5.i386.rpm
db4-utils-4.3.29-9.fc6.i386.rpm
lm_sensors-2.10.0-3.1.i386.rpm
cyrus-imapd-2.3.7-1.1.el5.i386.rpm
cyrus-imapd-devel-2.3.7-1.1.el5.i386.rpm
使用rpm ?ivh 命令安装。
2.cyrus-imapd服务的基本配置
cyrus-imapd服务的配置文件有以下3个。
/etc/sysconfig/cyrus-imapd:用于启动cyrus-imapd服务的配置文件。
/etc/cyrus.conf:是cyrus-imapd服务的主要配置文件,其中包含该服务中各个组件(IMAP、POP3、sieve和NNTP等)的设置参数。
/etc/imapd.conf:是cyrus-imapd服务中的IMAP服务的配置文件。
默认情况下,这些配置文件已经基本设置好,只要启动cyrus-imapd服务,就可以同时提供POP和IMAP服务。使用以下命令启动cyrus等服务,将cyrus加入开机启动。
service saslauthd restart
service cyrus-imapd restart
service sendmail restart
service xinetd restart
chkconfig saslauthd on
chkconfig cyrus-imapd on
chkconfig sendmail on
在linux中新建一用户,例如系统维护用户 operator
#useradd operator
#passwd operator 设置口令。如test
别忘了在passwd文件中设置/etc/nologin 增加安全性。
配置cyrus口令
#passwd cyrus
进入cyrus管理工具
#/usr/bin/cyradm -u cyrus
localhost
创建operator的用户邮箱前面“user.”是前缀。
#cm user.operator
在cyradm管理命令行状态下,可以使用下面的命令为用户lbt在其邮件信箱下创建发件箱、垃圾箱和草稿箱等其他文件夹。
createmailbox user.lbt.Send
createmailbox user.lbt.Trash
createmailbox user.lbt.Drafts
在创建了用户信箱user.lbt后,想直接用deletemailbox命令来删除该邮箱,即使是管理员cyrus也无权(Permission
denied)。要想删除它,必须先用下面的命令为管理员cyrus自己授予完全控制的权限(all)。然后用deletemailbox删除邮箱
setacl user.lbt cyrus all
localhost.localdomain> quit
你可以测试用户:
telnet localhost 110
the login:
user operator
pass test
You should see:
+OK Name is a valid mailbox
+OK Mailbox locked and ready
这就成功了。
你现在需要设置Sendmail收信,然后把信件发到cyrus。编辑配置文件:/etc/mail/sendmail.mc,在文件末尾增加一行:
dnl MAILER(smtp)dnl
dnl MAILER(procmail)dnl
define(`confLOCAL_MAILER', `cyrus')
MAILER(`cyrus')
如果你想让Sendmail除了本机,能从别的地址收信,把下面这行
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
改成:
dnl DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
然后,执行:
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
你需要重启Sendmail:
service sendmail restart