Initial import of postgrey.
This commit is contained in:
parent
b05aa2176f
commit
69f0a0dafa
6 changed files with 282 additions and 0 deletions
|
|
@ -0,0 +1 @@
|
|||
postgrey-1.27.tar.gz
|
||||
19
README-rpm
Normal file
19
README-rpm
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
Edit your configuration files:
|
||||
|
||||
/etc/postfix/main.cf:
|
||||
|
||||
smtpd_recipient_restrictions = ...
|
||||
check_policy_service unix:postgrey/socket, ...
|
||||
|
||||
|
||||
Or if you like to use inet sockets (modify the IP if needed):
|
||||
|
||||
/etc/sysconfig/postgrey:
|
||||
|
||||
OPTIONS="--inet=127.0.0.1:10023"
|
||||
|
||||
/etc/postfix/main.cf:
|
||||
|
||||
smtpd_recipient_restrictions = ...
|
||||
check_policy_service inet:127.0.0.1:10023, ...
|
||||
|
||||
21
postgrey-1.27-group.patch
Normal file
21
postgrey-1.27-group.patch
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
diff -Naupr postgrey-1.27.orig/postgrey postgrey-1.27/postgrey
|
||||
--- postgrey-1.27.orig/postgrey 2006-07-17 14:53:30.000000000 +0200
|
||||
+++ postgrey-1.27/postgrey 2006-11-06 13:34:04.000000000 +0100
|
||||
@@ -441,7 +441,7 @@ sub main()
|
||||
port => [ $opt{inet} ? $opt{inet} : $opt{unix}."|unix" ],
|
||||
proto => $opt{inet} ? 'tcp' : 'unix',
|
||||
user => $opt{user} || 'postgrey',
|
||||
- group => $opt{group} || 'nogroup',
|
||||
+ group => $opt{group} || 'postgrey',
|
||||
dbdir => $opt{dbdir} || '/var/spool/postfix/postgrey',
|
||||
setsid => $opt{daemonize} ? 1 : undef,
|
||||
pid_file => $opt{daemonize} ? $opt{pidfile} : undef,
|
||||
@@ -623,7 +623,7 @@ B<postgrey> [I<options>...]
|
||||
-d, --daemonize run in the background
|
||||
--pidfile=PATH put daemon pid into this file
|
||||
--user=USER run as USER (default: postgrey)
|
||||
- --group=GROUP run as group GROUP (default: nogroup)
|
||||
+ --group=GROUP run as group GROUP (default: postgrey)
|
||||
--dbdir=PATH put db files in PATH (default: /var/spool/postfix/postgrey)
|
||||
--delay=N greylist for N seconds (default: 300)
|
||||
--max-age=N delete entries older than N days since the last time
|
||||
85
postgrey.init
Executable file
85
postgrey.init
Executable file
|
|
@ -0,0 +1,85 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# chkconfig: - 79 31
|
||||
# description: Postfix Greylisting Policy Server
|
||||
#
|
||||
# processname: postgrey
|
||||
#
|
||||
|
||||
# Source function library.
|
||||
. /etc/rc.d/init.d/functions
|
||||
|
||||
# Source networking configuration.
|
||||
. /etc/sysconfig/network
|
||||
|
||||
# Check that networking is up.
|
||||
[ ${NETWORKING} = "no" ] && exit 0
|
||||
|
||||
prog=postgrey
|
||||
postgrey=/usr/sbin/$prog
|
||||
DBPATH=/var/spool/postfix/postgrey
|
||||
SOCKET=$DBPATH/socket
|
||||
OPTIONS="--unix=$SOCKET"
|
||||
|
||||
# Source an auxiliary options file if we have one, and pick up OPTIONS,
|
||||
if [ -r /etc/sysconfig/$prog ]; then
|
||||
. /etc/sysconfig/$prog
|
||||
fi
|
||||
|
||||
[ -x $postgrey -a -d $DBPATH ] || exit 0
|
||||
|
||||
RETVAL=0
|
||||
|
||||
start() {
|
||||
echo -n $"Starting $prog: "
|
||||
daemon $postgrey -d $OPTIONS
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
|
||||
}
|
||||
stop() {
|
||||
echo -n $"Stopping $prog: "
|
||||
killproc $postgrey
|
||||
RETVAL=$?
|
||||
echo
|
||||
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
|
||||
}
|
||||
|
||||
restart() {
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
reload() {
|
||||
echo -n $"Reloading $prog: "
|
||||
killproc $postgrey -HUP
|
||||
RETVAL=$?
|
||||
echo
|
||||
}
|
||||
|
||||
# See how we were called.
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
restart
|
||||
;;
|
||||
reload)
|
||||
reload
|
||||
;;
|
||||
condrestart)
|
||||
[ -f /var/lock/subsys/$prog ] && restart
|
||||
;;
|
||||
status)
|
||||
status $postgrey
|
||||
;;
|
||||
*)
|
||||
echo $"Usage: $0 {start|stop|restart|condrestart|reload|status}"
|
||||
exit 1
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
155
postgrey.spec
Normal file
155
postgrey.spec
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
%define confdir %{_sysconfdir}/postfix
|
||||
|
||||
Summary: Postfix Greylisting Policy Server
|
||||
Name: postgrey
|
||||
Version: 1.27
|
||||
Release: 4%{?dist}
|
||||
License: GPL
|
||||
Group: System Environment/Daemons
|
||||
Source0: http://isg.ee.ethz.ch/tools/postgrey/pub/postgrey-%{version}.tar.gz
|
||||
Source1: postgrey.init
|
||||
Source2: README-rpm
|
||||
Patch0: postgrey-1.27-group.patch
|
||||
URL: http://isg.ee.ethz.ch/tools/postgrey/
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||
# We require postfix for its directories and gid
|
||||
Requires: postfix
|
||||
Requires(pre): /usr/sbin/useradd
|
||||
Requires(post): /sbin/chkconfig
|
||||
Requires(preun): /sbin/service, /sbin/chkconfig
|
||||
Requires(postun): /sbin/service
|
||||
BuildArch: noarch
|
||||
|
||||
%description
|
||||
Postgrey is a Postfix policy server implementing greylisting. When a request
|
||||
for delivery of a mail is received by Postfix via SMTP, the triplet CLIENT_IP /
|
||||
SENDER / RECIPIENT is built. If it is the first time that this triplet is
|
||||
seen, or if the triplet was first seen less than 5 minutes, then the mail gets
|
||||
rejected with a temporary error. Hopefully spammers or viruses will not try
|
||||
again later, as it is however required per RFC.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .group
|
||||
%{__install} -p -m 0644 %{SOURCE2} README-rpm
|
||||
|
||||
|
||||
%build
|
||||
# We only have perl scripts, so just "build" the man page
|
||||
pod2man \
|
||||
--center="Postgrey Policy Server for Postfix" \
|
||||
--section="8" \
|
||||
postgrey > postgrey.8
|
||||
|
||||
|
||||
%install
|
||||
%{__rm} -rf %{buildroot}
|
||||
|
||||
# Configuration files
|
||||
%{__mkdir_p} %{buildroot}%{confdir}
|
||||
%{__install} -p -m 0644 postgrey_whitelist_{clients,recipients} \
|
||||
%{buildroot}%{confdir}/
|
||||
# Local whitelist file
|
||||
echo "# Clients that should not be greylisted. See postgrey(8)." \
|
||||
> %{buildroot}%{confdir}/postgrey_whitelist_clients.local
|
||||
|
||||
# Main script
|
||||
%{__install} -D -p -m 0755 postgrey %{buildroot}%{_sbindir}/postgrey
|
||||
|
||||
# Spool directory
|
||||
%{__mkdir_p} %{buildroot}%{_var}/spool/postfix/postgrey
|
||||
|
||||
# Init script
|
||||
%{__install} -D -p -m 0755 %{SOURCE1} \
|
||||
%{buildroot}%{_sysconfdir}/rc.d/init.d/postgrey
|
||||
|
||||
# Man page
|
||||
%{__install} -D -p -m 0644 postgrey.8 \
|
||||
%{buildroot}%{_mandir}/man8/postgrey.8
|
||||
|
||||
# Optional report script
|
||||
%{__install} -D -p -m 0755 contrib/postgreyreport \
|
||||
%{buildroot}%{_sbindir}/postgreyreport
|
||||
|
||||
|
||||
%clean
|
||||
%{__rm} -rf %{buildroot}
|
||||
|
||||
|
||||
%pre
|
||||
/usr/sbin/useradd -d %{_var}/spool/postfix/postgrey -s /sbin/nologin \
|
||||
-M -r postgrey &>/dev/null || :
|
||||
|
||||
%post
|
||||
/sbin/chkconfig --add postgrey
|
||||
|
||||
%preun
|
||||
if [ $1 -eq 0 ]; then
|
||||
/sbin/service postgrey stop &>/dev/null || :
|
||||
/sbin/chkconfig --del postgrey
|
||||
fi
|
||||
|
||||
%postun
|
||||
if [ $1 -ge 1 ]; then
|
||||
/sbin/service postgrey condrestart &>/dev/null || :
|
||||
fi
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-, root, root, 0755)
|
||||
%doc Changes COPYING README README-rpm
|
||||
%{_sysconfdir}/rc.d/init.d/postgrey
|
||||
%config(noreplace) %{confdir}/postgrey_whitelist_clients
|
||||
%config(noreplace) %{confdir}/postgrey_whitelist_recipients
|
||||
%config(noreplace) %{confdir}/postgrey_whitelist_clients.local
|
||||
%{_sbindir}/postgrey
|
||||
%{_sbindir}/postgreyreport
|
||||
%{_mandir}/man8/postgrey.8*
|
||||
%dir %attr(0751, postgrey, postfix) %{_var}/spool/postfix/postgrey/
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Feb 12 2007 Matthias Saou <http://freshrpms.net/> 1.27-4
|
||||
- Silence %%setup.
|
||||
- Fix init script mode in the srpm.
|
||||
- Remove explicit perl(IO::Multiplex) requirement, not needed on FC6 (but
|
||||
probably still on RHEL4).
|
||||
- Add a comment line to the empty local whitelist file.
|
||||
|
||||
* Mon Dec 4 2006 Matthias Saou <http://freshrpms.net/> 1.27-3
|
||||
- Add man page generation (Mike Wohlgemuth).
|
||||
|
||||
* Fri Dec 1 2006 Matthias Saou <http://freshrpms.net/> 1.27-2
|
||||
- Include postgreyreport script.
|
||||
|
||||
* Mon Nov 6 2006 Matthias Saou <http://freshrpms.net/> 1.27-1
|
||||
- Spec file cleanup.
|
||||
|
||||
* Wed Jan 18 2006 Levente Farkas <lfarkas@lfarkas.org> 1.24
|
||||
- some minor changes thanks to Peter Bieringer <pb@bieringer.de>
|
||||
|
||||
* Mon Jan 16 2006 Levente Farkas <lfarkas@lfarkas.org> 1.24
|
||||
- upgrade to 1.24
|
||||
|
||||
* Sun Nov 13 2005 Levente Farkas <lfarkas@lfarkas.org> 1.22
|
||||
- upgrade to 1.22
|
||||
|
||||
* Mon Aug 22 2005 Levente Farkas <lfarkas@lfarkas.org> 1.21
|
||||
- spec file update from Luigi Iotti <luigi@iotti.biz>
|
||||
|
||||
* Thu Apr 28 2005 Levente Farkas <lfarkas@lfarkas.org> 1.21
|
||||
- update to 1.21
|
||||
|
||||
* Tue Mar 8 2005 Levente Farkas <lfarkas@lfarkas.org> 1.18
|
||||
- update to 1.18
|
||||
|
||||
* Tue Dec 14 2004 Levente Farkas <lfarkas@lfarkas.org> 1.17
|
||||
- update to 1.17
|
||||
|
||||
* Wed Jul 14 2004 Levente Farkas <lfarkas@lfarkas.org> 1.14
|
||||
- guard the pre and post scripts
|
||||
|
||||
* Wed Jul 7 2004 Levente Farkas <lfarkas@lfarkas.org> 1.13
|
||||
- initial release 1.13
|
||||
|
||||
1
sources
1
sources
|
|
@ -0,0 +1 @@
|
|||
df3a8b4a0c6ab7e8e5bb5be0de096c47 postgrey-1.27.tar.gz
|
||||
Loading…
Add table
Add a link
Reference in a new issue