Zimbra offers Open Source email server software and shared calendar for Linux and the Mac
Go Back   Zimbra :: Forums > Zimbra Collaboration Suite > Administrators

Welcome to the Zimbra :: Forums!
Welcome, if you would like to post a comment please register. We also encourage you to explore all things Zimbra with our team and members of the community.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 07-30-2007, 06:55 AM
Loyal Member
 
Posts: 93
Default [SOLVED] recipient limit or max recipients

Hello
Is there a zimbra-approved way of configuring a maximum number of recipients per message?
For example, spammer/salesman tries to email his latest leaflet to every email address he has ever seen - spammer adds 50000 recipients to his email and sends it off. Salesman then calls to ask why emails are coming back with "blocked" RBL errors.
Im pretty sure "smtpd_recipient_limit" in postfix does this fine, but should a zimbra tool be used to add this, or is it ok to just wade into main.cf and edit? This is currently set to 1000 (postfix default afaik) which for this situation is too much.
Thanks for any tips etc!
Reply With Quote
  #2 (permalink)  
Old 07-30-2007, 07:18 AM
Moderator
 
Posts: 6,237
Default

Can't from the admin console GUI, but you can via postfix CLI:

smtpd_recipient_limit (default 1000) parameter controls how many recipients the SMTP server will take per message delivery request.
-You can't restrict this to a to/cc/bcc field - it's all recipients. For that you'd have to use a regular expression in header_checks to arbitrarily limit the length of each header to something reasonable. (We could do this in the web-client though if someone wants to open an RFE in bugzilla.)

smtpd_recipient_overshoot_limit (default 1000) - The number of recipients that a remote SMTP client can send in excess of the hard limit specified with smtpd_recipient_limit, before the Postfix SMTP server increments the per-session error count for each excess recipient. "Postfix will 4xx the 'overshoot' addresses so a sending MTA can try them again later."

Then see the smtpd_hard_error_limit (default 20) parameter to know at what number of errors it will disconnect.

So you technically need to consider like 3 values here - which affect both inbound & outbound mail.

(I've heard of an smtpd_extra_recipient_limit but I've never used it / might just be for in queues.)

Then there's the throttling tools:

smtpd_client_recipient_rate_limit (default: 0 no limit) - The maximum number of recipient addresses that an SMTP client may specify in the time interval specified via anvil_rate_time_unit (default: 60s -careful adjusting this affects other things)" and note that this is "regardless of whether or not Postfix actually accepts those recipients" Those over will receive a 450 4.7.1 Error: too many recipients from [the.client.ip.address] It's up to the client to deliver those recipients at some later time.

It may prove prudent to also adjust:
smtpd_client_connection_rate_limit (default: 0)- The maximal number of connection attempts any client is allowed to make to this service per time unit. The time unit is specified with the anvil_rate_time_unit configuration parameter.
smtpd_client_message_rate_limit (default: 0) - The maximal number of message delivery requests that any client is allowed to make to this service per time unit, regardless of whether or not Postfix actually accepts those messages. The time unit is specified with the anvil_rate_time_unit configuration parameter.

The purpose of these features are to limit abuse, as opposed to regulating legitimate mail traffic, but some use them that way.

There's also Policyd which can do sender-(envelope, SASL, or host / ip)-based throttling on messages and/or volume per defined time unit, plus recipient rate limiting.
http://www.policyd.org

To adjust:
Quote:
su - zimbra
postconf -e 'smtpd_recipient_limit = 1000'
To apply settings:
Quote:
postfix reload
To check current settings:
Quote:
postconf | grep smtpd_recipient_limit
Note: When your looking this up, smtpd_recipient_limit is not to be confused with default_destination_recipient_limit parameter, which controls how many recipients a Postfix delivery agent will send with each copy of an email message. If an email message exceeds that value, the Postfix queue manager breaks up the list of recipients into smaller lists. Postfix will attempt to send multiple copies of the message in parallel. So that really isn't limiting the number of addresses, it just breaks it into chunks for other servers to accept easier.

Last edited by mmorse; 03-19-2009 at 01:36 PM.. Reason: smtpd_client_recipient_rate_limit
Reply With Quote
  #3 (permalink)  
Old 07-31-2007, 03:59 AM
Loyal Member
 
Posts: 93
Default

Thanks for the answer, I was really just asking if there was a "zimbra" way of doing it. It seems that zimbra wants its own way of doing things eg for adding RBLs to the postfix config: zmprov mcf zimbraMtaRestriction reject_rbl_client blabla.bla.bla instead of just using postconf or hacking main.cf directly - does this just act as a frontend for postconf, or is the config also stored elsewhere, then used to config other services?
Thanks,
Reply With Quote
  #4 (permalink)  
Old 07-31-2007, 04:37 AM
Moderator
 
Posts: 2,207
Default

The question was already asked a long time ago (I thought there was a RFE attached but it's not the case) : Limit the number of cc/bcc/to recipients?

Maybe it's really time for a RFE 8)
Reply With Quote
  #5 (permalink)  
Old 08-21-2008, 07:37 AM
Junior Member
 
Posts: 8
Default config change doesn't take effect

For some reason this change isn't taking effect. From looking at the main.cf file, the last line is correctly set to (in my case) smtpd_recipient_limit = 3000. However after running postfix reload and then psotconf -d, the setting is still showing up as the default 1000.

I even restarted all of Zimbra and the setting is still the default.

Any idea why this would be happening?
Reply With Quote
  #6 (permalink)  
Old 08-21-2008, 07:56 AM
Elite Member
 
Posts: 337
Default

Without looking, is there a "main.cf.in" file? My understanding is that changes go in the .in files since they overwrite the .cf files on restart.
Reply With Quote
  #7 (permalink)  
Old 08-21-2008, 10:22 AM
Junior Member
 
Posts: 8
Default

Thanks for the reply. There is no main.cf.in file, although there's something called master.cf. Could that be relevant?
Reply With Quote
  #8 (permalink)  
Old 08-21-2008, 10:29 AM
Moderator
 
Posts: 6,237
Default

Are you checking postconf | grep smtpd_recipient_limit ?
Or postconf -d | grep smtpd_recipient_limit ? (which shows you default parameter settings instead of actual current values)
Reply With Quote
  #9 (permalink)  
Old 11-26-2008, 02:44 AM
Elite Member
 
Posts: 440
Post

I want to allow my customer to put mail to 7000 email-ids at one shot

what setting i need to change in zimbra and where

Regards
chandu
Reply With Quote
  #10 (permalink)  
Old 11-26-2008, 03:12 AM
Moderator
 
Posts: 2,207
Default

Quote:
Originally Posted by chandu View Post
I want to allow my customer to put mail to 7000 email-ids at one shot
Bad idea.

Quote:
Originally Posted by chandu View Post
what setting i need to change in zimbra and where
Use another software for that (such as PHPList), that will be able to throttle the mails sending...
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Similar Threads

Why Join?

Registering let's you ask questions, makes it easier to search, displays any files attached to posts, and notifies you about replies.

blog.zimbra.com




 

SEO by vBSEO ©2011, Crawlability, Inc.