iRedMail安装及整合AD

开源世界 Winter 5年前 (2015-03-23) 5092次浏览 已收录 0个评论

准备上开源邮件系统,现在各种测试。

环境:AD主机:ad.szmaxcent.com 192.168.100.31 Win Server 2008 R2

         Mail主机:mail.szmaxcent.com 192.168.100.98 CentOS 6.6

 
一、安装iRedMail

1.安装前环境配置

修改主机名

# vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=mail.szmaxcent.com
GATEWAY=192.168.100.1

#vi /etc/hosts

127.0.0.1   mail.szmaxcent.com  mail    localhost localhost.localdomain localhost4 localhost4.localdomain4
关闭Selinux

#vi /etc/selinux/config

SELINUX=disabled

重启服务器

#reboot

2.安装iRedMail

下载iRedMail,目前版本为0.9.0

# wget http://www.iredmail.com/iRedMail-0.9.0.tar.bz2

解压下载的iRedMail到家目录下

#tar –jxvf iRedMail-0.9.0.tar.bz2 –C ~

因安装脚本默认使用iredmail.org域名,但这域名被伟大的GFW给挡了,所以得先修改~/iRedMail0.9.0/pkgs/get_all.sh脚本

# vi ~/iRedMail-0.9.0/pkgs/get_all.sh

