主题: 邮件列表访问策略无法起作用的问题

我使用的是iredmail 0.5.1,有段时间了,经过磨合,感觉还不错。
irdadmin后台管理从1.0升级到1.1之后,后来安装了iredAPD 1.3.1, 重启了手册说明的服务,但邮件列表里的访问策略功能好像并未起作用;?
是否需要重启服务器还是那些服务?
配置基本是根据手册上的说明,一步一步做的,也没有报任何错误;期待解答,谢谢!

回复: 邮件列表访问策略无法起作用的问题

请说明具体情况,你设置的是什么策略,如何测试的。

另外,昨天刚发布 iRedAPD-1.3.2,如果你是 1.3.1,只需要替换掉一个文件即可。

回复: 邮件列表访问策略无法起作用的问题

邮件列表aa-->访问策略--->邮件服务,选了“成员 只有邮件列表的成员才可以发送邮件到这个地址。  ”

设置只有成员才能发送到info.com.cn ,但是我测试下来,好像没起作用;有没有什么地方会生成日志或者可以查看一下?

因为我以前只安装了iredadmin,没有装IredAPD;昨天需要用到这个成员发送列表的功能,所以根据手册吧iredAPD 1.3.1装上去了

回复: 邮件列表访问策略无法起作用的问题

可以将 iRedAPD 的配置文件里的 Debug 参数打开,然后看日志文件 /var/log/iredapd*

5 最后由 bluegloom (2010-07-08 14:22:34) 编辑

回复: 邮件列表访问策略无法起作用的问题

是不是iredapd.ini里面有句配置文件:log_file        = /var/log/iredapd.log

然后,查看该文件发现很多如下信息:
2010-07-08 07:05:23 INFO ik@szh*.com -> webmaster@info.com.cn, DUNNO
是不是没有启动过滤?

另外:iredAPD是不是是只过滤外来邮件,不过滤域内邮件?

回复: 邮件列表访问策略无法起作用的问题

将 iredapd.ini 里的 log_level 设置为 debug,然后去 /var/log/iredapd.log 里查看具体的信息。

7 最后由 bluegloom (2010-07-09 17:04:51) 编辑

回复: 邮件列表访问策略无法起作用的问题

