#! /bin/sh set -e case "$1" in configure) addgroup --system freerad || true groups freerad 2>/dev/null || adduser --system --no-create-home --home /etc/freeradius --ingroup freerad --disabled-password freerad # make sure there is a user and group 'freerad' groups freerad |grep freerad >/dev/null if [ "$2" = "" ] ; then # put user freerad in group shadow, so the daemon can auth locally usermod -G shadow freerad fi update-rc.d freeradius defaults 50 >/dev/null if [ ! -d /var/log/freeradius ]; then mkdir -p /var/log/freeradius fi if [ ! -f /var/log/freeradius/radius.log ]; then touch /var/log/freeradius/radius.log fi if [ ! -f /var/log/freeradius/radwtmp ]; then touch /var/log/freeradius/radwtmp fi if [ ! -d /var/run/freeradius ]; then mkdir /var/run/freeradius fi chown freerad:freerad /var/run/freeradius find /etc/freeradius -type f -exec chgrp freerad {} \; -exec chmod 640 {} \; find /etc/freeradius -type d -exec chgrp freerad {} \; -exec chmod 2750 {} \; find /var/log/freeradius -exec chown freerad {} \; -exec chgrp freerad {} \; if [ "$2" = "" ] ; then action="start" else action="restart" fi if command -v invoke-rc.d >/dev/null 2>&1; then invoke-rc.d freeradius $action || true else /etc/init.d/freeradius $action fi ;; abort-upgrade) ;; abort-remove) if command -v invoke-rc.d >/dev/null 2>&1; then invoke-rc.d freeradius start || true else /etc/init.d/freeradius start fi ;; abort-deconfigure) ;; esac #DEBHELPER# exit 0