#!/bin/bash set -e # debconf-devel(7) asks we do this . /usr/share/debconf/confmodule # some shorthands for sanity en="/etc/nagios4" enc="/etc/nagios4/conf.d" usn="/usr/share/nagios4" # location of the default apache configuration for nagios. apacheconf="${en}/apache2.conf" # location of the default htdigest authentication file. htdigest="${en}/htdigest.users" setperm() { local user="${1}" local group="${2}" local mode="${3}" local file="${4}" shift 4 # only do something when no setting exists if ! dpkg-statoverride --list "${file}" >/dev/null 2>&1 then if [ -e "${file}" ] then chown "${user}":"${group}" "${file}" chmod "${mode}" "${file}" fi fi } case "${1}" in configure) if ! getent passwd nagios > /dev/null then echo 'Adding system-user for nagios' 1>&2 adduser \ --system --group --home /var/lib/nagios \ --disabled-login --force-badname nagios > /dev/null fi # register apache2.conf via ucf: ucf --debconf-ok /usr/share/nagios4-cgi/apache2.conf "${apacheconf}" # apache2.conf uses this file if [ ! -e "${htdigest}" ] then touch "${htdigest}" setperm nagios www-data 0640 "${htdigest}" fi echo "enabling Apache2 config..." COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true) [ ! -s /usr/share/apache2/apache2-maintscript-helper ] || ( . /usr/share/apache2/apache2-maintscript-helper apache2_invoke enmod cgi apache2_invoke enconf nagios4-cgi ) if [ -e /var/lib/nagios4/rw ] then setperm nagios www-data 0750 /var/lib/nagios4 setperm nagios www-data 2710 /var/lib/nagios4/rw fi ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument '${1}'" >&2 exit 1 ;; esac