]> git.donarmstrong.com Git - deb_pkgs/spamass-milter.git/blob - debian/README.Debian
* Document that using the -x option requires being in the smmsp group
[deb_pkgs/spamass-milter.git] / debian / README.Debian
1 --------------------------------------------------------------
2   Integrating spamass-milter into your sendmail installation
3 --------------------------------------------------------------
4
5 You will need to edit /etc/mail/sendmail.mc and add an
6 INPUT_MAIL_FILTER line that connects to the spamass-milter socket.
7
8 By default the spamass-milter socket is
9 /var/run/spamass/spamass.sock; so your INPUT_MAIL_FILTER should look
10 something like:
11
12  # spamassassin settings
13  INPUT_MAIL_FILTER(`spamassassin',
14          `S=local:/var/run/spamass/spamass.sock, F=,
15          T=S:4m;R:4m;E:10m')dnl
16  define(`confMILTER_MACROS_CONNECT',`t, b, j, _, {daemon_name}, {if_name}, {if_addr}')dnl
17  define(`confMILTER_MACROS_HELO',`s, {tls_version}, {cipher}, {cipher_bits}, {cert_subject}, {cert_issuer}')dnl
18  define(`confMILTER_MACROS_ENVRCPT',`b, i, j, r, v, Z, _')dnl
19
20 Briefly, the F=, tells sendmail to just pass the connection through if
21 the milter fails. This is most likely the setting you want. If you
22 want to temporarily fail a connection, you can set F=T. You almost
23 definitely don't want to reject connections, but if necessary, you can
24 do that by setting F=R.
25
26 You may also need to adjust these timeout settings, as spamd can be
27 sluggish on a slow machine. S is the timeout for sending information
28 from the MTA to a filter. R is the timeout for reading a reply from
29 the filter. E is the overall timeout between sending end-of-message to
30 filter and waiting for the final acknowledgment.
31
32 The settings above seem to work well on a Celeron 466 that receives
33 around 1000 emails an hour. You may wish to adjust them according to
34 your needs.
35
36 See http://www.sendmail.com/partner/resources/development/milter_api/installation.html
37 and http://www.sendmail.org/m4/adding_mailfilters.html#INPUT_MAIL_FILTER
38 for more information on milters.
39
40 If you are using the alias expansion method, -x, you will need to add
41 spamass-milter to the smmsp group using:
42
43  adduser spamass-milter smmsp;
44
45 This does not need to be done unless you are using alias expansion.
46
47 --------------------------------------------------------------
48   Integrating spamass-milter into your postfix installation
49 --------------------------------------------------------------
50
51 You need to edit /etc/postfix/main.cf and configure smptpd_milters so
52 that postfix connects to the spamass-milter socket. Something like:
53
54   # spamass-milter configuration
55   smtpd_milters = unix:/var/spool/postfix/spamass/spamass.sock
56
57 should work. Note, however, if you're using a chrooted version of
58 postfix, you'll need the local path to the socket inside of the
59 chroot. In recent versions of Debian the following should work:
60
61   # spamass-milter configuration
62   smtpd_milters = unix:/spamass/spamass.sock
63   # milter macros useful for spamass-milter
64   milter_connect_macros = j {daemon_name} v {if_name} _
65
66 See http://www.postfix.org/MILTER_README.html or
67 /usr/share/doc/postfix/MILTER_README.gz (in postfix-doc) for
68 information on how to set tempfail and the various timeouts that the
69 sendmail configuration above uses.
70
71 The defaults for spamass-milter adjust themselves so that no
72 configuration in /etc/default/spamass-milter should be required.
73 [However, if you are not doing so, see below.]
74
75 -------------------------------------------------------------
76   Adjusting how spamass-milter is started
77 -------------------------------------------------------------
78
79 You can adjust how spamass-milter starts, and the options it calls
80 spamc with by adjusting /etc/default/spamass-milter. OPTIONS is passed
81 directly to spamass-milter by /etc/init.d/spamass-milter. [Refer to
82 spamass-milter(1) for details.]
83
84 Other settings which may be of use:
85
86 SOCKET sets the location of the socket; defaults to
87 /var/run/spamass/spamass.sock unless you are running postfix, where it
88 is set to /var/spool/postfix/spamass/spamass.sock.
89
90 SOCKETOWNER is the owner of the socket, which defaults to root:root or
91 postfix:postfix if you're running postfix.
92
93 SOCKETMODE is the mode of the socket, which defaults to 0600 or 0660
94 if you're running postfix.
95
96 RUNAS controls the user which spamass-milter runs as; defaults to
97 spamass-milter.
98
99 If you want to use an inet socket for spamass-milter (like inet:9999),
100 then you'll need to make the following configuration changes in
101 /etc/default/spamass-milter:
102
103 SOCKET="inet:9999"
104 SOCKETMODE=""
105 SOCKETOWNER=""
106
107 -------------------------------------------------------------
108 Debugging spamass-milter
109 -------------------------------------------------------------
110
111 As spamass-milter is still undergoing development, you may see bugs
112 from time to time.
113
114 If spamass-milter is segfaulting (SEGV or SIG 11) please build a
115 debugging version of the spamass-milter package and install it:
116
117 mkdir temp;
118 cd temp;
119 apt-get source spamass-milter;
120 apt-get build-dep spamass-milter;
121 cd spamass-milter-*;
122 DEB_BUILD_OPTIONS='nostrip' CXXFLAGS='-O0 -g' fakeroot debian/rules clean binary;
123 dpkg -i spamass-milter*.deb;
124
125 Then turn on coredumps (ulimit -c unlimited), and start spamass-milter
126 as usual (/etc/init.d/spamass-milter start).
127
128 When spamass-milter cores, run gdb on the core, ala:
129 gdb /usr/sbin/spamass-milter /foo/corefile.pid
130 thread apply all where
131 bt
132 q
133
134 and send the results along with your bug report using reportbug.
135
136  -- Don Armstrong <don@debian.org>, Fri, 13 Feb 2009 18:06:39 -0800