aboutsummaryrefslogtreecommitdiff
path: root/network/fail2ban/rc.fail2ban
blob: 86c6b7de526294997823be98b06ed26c1e02f7a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/sh
#
# Copyright (c) 2008-2009, Nishant Limbachia, Hoffman Est, IL, USA (nishant@mnspace.net)
# /etc/rc.d/rc.fail2ban
#
# start|stop|restart|reload|status|ping fail2ban server
#
# To start fail2ban automatically at boot, make this file executable:  
# chmod 755 /etc/rc.d/rc.fail2ban
# you must also add this file to rc.local for fail2ban to start during boot.

### default socket file is /var/run/fail2ban/fail2ban.sock which can be
### changed via the config file: /etc/fail2ban/fail2ban.conf

fail2ban_start() {
  if [ -x /etc/rc.d/rc.fail2ban ]; then
	echo "Starting fail2ban: "
	### using -x option to remove any stale socket file.
	/usr/bin/fail2ban-client -x start
  else
  	echo "rc.fail2ban is not executable or you don't have enough permissions"
  	exit 1
  fi
}

fail2ban_stop() {
	echo "Stopping fail2ban"
	/usr/bin/fail2ban-client stop
}

fail2ban_reload() {
	echo "Reloading fail2ban"
	/usr/bin/fail2ban-client reload
}

fail2ban_status() {
	echo "Status: fail2ban"
	/usr/bin/fail2ban-client status
}

fail2ban_ping() {
	echo "Pinging fail2ban"
	/usr/bin/fail2ban-client ping
}

case "$1" in
'start')
	fail2ban_start
  ;;
'stop')
	fail2ban_stop
  ;;
'restart')
	fail2ban_stop
	sleep 5
	fail2ban_start
;;
'reload')
	fail2ban_reload
  ;;
'status')
	fail2ban_status
  ;;
'ping')
	fail2ban_ping
  ;;
*)
	echo "USAGE: $0 start|stop|restart|reload|status|ping"
	exit 1
  ;;
esac