diff options
Diffstat (limited to 'network/DenyHosts')
-rw-r--r-- | network/DenyHosts/DenyHosts.SlackBuild | 81 | ||||
-rw-r--r-- | network/DenyHosts/DenyHosts.info | 14 | ||||
-rw-r--r-- | network/DenyHosts/README | 23 | ||||
-rw-r--r-- | network/DenyHosts/slack-desc | 6 |
4 files changed, 102 insertions, 22 deletions
diff --git a/network/DenyHosts/DenyHosts.SlackBuild b/network/DenyHosts/DenyHosts.SlackBuild index 279b7c1731f06..4d7f9dceb4d1e 100644 --- a/network/DenyHosts/DenyHosts.SlackBuild +++ b/network/DenyHosts/DenyHosts.SlackBuild @@ -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 diff --git a/network/DenyHosts/DenyHosts.info b/network/DenyHosts/DenyHosts.info index 20c69623e7646..6e7ec0283d568 100644 --- a/network/DenyHosts/DenyHosts.info +++ b/network/DenyHosts/DenyHosts.info @@ -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" diff --git a/network/DenyHosts/README b/network/DenyHosts/README index 823f2b3e16372..cec8931d9c7d0 100644 --- a/network/DenyHosts/README +++ b/network/DenyHosts/README @@ -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. diff --git a/network/DenyHosts/slack-desc b/network/DenyHosts/slack-desc index fc3cae00dbfe3..297cd405a4296 100644 --- a/network/DenyHosts/slack-desc +++ b/network/DenyHosts/slack-desc @@ -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: |