From 53b33987c97b60749b4c65c93bb3cfda971935b6 Mon Sep 17 00:00:00 2001 From: Dorian Arthur Date: Fri, 22 May 2026 12:11:53 -0500 Subject: [PATCH] Create /var/log/simplerisk/simplerisk.log with correct apache ownership per OS Adds set_up_simplerisk_log helper that creates /var/log/simplerisk/ and simplerisk.log, then chowns them to the OS-appropriate apache user (www-data on Debian/Ubuntu, apache on RHEL/CentOS, wwwrun on SUSE). RHEL installs also apply the httpd_log_t SELinux context to the directory. All three uninstall functions remove /var/log/simplerisk on cleanup. Co-Authored-By: Claude Sonnet 4.6 --- simplerisk-setup.sh | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/simplerisk-setup.sh b/simplerisk-setup.sh index 05c393f..aa841d7 100755 --- a/simplerisk-setup.sh +++ b/simplerisk-setup.sh @@ -337,6 +337,16 @@ set_up_backup_cronjob() { exec_cmd "(crontab -l 2>/dev/null; echo '* * * * * $(which php) -f /var/www/simplerisk/cron/cron.php') | crontab -" } +set_up_simplerisk_log() { + # $1 receives the apache user that should own the log directory and file + print_status 'Creating SimpleRisk log directory and file...' + run_cmd mkdir -p /var/log/simplerisk + run_cmd touch /var/log/simplerisk/simplerisk.log + run_cmd chown -R "${1}:" /var/log/simplerisk + run_cmd chmod 750 /var/log/simplerisk + run_cmd chmod 640 /var/log/simplerisk/simplerisk.log +} + get_current_simplerisk_version() { curl -sL "https://updates${TESTING:+-test}.simplerisk.com/releases.xml" | grep -oP '' | head -n1 | cut -d '"' -f 2 } @@ -505,6 +515,7 @@ setup_ubuntu_debian(){ set_php_settings "/etc/php/$php_version/apache2/php.ini" set_up_simplerisk 'www-data' "${1}" + set_up_simplerisk_log 'www-data' print_status 'Configuring Apache...' run_cmd sed -i 's|\(/var/www/\)html|\1simplerisk|g' /etc/apache2/sites-enabled/000-default.conf @@ -615,6 +626,7 @@ setup_centos_rhel(){ run_cmd dnf -y install sendmail sendmail-cf m4 set_up_simplerisk 'apache' "${1}" + set_up_simplerisk_log 'apache' print_status 'Configuring Apache...' run_cmd sed -i 's|#\?\(DocumentRoot "/var/www/\)html"|\1simplerisk"|' /etc/httpd/conf.d/ssl.conf @@ -693,6 +705,7 @@ EOF run_cmd setsebool -P "$permission=0" done run_cmd chcon -R -t httpd_sys_rw_content_t /var/www/simplerisk + run_cmd chcon -R -t httpd_log_t /var/log/simplerisk } setup_suse(){ @@ -809,6 +822,7 @@ EOF done set_up_simplerisk 'wwwrun' "${1}" + set_up_simplerisk_log 'wwwrun' print_status 'Restarting Apache to load the new configuration...' run_cmd systemctl restart apache2 @@ -860,6 +874,9 @@ uninstall_ubuntu_debian(){ print_status 'Removing SimpleRisk application files...' run_cmd_nobail rm -rf /var/www/simplerisk + print_status 'Removing SimpleRisk log directory...' + run_cmd_nobail rm -rf /var/log/simplerisk + print_status 'Removing installed packages...' exec_cmd_nobail "apt-get purge -y 'php*' 'libapache2-mod-php*' apache2 apache2-utils apache2-bin mysql-server mysql-client mysql-common sendmail sendmail-bin" run_cmd_nobail apt-get autoremove -y @@ -899,6 +916,9 @@ uninstall_centos_rhel(){ print_status 'Removing SimpleRisk application files...' run_cmd_nobail rm -rf /var/www/simplerisk + print_status 'Removing SimpleRisk log directory...' + run_cmd_nobail rm -rf /var/log/simplerisk + print_status 'Removing SimpleRisk Apache virtual host config...' run_cmd_nobail rm -f /etc/httpd/sites-enabled/simplerisk.conf run_cmd_nobail rm -rf /etc/httpd/sites-available /etc/httpd/sites-enabled @@ -941,6 +961,9 @@ uninstall_suse(){ print_status 'Removing SimpleRisk application files...' run_cmd_nobail rm -rf /var/www/simplerisk + print_status 'Removing SimpleRisk log directory...' + run_cmd_nobail rm -rf /var/log/simplerisk + print_status 'Removing SimpleRisk Apache virtual host and SSL config...' run_cmd_nobail rm -f /etc/apache2/vhosts.d/simplerisk.conf run_cmd_nobail rm -f /etc/apache2/vhosts.d/ssl.conf