Added monit to backend CMS
This commit is contained in:
@@ -20,4 +20,16 @@ Alias /backend/database /usr/share/phpmyadmin
|
||||
|
||||
</Directory>
|
||||
|
||||
<Location /backend/monit>
|
||||
RewriteEngine on
|
||||
RewriteRule /monit /monit/$1 [R]
|
||||
</Location>
|
||||
<Location /backend/monit/>
|
||||
#enables/disables monit-websocket
|
||||
deny from all
|
||||
ProxyPass unix:/var/run/monit/monit.sock|http://127.0.0.1/
|
||||
ProxyPassReverse unix:/var/run/monit/monit.sock|http://127.0.0.1/
|
||||
</Location>
|
||||
|
||||
|
||||
#endConf
|
||||
|
||||
@@ -11,4 +11,5 @@ chown Backend:Backend -R /var/log/PhpMyAdmin
|
||||
systemctl reload "$phpFPMService"
|
||||
#Auto disable backends at night
|
||||
echo "0 0 * * * root bash /opt/toggle/toggle-Netdata.sh -d > >/dev/null 2>&1" >> /etc/cron.d/autodisablebackend
|
||||
echo "0 0 * * * root bash /opt/toggle/toggle-PhpMyAdmin.sh -d > >/dev/null 2>&1" >> /etc/cron.d/autodisablebackend
|
||||
echo "0 0 * * * root bash /opt/toggle/toggle-PhpMyAdmin.sh -d > >/dev/null 2>&1" >> /etc/cron.d/autodisablebackend
|
||||
echo "0 0 * * * root bash /opt/toggle/toggle-MonitWebui.sh -d > >/dev/null 2>&1" >> /etc/cron.d/autodisablebackend
|
||||
@@ -34,6 +34,11 @@ location = /backend/netdata {
|
||||
}
|
||||
}
|
||||
|
||||
location /backend/monit/ {
|
||||
deny all; #enables/disables monit-websocket
|
||||
proxypass http://unix:/var/run/monit/monit.sock:/;
|
||||
}
|
||||
|
||||
location ~ /\.ht {
|
||||
deny all;
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ if [ "$shortdist" = "ubu1804" ] || [ "$shortdist" = "ubu2004" ] || [ "$shortdist
|
||||
a2dismod mpm_prefork > $OUTPUT 2>&1
|
||||
a2enmod actions fcgid alias proxy_fcgi ssl headers http2 setenvif socache_shmcb > $OUTPUT 2>&1
|
||||
mkdir -p "$apacheConfDir"/snippets/
|
||||
monitconf=/etc/monit/monitrc
|
||||
elif [ "$shortdist" = "el8" ]; then
|
||||
echo 'IncludeOptional conf-enabled/*.conf' >>/etc/httpd/conf/httpd.conf
|
||||
echo 'IncludeOptional sites-enabled/*.conf' >>/etc/httpd/conf/httpd.conf
|
||||
@@ -18,6 +19,7 @@ elif [ "$shortdist" = "el8" ]; then
|
||||
mkdir -p /etc/httpd/{sites-available,sites-enabled,conf-enabled,conf-available,snippets}
|
||||
#getting aditional apache config for centos
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/CoreModules/apache/config/apache2/conf-httpd-custom.conf -o "$apacheConfDir"/conf-enabled/zzz-Httpd-custom.conf
|
||||
monitconf=/etc/monitrc
|
||||
fi
|
||||
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/CoreModules/apache/config/apache2/snippets-ssl.conf -o "$apacheConfDir"/snippets/apa-ssl.conf
|
||||
@@ -54,12 +56,15 @@ ln -s "$apacheConfDir"/sites-available/Backend_nossl.conf "$apacheConfDir"/sites
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/CoreModules/apache/config/apache2/site_ssl-unconfigured >> "$apacheConfDir"/sites-available/Backend_ssl.conf
|
||||
sed -i -e 's/DOMAINname/'$hostname'/g' "$apacheConfDir"/sites-available/Backend_ssl.conf
|
||||
|
||||
|
||||
#BackendToggle
|
||||
mkdir -p /opt/toggle
|
||||
##Phpmyadmin
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/Scripts/toggles/toggle-PhpMyAdmin_APACHE.sh -o /opt/toggle/toggle-PhpMyAdmin.sh
|
||||
sed -i -e 's/APASRV/'$apacheService'/' -e 's#APADIR#'$apacheConfDir'#' /opt/toggle/toggle-PhpMyAdmin.sh
|
||||
|
||||
|
||||
##monit
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/Scripts/toggles/toggle-Monit_APACHE.sh -o /opt/toggle/toggle-MonitWebui.sh
|
||||
sed -i -e 's/MONITCONF/'$monitconf'/' -e 's/APASRV/'$apacheService'/' -e 's#APADIR#'$apacheConfDir'#' /opt/toggle/toggle-MonitWebui.sh
|
||||
unset monitconf
|
||||
|
||||
|
||||
# custom Welcome page
|
||||
|
||||
@@ -36,9 +36,21 @@ ln -s /etc/nginx/sites-available/Backend_nossl /etc/nginx/sites-enabled/Backend
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/CoreModules/nginx/config/nginx/site_ssl-unconfigured >> /etc/nginx/sites-available/Backend_ssl
|
||||
sed -i -e 's/DOMAINname/'$hostname'/g' /etc/nginx/sites-available/Backend_ssl
|
||||
|
||||
#toggles
|
||||
mkdir -p /opt/toggle
|
||||
##phpmyadmin toggle
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/Scripts/toggles/toggle-Netdata_NGINX.sh -o /opt/toggle/toggle-Netdata.sh
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/Scripts/toggles/toggle-PhpMyAdmin_NGINX.sh -o /opt/toggle/toggle-PhpMyAdmin.sh
|
||||
##monit toggle
|
||||
if [ "$shortdist" = "ubu1804" ] || [ "$shortdist" = "ubu2004" ] || [ "$shortdist" = "deb10" ] ; then
|
||||
monitconf=/etc/monit/monitrc
|
||||
elif [ "$shortdist" = "el8" ]; then
|
||||
monitconf=/etc/monitrc
|
||||
fi
|
||||
curl --retry 7 --retry-delay 5 -s "$repo"/raw/"$branchtype"/"$branch"/Scripts/toggles/toggle-Monit_NGINX.sh -o /opt/toggle/toggle-MonitWebui.sh
|
||||
sed -i -e 's/MONITCONF/'$monitconf'/' /opt/toggle/toggle-MonitWebui.sh
|
||||
unset monitconf
|
||||
|
||||
|
||||
# custom Welcome page
|
||||
echo "<html><head></head><body>$webserv is functioning normally</body></html>" > /usr/share/nginx/html/index.html
|
||||
|
||||
39
Scripts/toggles/toggle-Monit_APACHE.sh
Normal file
39
Scripts/toggles/toggle-Monit_APACHE.sh
Normal file
@@ -0,0 +1,39 @@
|
||||
function usage {
|
||||
echo "Usage: $0 [option...]" >&2
|
||||
echo
|
||||
echo " -e, Enable MonitWebui"
|
||||
echo " -d, Disable MonitWebui"
|
||||
echo " -h, Shows this information"
|
||||
echo
|
||||
}
|
||||
if [ -n "$1" ]; then
|
||||
if [[ ! -f /etc/ICTM/toggle.conf ]]; then
|
||||
echo "Creating File"
|
||||
touch /etc/ICTM/toggle.conf
|
||||
fi
|
||||
source /etc/ICTM/toggle.conf
|
||||
if [ -z "$MonitWeb" ]; then
|
||||
echo "Creating Var"
|
||||
echo "MonitWeb=3" >> /etc/ICTM/toggle.conf
|
||||
MonitWeb=3
|
||||
fi
|
||||
if [[ "$1" = "-d" && "$MonitWeb" != 0 ]]; then
|
||||
echo "Disable MonitWebui"
|
||||
sed -i '/MonitWeb=/c\MonitWeb=0' /etc/ICTM/toggle.conf
|
||||
sed -i --follow-symlinks '/#enables\/disables monit-websocket/!b;n;cdeny from all' /APADIR/sites-enabled/010-Backend.conf
|
||||
sed -i '/#enables\/disables monit-websocket/ s/^#*/#/' MONITCONF
|
||||
systemctl reload APASRV monit
|
||||
elif [[ "$1" = "-e" && "$MonitWeb" != 1 ]]; then
|
||||
echo "Enable MonitWebui"
|
||||
sed -i '/MonitWeb=/c\MonitWeb=1' /etc/ICTM/toggle.conf
|
||||
sed -i --follow-symlinks '/#enables\/disables monit-websocket/!b;n;c#deny from all' /APADIR/sites-enabled/010-Backend.conf
|
||||
sed -i '/#enables\/disables monit-websocket/ s/^.//' MONITCONF
|
||||
systemctl reload APASRV monit
|
||||
elif [[ "$1" = "-h" ]]; then
|
||||
usage
|
||||
else
|
||||
echo "Oopsie!"
|
||||
fi
|
||||
else
|
||||
usage
|
||||
fi
|
||||
39
Scripts/toggles/toggle-Monit_NGINX.sh
Normal file
39
Scripts/toggles/toggle-Monit_NGINX.sh
Normal file
@@ -0,0 +1,39 @@
|
||||
function usage {
|
||||
echo "Usage: $0 [option...]" >&2
|
||||
echo
|
||||
echo " -e, Enable MonitWebui"
|
||||
echo " -d, Disable MonitWebui"
|
||||
echo " -h, Shows this information"
|
||||
echo
|
||||
}
|
||||
if [ -n "$1" ]; then
|
||||
if [[ ! -f /etc/ICTM/toggle.conf ]]; then
|
||||
echo "Creating File"
|
||||
touch /etc/ICTM/toggle.conf
|
||||
fi
|
||||
source /etc/ICTM/toggle.conf
|
||||
if [ -z "$MonitWeb" ]; then
|
||||
echo "Creating Var"
|
||||
echo "MonitWeb=3" >> /etc/ICTM/toggle.conf
|
||||
MonitWeb=3
|
||||
fi
|
||||
if [[ "$1" = "-d" && "$MonitWeb" != 0 ]]; then
|
||||
echo "Disable MonitWebui"
|
||||
sed -i '/MonitWeb=/c\MonitWeb=0' /etc/ICTM/toggle.conf
|
||||
sed -i --follow-symlinks '/deny all; #enables\/disables monit-websocket/c\ deny all; #enables\/disables monit-websocket' /etc/nginx/sites-enabled/Backend
|
||||
sed -i '/#enables\/disables monit-websocket/ s/^#*/#/' MONITCONF
|
||||
systemctl reload nginx monit
|
||||
elif [[ "$1" = "-e" && "$MonitWeb" != 1 ]]; then
|
||||
echo "Enable MonitWebui"
|
||||
sed -i '/MonitWeb=/c\MonitWeb=1' /etc/ICTM/toggle.conf
|
||||
sed -i --follow-symlinks '/deny all; #enables\/disables monit-websocket/c\ #deny all; #enables\/disables monit-websocket' /etc/nginx/sites-enabled/Backend
|
||||
sed -i '/#enables\/disables monit-websocket/ s/^.//' MONITCONF
|
||||
systemctl reload nginx monit
|
||||
elif [[ "$1" = "-h" ]]; then
|
||||
usage
|
||||
else
|
||||
echo "Oopsie!"
|
||||
fi
|
||||
else
|
||||
usage
|
||||
fi
|
||||
Reference in New Issue
Block a user