Dear Mark! For me it sounds more attractive to remove the aliases for LISTNAME-request and LISTNAME-join to avoid any processor load.
May be you can advice to me how could I do that with qmail MTA software installed?... I've found .qmail-LISTNAME-join and .qmail-LISTNAME-request files with the following content (accordingly): |/var/qmail/bin/preline /var/qmail/bin/mm_wrapper /usr/lib/mailman/mail/mailman join agencies |/var/qmail/bin/preline /var/qmail/bin/mm_wrapper /usr/lib/mailman/mail/mailman request agencies But it seems to me that I have to remove aliases from some other place... Thank you... Danil 2009/4/16 Mark Sapiro <[email protected]> > Danil Smirnov wrote: > > > >2009/4/16 Mark Sapiro <[email protected]> > > > >> > >> You need to individually mark each request "discard" in the admindb > >> interface and "Submit All Data". There is no bulk removal method or > >> tool for subscription requests. You need to do this often enough to > >> prevent the number of outstanding requests from growing so large that > >> the admindb interface times out before loading the page. > > > > > >But I've got 1 thousand spammer`s request in 3 days!!! May be I can just > >switch off subscription service at all? My list is announcement list so I > >need no subscription service... Please advice how can I do that... > > > I suspect what is happening is that spammers are not deliberately > trying to subscribe in order to spam your list. Rather, I think that > spammers are just spamming your LISTNAME-subscribe and LISTNAME-join > addresses resulting in subscription requests. > > There are a few things you can do. > > You can just periodically discard all requests by removing the > lists/LISTNAME/request.pck file. > > You can modify cron/checkdbs [1] to apply max_days_to_hold to subscribe > requests as well as messages. > > Depending on your MTA, you can just remove the aliases for > LISTNAME-request and LISTNAME-join. This is probably best as it will > return a failure to the spammer at SMTP time > > [1] To modify cron/checkdbs, add the line > > heldmsgs.extend(mlist.GetSubscriptionIds()) > > to the definition > > def auto_discard(mlist): > # Discard old held messages > discard_count = 0 > expire = mlist.max_days_to_hold * 86400 # days > heldmsgs = mlist.GetHeldMessageIds() > if expire and len(heldmsgs): > for id in heldmsgs: > if now - mlist.GetRecord(id)[0] > expire: > mlist.HandleRequest(id, mm_cfg.DISCARD) > discard_count += 1 > mlist.Save() > return discard_count > > so it becomes > > def auto_discard(mlist): > # Discard old held messages > discard_count = 0 > expire = mlist.max_days_to_hold * 86400 # days > heldmsgs = mlist.GetHeldMessageIds() > heldmsgs.extend(mlist.GetSubscriptionIds()) > if expire and len(heldmsgs): > for id in heldmsgs: > if now - mlist.GetRecord(id)[0] > expire: > mlist.HandleRequest(id, mm_cfg.DISCARD) > discard_count += 1 > mlist.Save() > return discard_count > > > -- > Mark Sapiro <[email protected]> The highway is for gamblers, > San Francisco Bay Area, California better use your sense - B. Dylan > > ------------------------------------------------------ Mailman-Users mailing list [email protected] http://mail.python.org/mailman/listinfo/mailman-users Mailman FAQ: http://wiki.list.org/x/AgA3 Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-users/archive%40jab.org Security Policy: http://wiki.list.org/x/QIA9
