Mercurial > dnsbl
annotate dnsbl.spec.in @ 48:5ef10dc14457
properly drop root privs
author | carl |
---|---|
date | Fri, 09 Jul 2004 13:57:59 -0700 |
parents | acbe44bbba22 |
children | 9f2971c692d0 |
rev | line source |
---|---|
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
1 Summary: DNSBL Sendmail Milter |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
2 Name: dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
3 Version: 3.1 |
43 | 4 Release: 2 |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
5 Copyright: GPL |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
6 Group: System Environment/Daemons |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
7 Source: http://www.five-ten-sg.com/util/dnsbl.tar.gz |
43 | 8 Patch0: dnsbl.rc.patch |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
9 BuildRoot: %{_tmppath}/%{name}-%{version} |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
10 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
11 Requires(pre): /usr/sbin/groupadd |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
12 Requires(pre): /usr/sbin/useradd |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
13 Requires(pre): /usr/bin/getent |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
14 Requires(postun): /usr/sbin/userdel |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
15 Requires(postun): /usr/sbin/groupdel |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
16 Requires(post,preun): /sbin/chkconfig |
43 | 17 BuildRequires: sendmail-devel >= 8.12.1 |
18 Requires: sendmail >= 8.12.1 | |
19 Requires: sendmail-cf | |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
20 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
21 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
22 %description |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
23 We present here a mechanism whereby the backup mail server can use the correct set of DNSBLs for each recipient for each message. As a side-effect, it gives us the ability to customize the set of DNSBLs on a per-recipient basis, so that fred@example.com could use SPEWS and the SBL, where all other users @example.com use only the SBL. |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
24 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
25 This milter will also decode (base64, mime, html entity, url encodings) and scan for HTTP and HTTPS URLs and bare hostnames in the body of the mail. If any of those host names have A or NS records on the SBL (or a single configurable DNSBL), the mail will be rejected unless previously whitelisted. This milter also counts the number of invalid HTML tags, and can reject mail if that count exceeds your specified limit. |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
26 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
27 The DNSBL milter reads a text configuration file (dnsbl.conf) on startup, and whenever the config file (or any of the referenced include files) is changed. The entire configuration file is case insensitive. |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
28 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
29 %prep |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
30 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
31 %setup |
43 | 32 %patch0 -p1 |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
33 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
34 %build |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
35 pwd |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
36 g++ -c $CXXFLAGS -pthread dnsbl.cpp |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
37 g++ -o dnsbl dnsbl.o /usr/lib/libresolv.a -lmilter -pthread |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
38 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
39 %install |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
40 DST=%{buildroot} |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
41 if [ "%{buildroot}" = "/" -o -z "%{buildroot}" ] ; then |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
42 echo sorry, you probably do not want me to delete the old buildroot at %{buildroot} |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
43 exit 1 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
44 fi |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
45 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
46 rm -rf %{buildroot} |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
47 mkdir -p %{buildroot}/etc/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
48 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
49 install -m 644 dnsbl.conf %{buildroot}/etc/dnsbl/dnsbl.conf |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
50 install -m 644 html-tags.conf %{buildroot}/etc/dnsbl/html-tags.conf |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
51 install -m 644 tld.conf %{buildroot}/etc/dnsbl/tld.conf |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
52 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
53 mkdir -p %{buildroot}/usr/sbin |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
54 install -m 755 dnsbl %{buildroot}/usr/sbin/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
55 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
56 mkdir -p %{buildroot}/etc/init.d |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
57 install -m 755 dnsbl.rc %{buildroot}/etc/init.d/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
58 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
59 mkdir -p %{buildroot}/var/run/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
60 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
61 %pre |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
62 /usr/bin/getent passwd dnsbl || |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
63 useradd -r -d /etc/dnsbl -M -c "dnsbl pseudo-user" -s /sbin/nologin dnsbl |
43 | 64 |
65 #[JOG] Attempt to migrate an existing, non-rpm install. | |
66 # WARNING! This may cause blindness, loss of appetite, and a general | |
67 # feeling of ill will towards the author of this script. Please refer | |
68 # to the Licence file for warranty information... | |
69 if [ -f "/var/dnsbl/dnsbl.conf" -a ! -f "/etc/dnsbl/dnsbl.conf" ] ; then | |
70 echo Existing installation found at /var/dnsbl/ Migrating configuation... | |
71 # create the conf directory so rpm can find it in a minute... | |
72 mkdir /etc/dnsbl/ | |
73 # and try to copy all of the relavent config files that are below this directory | |
74 cd /var/dnsbl/ | |
75 grep '^include ' /var/dnsbl/dnsbl.conf | cut -d ' ' -f 2 | grep -v '^/' | xargs cp --target-directory=/etc/dnsbl/ /var/dnsbl/dnsbl.conf | |
76 fi | |
77 | |
78 | |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
79 %post |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
80 /sbin/chkconfig --add dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
81 /sbin/chkconfig dnsbl on |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
82 /sbin/service dnsbl start |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
83 |
43 | 84 echo Remember to edit /etc/dnsbl.conf and add the following line to your sendmail.mc: |
85 echo "INPUT_MAIL_FILTER(\`dnsbl\', \`S=local:/var/run/dnsbl/dnsbl.sock, F=T, T=C:30s;S:2m;R:2m;E:5m\')" | |
86 echo | |
87 | |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
88 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
89 %preun |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
90 if [ $1 -eq 0 ]; then |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
91 /sbin/service dnsbl stop || : |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
92 /sbin/chkconfig --del dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
93 userdel dnsbl || : |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
94 fi |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
95 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
96 %postun |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
97 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
98 %clean |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
99 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
100 %files |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
101 %defattr(-,root,root) |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
102 %config /etc/dnsbl/ |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
103 /etc/init.d/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
104 /usr/sbin/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
105 %dir %attr(0750,dnsbl,root) /var/run/dnsbl |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
106 |
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
107 %changelog |
43 | 108 * Mon Jul 05 2004 John Gunkel <jgunkel@palliser.ca> 1.2 |
109 - Fixed some typos | |
110 - removed patch into separate file | |
111 - added config migration as suggested by Carl | |
112 - Added reminder to edit sendmail.mc | |
41
d95af8129dfa
updates for 3.2, changing file layout, add queueid to messages
carl
parents:
diff
changeset
|
113 |
43 | 114 * Wed Jun 30 2004 John Gunkel <jgunkel@palliser.ca> 1.1 |
115 - Initial revision of spec file. Need to add a better description, docs and a sendmail.mc message | |
116 |