修改第38行export IREDMAIL_MIRROR=”${IREDMAIL_MIRROR:=http://iredmail.org}”中的iredmail.org改为网站的IP地址
173.254.22.21,不过最好是自己ping一下iredmail.org的域名看看是什么IP,有作者改IP的可能。

执行#bash ~/iRedMail0.9.0/iRedMail.sh

执行后会安装repl的源及一些相关的依赖包,然后跳入欢迎界面

image

选择Yes后进去下一步

image

注意,红色框内填写Mailbox存储地址,这里我就先用默认的了,生产环境的话会专门分一个区或者挂载相关设备来存储邮件,当然,直接把分区挂载到默认的/var也可以的。

继继下一步

image

选择WEB服务程序,有两个可选,这个见仁见智吧,各有优劣,我这里选用了Apche。

image

选择邮件帐号存储方式,因为我们要与AD整合,这里必须使用OpenLDAP。

image

输入LDAP Root DN,这里我输入与AD相同的DN,dc=szmaxcent,dc=com

image

设置LDAP管理员Manager的密码。

image

设置MySQL管理员root的密码。

image

设置第一个虚拟邮件域,也就是邮件地址@后面的部分,我这里是szmaxcent.com

image

设置默认管理员邮箱postmaster@szmaxcent.com的密码

image

选择安装组件。

1.DKIM,这是一项数字签名以防止伪造你的域名发送垃圾邮件的利器,看需求选装吧。

2.iRedAdmin,这是项目作者的作品,用于管理邮件域和邮箱,但是由于我们要集成AD,所以这个也就不起作用了,不需要安装。

3.Roundcubemail,这是个优秀的开源WebMail程序,有丰富的插件可供使用,如果需要WebMail服务就必须要安装了。

4.SoGo,一个群件系统,提供类似于OUTLOOK的服务,支持Microsoft ActiveSync,这个也是看需求吧

5.Awstats,这是一个很棒的WEB日志分析工具,看需求吧,推荐安装

6.Fail2ban,一款安全工具,能够将暴力破解密码的用户IP直接封锁,可定义封锁时间。推荐安装

选择完后会出现以下提示,会将以上设置过程中的设定保存在iRedMail的安装目录下的config文件中,安装完成后最好是删除它,因为设定的密码之类都是明文保存在这个文件中的。
Configuration completed.

*************************************************************************
***************************** WARNING ***********************************
*************************************************************************
*                                                                       *
* Below file contains sensitive infomation (username/password), please  *
* do remember to *MOVE* it to a safe place after installation.          *
*                                                                       *
*   * /root/iRedMail-0.9.0/config
*                                                                       *
*************************************************************************
< Question > Continue? [y|N]y

输入y开始安装,各个组件会从网络下载并安装。
安装完成后会看到以下提示

********************************************************************
* Congratulations, mail server setup completed successfully. Please
* read below file for more information:
*
*   – /root/iRedMail-0.9.0/iRedMail.tips
*
* And it’s sent to your mail account postmaster@szmaxcent.com.
*
* Please reboot your system to enable mail services.
*
********************************************************************

安装的各个软件的路径及配置文件路径,并以将此文件发送到默认管理邮箱postmaster中。

注意:此文件中也有保存明文密码,建议删除此文或修改文件中的密码部分。

至此iRedMail安装完成,重启服务器。

 

二、整合AD验证

1.在AD服务器的Mailusers这个OU里建立用户imail以用于验证,用户权限设定为domain guests.

2.在邮件服务器上验证连接

# ldapsearch -x -h dc.szmaxcent.com -D ‘imail’ -W -b ‘ou=mailusers,dc=szmaxcent,dc=com’
Enter LDAP Password:     #输入AD用户imail的密码

3.清除部份postconf配置

# postconf -e virtual_alias_maps=”
# postconf -e sender_bcc_maps=”
# postconf -e recipient_bcc_maps=”
# postconf -e relay_domains=”
# postconf -e relay_recipient_maps=”

4.设置邮件发件域和收件域

# postconf -e smtpd_sasl_local_domain=’szmaxcent.com’
# postconf -e virtual_mailbox_domains=’szmaxcent.com’

5.设置传输索引

# postconf -e transport_maps=’hash:/etc/postfix/transport’
# postmap hash:/etc/postfix/transport
# vi /tc/postfix/transport
szmaxcent.com   dovecot

6.设置验证发件人

# postconf -e smtpd_sender_login_maps=’proxy:ldap:/etc/postfix/ad_sender_login_maps.cf’
# vi /etc/postfix/ad_sender_maps.cf
server_host = dc.szmaxcent.com
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = imail
bind_pw = imail_user_password
search_base = ou=mailusers,dc=szmaxcent,dc=com
scope = sub
query_filter = (&(userPrincipalName=%s)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
result_attribute = userPrincipalName
debuglevel = 0

7.设置验证收件人

# postconf -e virtual_mailbox_maps=’proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf’
# vi /etc/postfix/ad_virtual_mailbox_maps.cf
server_host = dc.szmaxcent.com
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = imail
bind_pw = imail_user_password
search_base = ou=mailusers,dc=szmaxcent,dc=com
scope = sub
query_filter = (&(objectclass=person)(userPrincipalName=%s))
result_attribute = userPrincipalName
result_format = %d/%u/Maildir/
debuglevel = 0

8.设置验证邮件组

# postconf -e virtual_alias_maps=’proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf’
# vi /etc/postfix/ad_virtual_group_maps.cf
server_host = dc.szmaxcent.com
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = imail
bind_pw = imail_user_password
search_base = ou=mailusers,dc=szmaxcent,dc=com
scope = sub
query_filter = (&(objectClass=group)(sAMAccountName=%u))
special_result_attribute = member
leaf_result_attribute = mail
result_attribute = userPrincipalName
debuglevel = 0

9.删除iRedAPD相关设置

# vi /etc/postfix/main.cf
在720行和721行左右找到check_policy_service inet:127.0.0.1:7777并删除

10.验证以上设置

在Mailusers下新建用户mailtest,组group,组中包含mailtest,imail两个用户。

验证发件人

# postmap -q mailtest@szmaxcent.com ldap:/etc/postfix/ad_sender_maps.cf
mailtest@szmaxcent.com

验证收件箱地址

# postmap -q mailtest@szmaxcent.com ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
szmaxcent.com/mailtest/Maildir/

验证邮件地址组

# postmap -q group@szmaxcent.com ldap:/etc/postfix/ad_virtual_group_maps.cf
mailtest@szmaxcent.com,imail@szmaxcent.com

11.整合AD集成Dovecot,让用户可以使用POP3,IMAP服务

hosts = dc.szmaxcent.com:389
ldap_version = 3
auth_bind = yes
dn = imail
dnpass = imail_user_password
base = ou=mailusers,dc=szmaxcent,dc=com
scope = subtree
deref = never
user_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_attrs = userPassword=password
default_pass_scheme = CRYPT
user_attrs = =home=/var/vmail/vmail1/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/vmail1/%Ld/%Ln/Maildir/


癹冬阁 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:iRedMail安装及整合AD
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址