aboutsummaryrefslogtreecommitdiffstats
path: root/mail/sendmail812/files
diff options
context:
space:
mode:
authordinoex <dinoex@FreeBSD.org>2004-03-27 03:03:18 +0800
committerdinoex <dinoex@FreeBSD.org>2004-03-27 03:03:18 +0800
commitdf096b05bf4ca121e071c345ffe49f40ed0fb7f5 (patch)
tree28284672778a5437096ea1696049c4ab31ae427c /mail/sendmail812/files
parentbe02483d9ece9707d84ff3a78412a1a0e6986c4e (diff)
downloadfreebsd-ports-gnome-df096b05bf4ca121e071c345ffe49f40ed0fb7f5.tar.gz
freebsd-ports-gnome-df096b05bf4ca121e071c345ffe49f40ed0fb7f5.tar.zst
freebsd-ports-gnome-df096b05bf4ca121e071c345ffe49f40ed0fb7f5.zip
- new option SENDMAIL_WITH_CONNECTION_RATE
taken from: http://j-chkmail.ensmp.fr/sm/
Diffstat (limited to 'mail/sendmail812/files')
-rw-r--r--mail/sendmail812/files/CONNECTION_RATE_CONTROL167
1 files changed, 167 insertions, 0 deletions
diff --git a/mail/sendmail812/files/CONNECTION_RATE_CONTROL b/mail/sendmail812/files/CONNECTION_RATE_CONTROL
new file mode 100644
index 000000000000..4b6a87fa276a
--- /dev/null
+++ b/mail/sendmail812/files/CONNECTION_RATE_CONTROL
@@ -0,0 +1,167 @@
+
+ CONNECTION RATE CONTROL FOR SENDMAIL
+ ------------------------------------
+
+This patch adds connection rate control feature to sendmail.
+
+This means :
+
+- sendmail counts on a sliding window the number of connections
+ for each smtp client, and if it exceeds maximum configured
+ value, connection is refused with a TEMPFAIL result.
+
+- you may surely want to exclude some hosts/networks from this
+ control (local networks, trusted networks, ...). You may
+ indicate the list of trusted servers (by ip address) at
+ some configuration file.
+
+This file Table of Contents :
+
+ 1. Remarks
+ 2. Changes and History
+ 3. Getting the stuff
+ 4. Stuff Contents
+ 5. Installing
+
+******************************************************************
+
+REMARKS :
+---------
+
+* This feature will be integrated into sendmail in a future version.
+
+* This feature is experimental. Some details on the way it works
+ or its interface may change in the future.
+
+* The contents of this stuff is valid for sendmail 8.12.9
+
+ All feedback, comments and questions about this stuff are welcome :
+ Jose-Marcio.Martins@ensmp.fr (the maintainer)
+ with CC to
+ sendmail@sendmail.org
+
+CHANGES AND HISTORY :
+---------------------
+
+2003/06/11 - Jose Marcio Martins da Cruz - First Release
+
+2003/07/03 - Jose Marcio Martins da Cruz
+ Two macros were defined :
+ - {client_rate} : connection rate of the client
+ - {server_rate} : connection rate of the server
+
+GETTING THE STUFF :
+-------------------
+
+You can download all you need at :
+
+ http://j-chkmail.ensmp.fr/sm
+
+You need the two patches you'll find there.
+
+STUFF CONTENTS :
+----------------
+
+This stuff contains two patches :
+
+- ratectrl.src.patch : this patch shall be used to modify
+ /PATH_TO_SRC/sendmail-8.12.9/sendmail - sendmail C source
+ files
+
+- ratectrl.cf.patch : this patch shall be used to modify
+ /PATH_TO_SRC/sendmail-8.12.9/cf - m4 configuration kit
+ for sendmail
+
+- rate.mc : this is an example of configuration file to be
+ used with this stuff, if you want to do connection rate
+ control with rulesets. To use it, you shall define the
+ variable :
+ D{RuleRateMaxClient}5
+ This contribution comes from Stephane Lentz
+ Stephane.Lentz@ansf.alcatel.fr
+
+
+INSTALLING :
+------------
+
+1. Copy the patches :
+
+ cd /PATH_TO/sendmail-8.12.9
+ cp /elsewhere/ratectrl.src.patch .
+ cp /elsewhere/ratectrl.cf.patch .
+
+2. Eventually save original source code :
+
+ cp -pr sendmail sendmail.org
+ cp -pr cf cf.org
+
+3. Apply the patches
+
+ cd sendmail
+ patch < ../ratectrl.src.patch
+ cd ../cf
+ patch < ../ratectrl.cf.patch
+
+4. Inform sendmail Build system that you want to use this stuff
+
+ Add the following line to the file devtools/Site/site.config.m4 :
+
+APPENDDEF(`confENVDEF',`-D_FFR_CONNECTION_RATE_CONTROL')
+
+5. Rebuild sendmail and install
+
+ cd /PATH_TO/sendmail-8.12.9
+ ./Build -c
+ su
+ ./Build install
+
+6. Modify your configuration file (sendmail.mc for your site)
+
+You may add the following lines :
+
+ FEATURE(rate_control)
+
+This will create the following lines at your sendmail.cf file :
+
+-----
+
+O CheckConnectionRate=True
+
+F{rate_exclude} -o /etc/mail/rate-control-exclude
+
+# maximum server connection rate (connections / minute)
+#O MaxConnectionRate=600
+
+# maximum connection rate per client (connections / minute)
+#O MaxClientConnectionRate=5
+
+# Width of the window
+#O ConnectionRateWindowSize=60
+
+----
+
+Configuration parameters you may define at your mc file
+
+confRATE_EXCLUDE_FILE The name of the file defining class {rate_exclude}.
+ Access to the server will be granted to IP hosts
+ networks matching this class without connection
+ rate control.
+ Default Value : /etc/mail/rate-control-exclude
+
+confMAX_CLIENT_CONNECTION_RATE : Maximum connections per minute allowed
+ for hosts/networks not matching {rate_exclude}
+ class.
+ Default Value : 5 connections / minute.
+
+confMAX_CONNECTION_RATE : Maximum connections per minute for the server.
+ Default Value : 600 connections / minute.
+
+confCONNECTION_RATE_WINDOW_SIZE : Width of the measuring sliding window.
+ The value used to do rate control is the mean
+ of the number of connections inside this window.
+ Default Value : 60 (1 minute)
+
+
+
+
+