Added monit to backend CMS
This commit is contained in:
@@ -20,4 +20,16 @@ Alias /backend/database /usr/share/phpmyadmin
|
|||||||
|
|
||||||
</Directory>
|
</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
|
#endConf
|
||||||
|
|||||||
@@ -11,4 +11,5 @@ chown Backend:Backend -R /var/log/PhpMyAdmin
|
|||||||
systemctl reload "$phpFPMService"
|
systemctl reload "$phpFPMService"
|
||||||
#Auto disable backends at night
|
#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-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 {
|
location ~ /\.ht {
|
||||||
deny all;
|
deny all;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ if [ "$shortdist" = "ubu1804" ] || [ "$shortdist" = "ubu2004" ] || [ "$shortdist
|
|||||||
a2dismod mpm_prefork > $OUTPUT 2>&1
|
a2dismod mpm_prefork > $OUTPUT 2>&1
|
||||||
a2enmod actions fcgid alias proxy_fcgi ssl headers http2 setenvif socache_shmcb > $OUTPUT 2>&1
|
a2enmod actions fcgid alias proxy_fcgi ssl headers http2 setenvif socache_shmcb > $OUTPUT 2>&1
|
||||||
mkdir -p "$apacheConfDir"/snippets/
|
mkdir -p "$apacheConfDir"/snippets/
|
||||||
|
monitconf=/etc/monit/monitrc
|
||||||
elif [ "$shortdist" = "el8" ]; then
|
elif [ "$shortdist" = "el8" ]; then
|
||||||
echo 'IncludeOptional conf-enabled/*.conf' >>/etc/httpd/conf/httpd.conf
|
echo 'IncludeOptional conf-enabled/*.conf' >>/etc/httpd/conf/httpd.conf
|
||||||
echo 'IncludeOptional sites-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}
|
mkdir -p /etc/httpd/{sites-available,sites-enabled,conf-enabled,conf-available,snippets}
|
||||||
#getting aditional apache config for centos
|
#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
|
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
|
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
|
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
|
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
|
sed -i -e 's/DOMAINname/'$hostname'/g' "$apacheConfDir"/sites-available/Backend_ssl.conf
|
||||||
|
|
||||||
|
#BackendToggle
|
||||||
mkdir -p /opt/toggle
|
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
|
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
|
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
|
# 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
|
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
|
sed -i -e 's/DOMAINname/'$hostname'/g' /etc/nginx/sites-available/Backend_ssl
|
||||||
|
|
||||||
|
#toggles
|
||||||
mkdir -p /opt/toggle
|
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-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
|
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
|
# custom Welcome page
|
||||||
echo "<html><head></head><body>$webserv is functioning normally</body></html>" > /usr/share/nginx/html/index.html
|
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