1

Topic: non-existent mailing list account issue

==== Required information ====
- iRedMail version:
- Store mail accounts in which backend (LDAP/MySQL/PGSQL):
- Linux/BSD distribution name and version:
- Related log if you're reporting an issue:
======== Required information ====
- iRedMail version: 0.8.6
- Store mail accounts in which backend (LDAP/MySQL/PGSQL): LDAP
- Linux/BSD distribution name and version: Ubuntu 14.04
- Related log if you're reporting an issue:
====

I have issue on my email server that handles multiple domains in it.

For example:
mydomain1.com
mydomain2.com
mydomain3.com
mydomain4.com

If we send email to mydomain1@mydomain1.com (the account have the same name as the domain name), it will be sent to multiple user accounts within @mydomain1.com (but only around 70% received it, not all), it acted like a mailing list address but I never created any of it (already checked using search account feature - no result).

After testing to all of my domain, this anomaly only happen at mydomain1.com and mydomain2.com.
Sending email to mydomain3@mydomain3.com will instantly responded with :

The following recipient(s) cannot be reached:

  'mydomain3@mydomain3.com' on 2/27/2015 8:38 PM
       Server error: '550 5.1.1 <mydomain3@mydomain3.com>: Recipient address rejected: User unknown in virtual mailbox table'

It is now being abused by spam and advertising emails, somehow it bypassed the spam filter.

Let me know if any of you ever experienced the same issue and hopefully have explanation/solution.

Thanks.

----

Spider Email Archiver: On-Premises, lightweight email archiving software developed by iRedMail team. Supports Amazon S3 compatible storage and custom branding.

2

Re: non-existent mailing list account issue

Fixed: caused by bug in iRedAdmin-Pro. If you delete mailing list account from search result page, iRedAdmin-Pro deletes mailing list account without removing membership stored in mail user accounts.

Here's patch if you're interested in solving it on current running iRedAdmin-Pro release:

diff -r c9b1a45be368 -r 67099e254869 controllers/ldap/basic.py
--- a/controllers/ldap/basic.py    Thu Feb 26 11:38:52 2015 +0800
+++ b/controllers/ldap/basic.py    Sat Feb 28 11:45:41 2015 +0800
@@ -7,7 +7,8 @@
 import settings
 from libs import __url_latest_ldap__, __version_ldap__, __no__, __id__
 from libs import iredutils, languages
-from libs.ldaplib import auth, decorators, admin as adminlib, user as userlib, ldaputils, connUtils, attrs
+from libs.ldaplib import auth, decorators, ldaputils, connUtils, attrs
+from libs.ldaplib import admin as adminlib, user as userlib, maillist as maillistlib
 
 
 session = web.config.get('_session')
@@ -401,13 +402,18 @@
                     result[account] = ldaputils.get_full_exception(e)
 
             if action in ['delete', ]:
-                try:
-                    connutils.delete_account_dn(domain=self.domain,
-                                                dn=dn,
-                                                account=account,
-                                                accountType=accountType)
-                except Exception, e:
-                    result[account] = ldaputils.get_full_exception(e)
+                if accountType == 'maillist':
+                    mllib = maillistlib.Maillist()
+                    qr_del = mllib.delete(domain=self.domain, mails=[account])
+                    if not qr_del[0]:
+                        result[account] = qr_del[1]
+                else:
+                    qr_del = connutils.delete_account_dn(domain=self.domain,
+                                                         dn=dn,
+                                                         account=account,
+                                                         accountType=accountType)
+                    if not qr_del[0]:
+                        result[account] = qr_del[1]
 
         if len(result) == 0:
             raise web.seeother('/search?msg=SUCCESS')

3

Re: non-existent mailing list account issue

Thanks for the fix Zhang.