network/DenyHosts: Updated for version 3.1 + new maintainer.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Tim Dickson 2019-06-01 07:03:30 +07:00 committed by Willy Sudiarto Raharjo
parent 1258b2a26f
commit b67daffb8a
4 changed files with 102 additions and 22 deletions

View file

@ -1,12 +1,43 @@
#!/bin/sh
# Slackware build script for denyhosts
# Written by chopp (nix4me@gmail.com)
# originally Written by chopp (nix4me@gmail.com)
# Some portions, methods and/or ideas obtained from:
# http://slackbuilds.org/python-template.SlackBuild
#
# rewritten (updates) Copyright 2019 Tim Dickson
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# Update History:
# 2019/05/21 Updated to support version 3.1
# including patches so it works with Slackware. Since being
# forked from v2.6 the project name changed to denyhost on sourceforge
# (used for source downloads)
# and is homed on github https://github.com/denyhosts/denyhosts
# but programs still have the same name. default config file
# has moved to /etc and changed from denyhosts.cfg to denyhosts.conf
# programs have moved to /usr/sbin. Also iptables support
# has been added.
PRGNAM=DenyHosts
VERSION=${VERSION:-2.6}
LCPRGNAM=denyhosts
VERSION=${VERSION:-3.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -42,25 +73,57 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
rm -rf $LCPRGNAM
tar xvf $CWD/$LCPRGNAM-$VERSION.tar.gz
cd $LCPRGNAM
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
#patch setup so man files go to correct place for slackware
sed -i "s/\/usr\/share\/man/\/usr\/man/g" setup.py
#patch version missmatch
sed -i "s/3.0/3.1/g" $PRGNAM/version.py
python setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
for docfile in CHANGELOG.txt LICENSE.txt README.txt ; do
ln -s /usr/share/denyhosts/$docfile $PKG/usr/doc/$PRGNAM-$VERSION/ ;
for docfile in CHANGELOG.txt LICENSE.txt README.md ; do
cp $TMP/$LCPRGNAM/$docfile $PKG/usr/doc/$PRGNAM-$VERSION/
done
#patch example configs to include and default to slackware compatible
#first the log file
DISTDIR=$PKG/usr/sbin
mkdir -p $DISTDIR
mkdir -p $PKG/etc/rc.d
DISTCFG=$PKG/etc/denyhosts.conf
sed -i "s/ or Gentoo:/,Slackware or Gentoo:/g" $DISTCFG
sed -i "s/^SECURE_LOG/#SECURE_LOG/g" $DISTCFG
sed -i "/\/var\/log\/messages/s/^#//" $DISTCFG
#sed -i "s/^LOCK_FILE/#LOCK_FILE/g" $DISTCFG
sed -i "s/Debian or/Debian,Slackware or/g" $DISTCFG
#sed -i "/\/run\/denyhosts.pid/s/^#//" $DISTCFG
sed -i "/^DAEMON_SLEEP/s/30s/4s/" $DISTCFG
DISTCTRL=$DISTDIR/daemon-control-dist
#patch bug where executables are put in wrong place.
mv $PKG/usr/bin/daemon-control-dist $DISTDIR/
mv $PKG/usr/bin/$LCPRGNAM.py $DISTDIR/
rm -rf $PKG/usr/bin
sed -i "s/\/sbin\/denyhosts/\/sbin\/denyhosts.py/g" $DISTCTRL
sed -i "s/\/run\/denyhosts.pid/\/var\/run\/denyhosts.pid/g" $DISTCTRL
#we may as well make a working config active as locations have all
#been moved since previous availbale versions on sbo.
cp $DISTDIR/daemon-control-dist $DISTDIR/daemon-control
#handle man page
cd $PKG/usr/man/man8
gzip $LCPRGNAM.8
cat $CWD/rc.denyhosts > $PKG/etc/rc.d/rc.denyhosts
#the user will need to add a call to rc.denyhosts in rc.inet2 in order
#for denyhosts to run at startup, ideally just after ssh is started
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install

View file

@ -1,10 +1,10 @@
PRGNAM="DenyHosts"
VERSION="2.6"
HOMEPAGE="http://denyhosts.sourceforge.net/"
DOWNLOAD="http://downloads.sourceforge.net/denyhosts/DenyHosts-2.6.tar.gz"
MD5SUM="fc2365305a9402886a2b0173d1beb7df"
VERSION="3.1"
HOMEPAGE="https://github.com/denyhosts/denyhosts"
DOWNLOAD="http://downloads.sourceforge.net/denyhost/denyhosts-3.1.tar.gz"
MD5SUM="6f6947016ee7f6831237ef2f6edd5dd4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="chopp"
EMAIL="nix4me@gmail.com"
REQUIRES="ipaddr-py"
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"

View file

@ -1,4 +1,21 @@
DenyHosts is a python program that automatically blocks ssh attacks
by adding entries to /etc/hosts.deny. DenyHosts will also inform
Linux administrators about offending hosts, attacked users, and
suspicious logins.
by adding entries to /etc/hosts.deny. It will also block them via
iptables. DenyHosts will also inform Linux administrators about
offending hosts, attacked users, and suspicious logins.
Note: the main config file is moved to /etc/denyhosts.conf for
versions greater than 2.6
Noote: ipaddr-py is a new dependency
DenyHosts has been updated to work with python3 as well as 2, but
will use whichever version is pointed to by /usr/bin/python
to run at start-up, add
# start Denyhosts
if [ -x /etc/rc.d/rc.denyhosts ]; then
echo "Starting Denyhosts:"
/etc/rc.d/rc.denyhosts start
fi
to /etc/rc.d/rc.inet2 just after where sshd is run
and make /etc/rc.d/rc.denyhosts executable.

View file

@ -9,9 +9,9 @@
DenyHosts: DenyHosts (script to help thwart SSH server attacks)
DenyHosts:
DenyHosts: DenyHosts is a python program that automatically blocks ssh attacks
DenyHosts: by adding entries to /etc/hosts.deny. DenyHosts will also inform
DenyHosts: Linux administrators about offending hosts, attacked users, and
DenyHosts: suspicious logins.
DenyHosts: by adding entries to /etc/hosts.deny and to iptables. DenyHosts
DenyHosts: will also inform Linux administrators about offending hosts,
DenyHosts: attacked users, and suspicious logins.
DenyHosts:
DenyHosts: Homepage: http://denyhosts.sourceforge.net/
DenyHosts: