61 lines
1.2 KiB
Bash
61 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
# Bastille jail startup script
|
|
|
|
# PROVIDE: bastille
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
|
|
# Add the following to /etc/rc.conf[.local] to enable this service
|
|
#
|
|
# bastille_enable (bool): Set to NO by default.
|
|
# Set it to YES to enable bastille.
|
|
# bastille_list (string): Set to "ALL" by default.
|
|
# Space separated list of jails to start.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name=bastille
|
|
rcvar=${name}_enable
|
|
|
|
: ${bastille_enable:=NO}
|
|
: ${bastille_list:="ALL"}
|
|
|
|
command=%%PREFIX%%/bin/${name}
|
|
start_cmd="bastille_start"
|
|
stop_cmd="bastille_stop"
|
|
restart_cmd="bastille_stop && bastille_start"
|
|
|
|
bastille_start()
|
|
{
|
|
if [ ! -n "${bastille_list}" ]; then
|
|
echo "${bastille_list} is undefined"
|
|
return 1
|
|
fi
|
|
|
|
local _jail
|
|
|
|
for _jail in ${bastille_list}; do
|
|
echo "Starting Bastille Jail: ${_jail}"
|
|
${command} start ${_jail}
|
|
done
|
|
}
|
|
|
|
bastille_stop()
|
|
{
|
|
if [ ! -n "${bastille_list}" ]; then
|
|
echo "${bastille_list} is undefined"
|
|
return 1
|
|
fi
|
|
|
|
local _jail
|
|
|
|
for _jail in ${bastille_list}; do
|
|
echo "Stopping Bastille Jail: ${_jail}"
|
|
${command} stop ${_jail}
|
|
done
|
|
}
|
|
|
|
load_rc_config ${name}
|
|
run_rc_command "$1"
|