Commit Graph

8 Commits (c8ed0e0d913feeb361de800d1af6fd56e96bb840)

Author SHA1 Message Date
Michael Orlitzky c8ed0e0d91 files/fail2ban-openrc.init: use the standard OpenRC "retry" variable.
If the "retry" variable is set in the service script, we don't have to
pass it to start-stop-daemon explicitly. While we can't immediately
eliminate any code with this change, it will be necessary later to
adopt the default OpenRC stop() function.
2018-07-15 18:22:48 -04:00
Michael Orlitzky e0097aefb9 files/fail2ban-openrc.init: use RC_SVCNAME instead of hard-coding the name.
If our service is installed under some other name, then we don't want
the service script to say things like "Starting fail2ban..." because
the name "fail2ban" won't make any sense at that point. Instead, we
use the $RC_SVCNAME variable to ensure that the service name matches
what we tell the user. Typically, however, $RC_SVCNAME will still be
"fail2ban".
2018-07-15 18:20:55 -04:00
Michael Orlitzky 0b146208eb files/fail2ban-openrc.init: move pre-flight checks into start_pre().
Our OpenRC service script performs two tasks before starting the service:

  1. It removes any stake sockets (from e.g. a system crash).

  2. It ensures that the PID file directory exists.

These have both been moved into the "start_pre" phase, which is
designed to do such things (and will allow us to simplify the "start"
phase in the future). The existing "mkdir -p" has also been converted
into a "checkpath -d" command which is built-in to OpenRC.
2018-07-15 13:35:35 -04:00
Michael Orlitzky 115024d14a files/fail2ban-openrc.init: use a variable for the pid file location.
OpenRC has a special variable "pidfile" that should be used to store
the location of the daemon's PID file. This commit replaces two
instances of said location with one variable.
2018-07-15 13:35:35 -04:00
Michael Orlitzky bc4a742e32 files/fail2ban-openrc.init: replace FAIL2BAN with standard OpenRC variables.
The FAIL2BAN variable in our OpenRC service script was a combination
of two standard OpenRC variables, "command" and "command_args". This
commit simply replaces the custom variable with the two standard
ones. This will aid future simplifications of the service script.
2018-07-15 13:13:13 -04:00
Michael Orlitzky af24c52558 files/fail2ban-openrc.init: change "need logger" dependency to "use logger".
Our OpenRC service script contained a "need logger" dependency, which
meant that the life cycle of the fail2ban service was tied to that of
the system logger service. That isn't quite correct: fail2ban
functions fine even if the system logger is stopped:

  1. fail2ban is capable of analyzing non-syslog log files.

  2. Even if fail2ban is solely analyzing syslog files, we don't
     want to stop the fail2ban service simply because syslog was
     stopped -- fail2ban just won't see any new log lines until
     syslog is started again.

This commit changes the "need net" dependency to "use net", which will
still attempt to start the system logger service, but which won't kill
fail2ban if the system logger is ever stopped.
2018-07-15 13:05:11 -04:00
Michael Orlitzky 64ec399542 files/fail2ban-openrc.init: drop "need net" dependency.
The "need net" dependency in our OpenRC service script was incorrect:
the fail2ban service does not need a working WAN to function. This
issue is well-documented and is covered in the OpenRC Service Script
Guide, currently located at

  https://github.com/OpenRC/openrc/blob/master/service-script-guide.md
2018-07-15 12:59:18 -04:00
Michael Orlitzky 884f708bd7 fail2ban/files: rename "gentoo" files to "openrc".
We ship a service script and configuration file for "gentoo" that are
actually more generally applicable: they work on any system where
OpenRC is used. This commit simply renames the files from "gentoo" to
"openrc" to reflect the fact that they are in no way Gentoo-specific.
2018-07-15 09:07:28 -04:00