[root@mail init.d]# tail -f /var/log/iredapd.log
2010-07-08 17:29:39 DEBUG Connect from 127.0.0.1
2010-07-08 17:29:39 DEBUG smtp session: request=smtpd_access_policy
2010-07-08 17:29:39 DEBUG smtp session: protocol_state=RCPT
2010-07-08 17:29:39 DEBUG smtp session: protocol_name=ESMTP
2010-07-08 17:29:39 DEBUG smtp session: client_address=58.246.*.*
2010-07-08 17:29:39 DEBUG smtp session: client_name=unknown
2010-07-08 17:29:39 DEBUG smtp session: reverse_client_name=unknown
2010-07-08 17:29:39 DEBUG smtp session: helo_name=barracuda119.st.com
2010-07-08 17:29:39 DEBUG smtp session: sender=sys@st.com
2010-07-08 17:29:39 DEBUG smtp session: recipient=sd@info.com.cn
2010-07-08 17:29:39 DEBUG smtp session: recipient_count=0
2010-07-08 17:29:39 DEBUG smtp session: queue_id=
2010-07-08 17:29:39 DEBUG smtp session: instance=6146.4c359a83.50282.0
2010-07-08 17:29:39 DEBUG smtp session: size=8099
2010-07-08 17:29:39 DEBUG smtp session: etrn_domain=
.......................
2010-07-08 17:29:39 DEBUG smtp session: encryption_keysize=0
2010-07-08 17:29:39 DEBUG LDAP connection initialied success.
2010-07-08 17:29:39 DEBUG LDAP bind success.
2010-07-08 17:29:39 DEBUG __get_recipient_dn_ldif (recipient): sd@info.com.cn
2010-07-08 17:29:39 DEBUG __get_recipient_dn_ldif (result): [('mail=sd@info.com.cn,ou=Users,domainName=info.com.cn,o=domains,dc=info,dc=com.cn', {'uid': ['sd'], 'mailQuota': ['524288000'], 'objectClass': ['inetOrgPerson', 'mailUser', 'shadowAccount'], 'userPassword': ['{MD5}XM6JgOdEEnC+d8zrtV9PZg=='], 'homeDirectory': ['/var/vmail/vmail01/info.com.cn/s/sd-2010.01.01.01.30.01/'], 'accountStatus': ['active'], 'mtaTransport': ['dovecot'], 'sn': ['sd'], 'storageBaseDirectory': ['/var/vmail/vmail01'], 'mail': ['sd@info.com.cn], 'mailMessageStore': ['ired.org/s/sd-2010.01.01.01.30.01/'], 'enabledService': ['mail', 'smtp', 'pop3', 'pop3secured', 'imap', 'imapsecured', 'deliver', 'forward', 'senderbcc', 'recipientbcc', 'managesieve', 'managesievesecured', 'shadowaddress', 'displayedInGlobalAddressBook'], 'cn': ['sd']})]
2010-07-08 17:29:39 DEBUG Apply plugin (ldap_maillist_access_policy).
2010-07-08 17:29:39 DEBUG Response from plugin (ldap_maillist_access_policy): DUNNO
2010-07-08 17:29:39 DEBUG result replying: None.
2010-07-08 17:29:39 INFO sys@st.com -> sd@info.com.cn, DUNNO
2010-07-08 17:29:39 DEBUG Connection closed

回复: 邮件列表访问策略无法起作用的问题

哪位神仙给回复下?谢谢!

回复: 邮件列表访问策略无法起作用的问题

是不是需要重启下服务器?

回复: 邮件列表访问策略无法起作用的问题

你贴的内容似乎不对啊,里头的几个帐号都是 objectClass=mailUser,这不是邮件列表。

回复: 邮件列表访问策略无法起作用的问题

这个问题一般出在哪个配置文件?或者能否详细说明下,应该检查哪个文件?

回复: 邮件列表访问策略无法起作用的问题

只要将你发邮件给这个邮件列表的日志贴上来就行

13 最后由 bluegloom (2010-07-09 15:57:32) 编辑

回复: 邮件列表访问策略无法起作用的问题

从cp@info.com.cn 发送至邮件列表testlist@info.com.cn,testlist只包含一个成员:infosms@info.com.cn,规则页面设定只允许成员发送

[root@mail log]# more iredapd-rr.log
2010-07-09 15:51:21 DEBUG Connect from 127.0.0.1
2010-07-09 15:51:21 DEBUG smtp session: request=smtpd_access_policy
2010-07-09 15:51:21 DEBUG smtp session: protocol_state=RCPT
2010-07-09 15:51:21 DEBUG smtp session: protocol_name=ESMTP
2010-07-09 15:51:21 DEBUG smtp session: client_address=220.**.**.**
2010-07-09 15:51:21 DEBUG smtp session: client_name=unknown
2010-07-09 15:51:21 DEBUG smtp session: reverse_client_name=unknown
2010-07-09 15:51:21 DEBUG smtp session: helo_name=InfoPC
2010-07-09 15:51:21 DEBUG smtp session: sender=cp@info.com.cn
2010-07-09 15:51:21 DEBUG smtp session: recipient=testlist@info.com.cn
2010-07-09 15:51:21 DEBUG smtp session: recipient_count=0
2010-07-09 15:51:21 DEBUG smtp session: queue_id=
2010-07-09 15:51:21 DEBUG smtp session: instance=687f.4c36d4f9.c8fd7.0
2010-07-09 15:51:21 DEBUG smtp session: size=4750
2010-07-09 15:51:21 DEBUG smtp session: etrn_domain=
2010-07-09 15:51:21 DEBUG smtp session: stress=
2010-07-09 15:51:21 DEBUG smtp session: sasl_method=LOGIN
2010-07-09 15:51:21 DEBUG smtp session: sasl_username=cp@info.com.cn
2010-07-09 15:51:21 DEBUG smtp session: sasl_sender=
2010-07-09 15:51:21 DEBUG smtp session: ccert_subject=
2010-07-09 15:51:21 DEBUG smtp session: ccert_issuer=
2010-07-09 15:51:21 DEBUG smtp session: ccert_fingerprint=
2010-07-09 15:51:21 DEBUG smtp session: encryption_protocol=
2010-07-09 15:51:21 DEBUG smtp session: encryption_cipher=
2010-07-09 15:51:21 DEBUG smtp session: encryption_keysize=0
2010-07-09 15:51:21 DEBUG LDAP connection initialied success.
2010-07-09 15:51:21 DEBUG LDAP bind success.
2010-07-09 15:51:21 DEBUG __get_sender_dn_ldif (sender): cp@info.com.cn
2010-07-09 15:51:21 DEBUG __get_sender_dn_ldif: Quering LDAP
2010-07-09 15:51:21 DEBUG __get_sender_dn_ldif (result): [('mail=cp@info.com.cn,ou=Users,domainName=info.com.cn,o=domains,dc=info,dc=com.cn', {'telephoneNumber': ['88888888'], 'accountStatus': ['active'], 'memberOfGroup': ['staff@info.com.cn', 'yy1@info.com.cn', 'test2@info.com.cn'], 'uid': ['cp'], 'mailQuota': ['209715200'], 'objectClass': ['inetOrgPerson', 'mailUser', 'shadowAccount'], 'userPassword': ['{MD5}Zxbmr7ByEYh2f/mB+n1J5A=='], 'homeDirectory': ['/var/vmail/vmail01/info.com.cn/c/ch/che/cp-2010.01.01.01.30.01/'], 'employeeNumber': ['105'], 'mtaTransport': ['dovecot'], 'sn': ['cp'], 'storageBaseDirectory': ['/var/vmail/vmail01'], 'mail': ['cp@info.com.cn'], 'mailMessageStore': ['info.com.cn/c/ch/che/cp-2010.01.01.01.30.01/'], 'enabledService': ['mail', 'smtp', 'pop3', 'pop3secured', 'imap', 'imapsecured', 'deliver', 'forward', 'senderbcc', 'recipientbcc', 'managesieve', 'managesievesecured', 'shadowaddress', 'displayedInGlobalAddressBook'], 'cn': ['\xe9\x99\x88\xe9\xb9\x8f']})]
2010-07-09 15:51:21 DEBUG Apply plugin (ldap_recipient_restrictions).
2010-07-09 15:51:21 DEBUG Response from plugin (ldap_recipient_restrictions): DUNNO
2010-07-09 15:51:21 DEBUG result replying: None.
2010-07-09 15:51:21 INFO cp@info.com.cn -> testlist@info.com.cn, DUNNO
2010-07-09 15:51:21 DEBUG Connection closed

回复: 邮件列表访问策略无法起作用的问题

麻烦再贴一下这个邮件列表帐号的 LDIF 信息。

iRedAdmin-Pro-1.2.0 里可以访问以下地址导出:
http://your_server/iredadmin/export/ldif/maillist/testlist@info.com.cn

回复: 邮件列表访问策略无法起作用的问题

dn: mail=testlist@info.com.cn,ou=Groups,domainName=info.com.cn ,o=domains,dc=info,dc=com.cn
objectClass: mailList
mail: testlist@info.com.cn
enabledService: mail
enabledService: deliver
enabledService: displayedInGlobalAddressBook
cn: testlist
accountStatus: active
accessPolicy: membersOnly
hasMember: yes

注:目前使用邮件系统为iredmail0.5.1 ,后台:iredadmin1.1.0 ,iredapd 1.3.1

16 最后由 bluegloom (2010-07-09 16:50:07) 编辑

回复: 邮件列表访问策略无法起作用的问题

安装指南上的/etc/postfix/main.cf 这段配置文件,和我本地的配置有点不太一样,不知是否有什么影响?

安装指南:
File: /etc/postfix/main.cf (Linux) or /usr/local/etc/postfix/main.cf (FreeBSD) 
smtpd_recipient_restrictions =
    ...
    check_policy_service inet:127.0.0.1:7777,
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination,
    ...

smtpd_sender_restrictions =
    check_policy_service inet:127.0.0.1:7778,
    ...
-----------------------------分割线------------------------------------------------------

本地配置文件:
smtpd_sender_restrictions = check_policy_service inet:127.0.0.1:7778, permit_mynetworks, permit_sasl_authenticated

smtpd_recipient_restrictions =
......
permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_non_fqdn_helo_hostname, reject_invalid_helo_hostname, check_policy_service inet:127.0.0.1:7777

回复: 邮件列表访问策略无法起作用的问题

老大,你改了这个顺序就完全不一样的效果了。

smtpd_recipient_restrictions =
    ...
    check_policy_service inet:127.0.0.1:7777,
    permit_mynetworks,
    permit_sasl_authenticated,

check_policy_service 这一行,必须在 permit_mynetworks 和 permit_sasl_authenticated 前面,否则没法限制。

回复: 邮件列表访问策略无法起作用的问题

将check_policy_service inet:127.0.0.1:7777 调整到最前面,问题解决。

谢谢!