#! /bin/sh # # Fail2Ban init.d file - to be launched on boot # # Written by Miquel van Smoorenburg . # Modified for Debian # by Ian Murdock . # Adjusted for Fail2Ban # by Yaroslav Halchenko . # # Version: $Id$ # PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/fail2ban NAME=fail2ban DESC=fail2ban PIDFILE=/var/run/$NAME.pid test -x $DAEMON || exit 0 # Include fail2ban defaults if available if [ -f /etc/default/fail2ban ] ; then . /etc/default/fail2ban fi DAEMON_OPTS=$FAIL2BAN_OPTS set -e case "$1" in start) echo -n "Starting $DESC: " [ -f $PIDFILE ] && [ ! -d /proc/`cat $PIDFILE` ] && rm -f $PIDFILE start-stop-daemon --start --quiet --pidfile $PIDFILE \ -b --exec $DAEMON -- $DAEMON_OPTS echo "$NAME." ;; stop) echo -n "Stopping $DESC: " start-stop-daemon --stop --quiet --pidfile $PIDFILE echo "$NAME." ;; restart|force-reload) # # If the "reload" option is implemented, move the "force-reload" # option to the "reload" entry above. If not, "force-reload" is # just the same as "restart". # echo -n "Restarting $DESC: " ( $0 stop ) sleep 1 $0 start ;; status) echo -n "Status of $DESC: " if [ ! -e "$PIDFILE" ]; then echo "$NAME is not running." exit 3 fi if [ ! -r "$PIDFILE" ]; then echo "$PIDFILE not readable, status of $NAME unknown." exit 4 fi if [ -d /proc/`cat "$PIDFILE"` ]; then echo "$NAME is running." exit 0 else echo "$NAME is not running but $PIDFILE exists." exit 1 fi ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload|status}" >&2 exit 1 ;; esac exit 0