当前位置: 技术问答>linux和unix
RedHat如何构件邮件服务器?详细步骤!
来源: 互联网 发布时间:2015-10-17
本文导语: RedHat如何构件邮件服务器?详细步骤! | 1 安装软件 2.1 Web服务器的安装 在web服务器上,管理员需要安装下列软件包:Apache, PHP, postfix, OpenLDAP, UW IMAP, 及IMP. 安装Apache和PHP是很容易的...
RedHat如何构件邮件服务器?详细步骤!
|
1 安装软件 2.1 Web服务器的安装
在web服务器上,管理员需要安装下列软件包:Apache, PHP, postfix, OpenLDAP, UW IMAP, 及IMP. 安装Apache和PHP是很容易的,具体步骤在PHP软件包中的安装导引有详细的说明。在安装PHP时,你需要将对LDAP和IMAP的支持编译进来。 安装postfix可以参考随软件包的安装指南,特别要注意文件LDAP_README。
1.2 LDAP服务器的安装
需要安装OpenLDAP软件来构建LDAP服务器。你需要决定一个root dn并相应地向LDAP的db中加入设置。
1.3 IMAP服务器的安装
在IMAP服务器上,你将需要安装LDAP, postfix, Cyrus及cyrus的pwcheck_ldap补丁。编译postfix时需要有加入对ldap的支持。根据软件安装文档安装Cyrus,但是需要根据pwcheck_ldap补丁的文档对pwcheck_ldap.c进行修改。另外需要修改pwcheck_ldap.c来提供ldap服务器及根dn信息;同样若在linux服务器上运行IMAP服务器,则需要在在文件pwcheck_ldap.c作如下修正: 增加行: #include 另外还需要做一些别的语法修改,具体可以在编译是发现。 使用下面的命令配置cyrus:
./configure --with-login=unix_pwcheck --with-pwcheck=ldap
后面的编译及安装则根据cyrus的文档;
2. 如何配置服务器协同工作 3.1 LDAP服务器的配置
每个在LDAP数据库中的邮件用户信息除了其他的希望提供的信息以外需要有下面的内容:(假设你的根dn是o=someorg, c=US):
dn: uid=someuser, o=someorg, c=us
uid: someuser
userpassword: somepassword
maildrop: fulladdress@machine.dom.ain
mailacceptinggeneralid: someuser
mailacceptinggeneralid: somealias
同样,需要选择一个用户拥有cyrus管理权限。只有需要在imap服务器上配置cyrus时,才会需要考虑管理问题。另外,最好不要给一个已经存在的用户添加管理权限,这样做可能导致安全问题或者导致该用户不能查看自己的信件的问题。
2.2 imap服务器的配置
配置在IMAP服务器上的postfix使用ldap来进行别名匹配。在文档LDAP_README对这个问题进行了说明。对于Cyrus,按照软件包的安装说明文件进行即可。同样,不要忘记激活pwcheck并在imap.conf中增添管理用户。
2.3 web服务器
在这一步的设置中,web服务器同样是作为接收邮件网关的前端。配置postfix来使用ldap进行别名匹配。从而实现检查LDAP的maildrop表项并转发该邮件到maildrop地址,所以在maildrop中需要全邮件名。 例如,你可以将700,000个用户分配到各个服务器上,平均每台服务器10000个用户。邮件目的地址是user1@dom.ain的邮件将接入到某台WEB服务器,而该邮件将根据maildrop属性被转发到地址,而发网user657的邮件将被转发给user657@mail34。而且,maildrop属性同时可以被用作转发地址,如给user302的信件被转发给someuser@somewhereelse.com">
例如,你可以将700,000个用户分配到各个服务器上,平均每台服务器10000个用户。邮件目的地址是user1@dom.ain的邮件将接入到某台WEB服务器,而该邮件将根据maildrop属性被转发到地址,而发网user657的邮件将被转发给user657@mail34。而且,maildrop属性同时可以被用作转发地址,如给user302的信件被转发给someuser@somewhereelse.com。
对IMP的培配置一般将根据软件文档,配置结束以后,需要做如下修改: 在config/defaults.php3增添如下内容:
/* LDAP/IMAP Server Default */ $default->LDAP_server = 'ldap.dom.ain'; $default->LDAP_dn = 'o=someorg,c=US'; $default->LDAP_search_field = 'uid'; $default->ldap_choose_server = true;
to mailbox.php3 apply the following patch:
Index: mailbox.php3 =================================================================== RCS file: /home/cvs/imp/mailbox.php3,v retrieving revision 2.29 diff -c -r2.29 mailbox.php3 *** mailbox.php3 1999/07/29 07:20:00 2.29 --- mailbox.php3 1999/08/04 18:04:10 *************** *** 29,34 **** --- 29,51 ---- require './lib/mimetypes.lib'; require './config/defaults.php3'; + /************LDAP**************/ + + if ($default->ldap_choose_server) { + $ldapconnect = ldap_connect($default->LDAP_server); + if ($ldapconnect) { + print("YES! "); + $ldapbind = ldap_bind($ldapconnect); + $ldapsearch = ldap_search($ldapconnect, $default->LDAP_dn, $default->LDAP_search_field."=".$imapuser, array("maildrop")); + $ldapget = ldap_get_entries($ldapconnect, $ldapsearch); + $ldapspl = explode("@", $ldapget[0]["maildrop"][0]); + $server = $ldapspl[1]; + $port = $default->port; + } + } + /**********end ldap************/ + + /* Html styles configuration */ require './config/html.php3'; /* Mailbox configuration */ 全部配置结束以后,将具有一个高可扩展性的web邮件系统。
注:1999年8月,IMP的新版本已经包含了这些补丁的内容,所以如果使用新版本的话,就不需添加这些内容。
4. Miscellaneous 4.1 Adding Users
这里是一小段向LDAP服务器中增添用户的代码,并且同时向cyrus增添一个邮件用户。这是针对IMAP服务器设计的,但是你可以修改其适应别的环境。
摘自:http://www.linuxaid.com.cn
在web服务器上,管理员需要安装下列软件包:Apache, PHP, postfix, OpenLDAP, UW IMAP, 及IMP. 安装Apache和PHP是很容易的,具体步骤在PHP软件包中的安装导引有详细的说明。在安装PHP时,你需要将对LDAP和IMAP的支持编译进来。 安装postfix可以参考随软件包的安装指南,特别要注意文件LDAP_README。
1.2 LDAP服务器的安装
需要安装OpenLDAP软件来构建LDAP服务器。你需要决定一个root dn并相应地向LDAP的db中加入设置。
1.3 IMAP服务器的安装
在IMAP服务器上,你将需要安装LDAP, postfix, Cyrus及cyrus的pwcheck_ldap补丁。编译postfix时需要有加入对ldap的支持。根据软件安装文档安装Cyrus,但是需要根据pwcheck_ldap补丁的文档对pwcheck_ldap.c进行修改。另外需要修改pwcheck_ldap.c来提供ldap服务器及根dn信息;同样若在linux服务器上运行IMAP服务器,则需要在在文件pwcheck_ldap.c作如下修正: 增加行: #include 另外还需要做一些别的语法修改,具体可以在编译是发现。 使用下面的命令配置cyrus:
./configure --with-login=unix_pwcheck --with-pwcheck=ldap
后面的编译及安装则根据cyrus的文档;
2. 如何配置服务器协同工作 3.1 LDAP服务器的配置
每个在LDAP数据库中的邮件用户信息除了其他的希望提供的信息以外需要有下面的内容:(假设你的根dn是o=someorg, c=US):
dn: uid=someuser, o=someorg, c=us
uid: someuser
userpassword: somepassword
maildrop: fulladdress@machine.dom.ain
mailacceptinggeneralid: someuser
mailacceptinggeneralid: somealias
同样,需要选择一个用户拥有cyrus管理权限。只有需要在imap服务器上配置cyrus时,才会需要考虑管理问题。另外,最好不要给一个已经存在的用户添加管理权限,这样做可能导致安全问题或者导致该用户不能查看自己的信件的问题。
2.2 imap服务器的配置
配置在IMAP服务器上的postfix使用ldap来进行别名匹配。在文档LDAP_README对这个问题进行了说明。对于Cyrus,按照软件包的安装说明文件进行即可。同样,不要忘记激活pwcheck并在imap.conf中增添管理用户。
2.3 web服务器
在这一步的设置中,web服务器同样是作为接收邮件网关的前端。配置postfix来使用ldap进行别名匹配。从而实现检查LDAP的maildrop表项并转发该邮件到maildrop地址,所以在maildrop中需要全邮件名。 例如,你可以将700,000个用户分配到各个服务器上,平均每台服务器10000个用户。邮件目的地址是user1@dom.ain的邮件将接入到某台WEB服务器,而该邮件将根据maildrop属性被转发到地址,而发网user657的邮件将被转发给user657@mail34。而且,maildrop属性同时可以被用作转发地址,如给user302的信件被转发给someuser@somewhereelse.com">
例如,你可以将700,000个用户分配到各个服务器上,平均每台服务器10000个用户。邮件目的地址是user1@dom.ain的邮件将接入到某台WEB服务器,而该邮件将根据maildrop属性被转发到地址,而发网user657的邮件将被转发给user657@mail34。而且,maildrop属性同时可以被用作转发地址,如给user302的信件被转发给someuser@somewhereelse.com。
对IMP的培配置一般将根据软件文档,配置结束以后,需要做如下修改: 在config/defaults.php3增添如下内容:
/* LDAP/IMAP Server Default */ $default->LDAP_server = 'ldap.dom.ain'; $default->LDAP_dn = 'o=someorg,c=US'; $default->LDAP_search_field = 'uid'; $default->ldap_choose_server = true;
to mailbox.php3 apply the following patch:
Index: mailbox.php3 =================================================================== RCS file: /home/cvs/imp/mailbox.php3,v retrieving revision 2.29 diff -c -r2.29 mailbox.php3 *** mailbox.php3 1999/07/29 07:20:00 2.29 --- mailbox.php3 1999/08/04 18:04:10 *************** *** 29,34 **** --- 29,51 ---- require './lib/mimetypes.lib'; require './config/defaults.php3'; + /************LDAP**************/ + + if ($default->ldap_choose_server) { + $ldapconnect = ldap_connect($default->LDAP_server); + if ($ldapconnect) { + print("YES! "); + $ldapbind = ldap_bind($ldapconnect); + $ldapsearch = ldap_search($ldapconnect, $default->LDAP_dn, $default->LDAP_search_field."=".$imapuser, array("maildrop")); + $ldapget = ldap_get_entries($ldapconnect, $ldapsearch); + $ldapspl = explode("@", $ldapget[0]["maildrop"][0]); + $server = $ldapspl[1]; + $port = $default->port; + } + } + /**********end ldap************/ + + /* Html styles configuration */ require './config/html.php3'; /* Mailbox configuration */ 全部配置结束以后,将具有一个高可扩展性的web邮件系统。
注:1999年8月,IMP的新版本已经包含了这些补丁的内容,所以如果使用新版本的话,就不需添加这些内容。
4. Miscellaneous 4.1 Adding Users
这里是一小段向LDAP服务器中增添用户的代码,并且同时向cyrus增添一个邮件用户。这是针对IMAP服务器设计的,但是你可以修改其适应别的环境。
摘自:http://www.linuxaid.com.cn
|
找一本RedHat Linux 9网络服务的书,是梁如军,丛日权等写的,机械工业出版社出的,45块钱左右,上面什么服务都有讲,你自己看看吧,我以前看的,不过现在忘了!!
|
up
|
RH自带SENDMAIL
|
http://linux.vbird.org/linux_server/0380sendmail.php
簡易 Mail Server 架設 -- Sendmail 設定
簡易 Mail Server 架設 -- Sendmail 設定
|
楼主真可怜,同情!
|
同情楼主~
up
up
|
:(