Updated script descriptions
Updated email address in scripts Removed squidguard-blacklists.sh
This commit is contained in:
parent
bb95025e81
commit
2cda37ccc8
13
00logwatch
13
00logwatch
@ -1,18 +1,19 @@
|
||||
#!/bin/bash
|
||||
# Script Name: 00logwatch
|
||||
# Author: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description:
|
||||
# This script will email a logwatch report
|
||||
|
||||
MAILTO="support@comprofix.com"
|
||||
SMTP=mail.comprofix.com
|
||||
THISSERVER=`hostname --fqdn`
|
||||
THISSERVER=$(hostname -f)
|
||||
MAILFROM="$(hostname)@$(dnsdomainname)"
|
||||
|
||||
#Check if removed-but-not-purged
|
||||
test -x /usr/share/logwatch/scripts/logwatch.pl || exit 0
|
||||
|
||||
#execute
|
||||
#/usr/sbin/logwatch --output mail
|
||||
/usr/sbin/logwatch
|
||||
/usr/sbin/logwatch > /tmp/logwatch
|
||||
|
||||
sendemail -o tls=no -s $SMTP -t $MAILTO -f "$THISSERVER <$MAILFROM>" -u "[$THISSERVER] Logwatch" -m "$(cat /tmp/logwatch)" -q
|
||||
|
||||
#Note: It's possible to force the recipient in above command
|
||||
#Just pass --mailto address@a.com instead of --output mail
|
||||
|
@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
# Script Name: maint.sh
|
||||
# Author Name: Keith Bawden
|
||||
# Date: Wed May 17 15:40:32 JST 2006
|
||||
# Description: This script will:
|
||||
# Script Name: check_updates_deb
|
||||
# Author Name: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description: For use on Debian Based Systems
|
||||
# This script will:
|
||||
# Clean up the local apt repository of retrieved packages (apt-get clean)
|
||||
# Resync the package index (apt-get update)
|
||||
# If called with AUTOUPDATE set to yes then updates will be downloaded and applied with no feed back (not recommended)
|
||||
@ -114,7 +115,7 @@ then
|
||||
apt-get -yqq upgrade > /dev/null
|
||||
check_return "apt-get -yq upgrade"
|
||||
else
|
||||
PACKAGES_TO_BE_UPGRADED=`apt-get -Vs upgrade | perl -ne 'print if /upgraded:/ .. /upgraded,/'`
|
||||
PACKAGES_TO_BE_UPGRADED=$(apt-get -Vs upgrade | perl -ne 'print if /upgraded:/ .. /upgraded,/')
|
||||
apt-get -yqd upgrade > /dev/null
|
||||
check_return "apt-get -yqd upgrade"
|
||||
fi
|
||||
|
@ -1,23 +1,22 @@
|
||||
#!/bin/bash
|
||||
# Script Name: check_updates_rpm.sh
|
||||
# Author Name: Keith Bawden
|
||||
# Modified by: Matthew McKinnon
|
||||
# Date: Wed May 17 15:40:32 JST 2006
|
||||
# Updated: Mon Nov 22, 2015
|
||||
# Script Name: check_updates_rpm
|
||||
# Author Name: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description: For use on rpm based distros ie CentOS, Red Hat, Fedora
|
||||
# This script will:
|
||||
# Clean up the local rpm repository of retrieved packages (yum clean)
|
||||
# Resync the package index (yum makecache)
|
||||
# If called with AUTOUPDATE set to yes then SECURITY updates will be downloaded and applied. (The package yum-plugin-security is required Install using
|
||||
# yum install yum-plugin-security)
|
||||
|
||||
#
|
||||
# Make user configuration changes in this section
|
||||
#
|
||||
|
||||
MAILTO="matthew@ambient-it.com.au"
|
||||
MAILTO="support@comprofix.com"
|
||||
AUTOUPDATE="no"
|
||||
LOGFILE="/var/log/server_maint.log"
|
||||
THISSERVER=`hostname --fqdn`
|
||||
THISSERVER=$(hostname -f)
|
||||
|
||||
#
|
||||
# End of user configuration section
|
||||
@ -49,12 +48,12 @@ stoplogging() {
|
||||
check_return() {
|
||||
if [ "$?" -ne "0" ]
|
||||
then
|
||||
echo "`date` [ERROR] $1 failed to run" >> $LOGFILE
|
||||
echo "$(date) [ERROR] $1 failed to run" >> $LOGFILE
|
||||
send_error_email $1
|
||||
stoplogging
|
||||
exit 1
|
||||
fi
|
||||
echo "`date` [SUCCESS] $1 ran without error" >> $LOGFILE
|
||||
echo "$(date) [SUCCESS] $1 ran without error" >> $LOGFILE
|
||||
}
|
||||
|
||||
send_error_email() {
|
||||
@ -115,7 +114,7 @@ fi
|
||||
|
||||
if [[ -z $PACKAGES_TO_BE_UPGRADED ]]
|
||||
then
|
||||
echo "`date` [MESSAGE] No packages need updating." >> $LOGFILE
|
||||
echo "$(date) [MESSAGE] No packages need updating." >> $LOGFILE
|
||||
else
|
||||
|
||||
echo "
|
||||
|
28
dbbackup.sh
28
dbbackup.sh
@ -1,11 +1,26 @@
|
||||
#!/bin/bash
|
||||
bakdate=$(date +%Y%m%d%H%M)
|
||||
# Script Name: dbbackup
|
||||
# Author: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description:
|
||||
# This script will backup your mysql databases.
|
||||
# Send an email report of databases that have been backed up.
|
||||
# Rotate backups for 7 days
|
||||
#
|
||||
# NOTE:
|
||||
# A user will need to be grated permissions on the databases
|
||||
# Login to mysql with your root user.
|
||||
#
|
||||
# CREATE USER 'dbbackup'@'localhost' IDENTIFIED BY 'PASSWORD';
|
||||
# GRANT LOCK TABLES, SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER ON *.* TO 'backup'@'localhost';
|
||||
|
||||
SUBJECT="Database Backup Completed $BAKDATE"
|
||||
MAILTO="support@comprofix.com"
|
||||
BAKDATE=$(date +%Y%m%d)
|
||||
DBUSER='dbbackup'
|
||||
DBPASS='EWFfP3GZsqr427Yj'
|
||||
BACKUPDIR='/BACKUP/db/'
|
||||
|
||||
|
||||
rotate_backups() {
|
||||
find $BACKUPDIR -type f -mtime +7 -exec rm -frv {} \;
|
||||
|
||||
@ -13,12 +28,15 @@ rotate_backups() {
|
||||
|
||||
rotate_backups
|
||||
|
||||
databases=`mysql --user=$DBUSER --password=$DBPASS -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`
|
||||
databases=$(mysql --user=$DBUSER --password=$DBPASS -e "SHOW DATABASES;" | tr -d "| " | grep -v Database)
|
||||
|
||||
for db in $databases; do
|
||||
if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "mysql" ]] && [[ "$db" != _* ]] ; then
|
||||
echo "Dumping database: $db"
|
||||
mysqldump --force --opt --user=$DBUSER --password=$DBPASS --databases $db > $BACKUPDIR/$db.`date +%Y%m%d`.sql
|
||||
echo "Dumping database: $db" >> /tmp/dbbackup.msg
|
||||
mysqldump --force --opt --user=$DBUSER --password=$DBPASS --databases $db > $BACKUPDIR/$db.$BAKDATE.sql
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
cat /tmp/dbbackup.msg | mail -s "$SUBJECT" "$MAILTO"
|
||||
rm -fr /tmp/dbbackup.msg
|
||||
|
10
diskalert.sh
10
diskalert.sh
@ -1,8 +1,14 @@
|
||||
#!/bin/bash
|
||||
# Script Name: diskalert
|
||||
# Author: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description:
|
||||
# This script will email when diskspace is high.
|
||||
|
||||
MAILTO="support@comprofix.com"
|
||||
SMTP=mail.comprofix.com
|
||||
LOGFILE="/var/log/diskalert.log"
|
||||
THISSERVER=`hostname --fqdn`
|
||||
THISSERVER=$(hostname -f)
|
||||
MAILFROM="$(hostname)@$(dnsdomainname)"
|
||||
|
||||
startlogging() {
|
||||
@ -53,7 +59,7 @@ See the logfile for more info: vim $LOGFILE
|
||||
|
||||
Regards, " >/tmp/diskalertmail.msg
|
||||
|
||||
cat /tmp/diskalertmail.msg | sendemail -o tls=no -s $SMTP -t $MAILTO -f "$THISSERVER <$MAILFROM>" -u "[$THISSERVER] is running out of disk space"
|
||||
sendemail -o tls=no -s $SMTP -t $MAILTO -f "$THISSERVER <$MAILFROM>" -u "[$THISSERVER] is running out of disk space" -m "$(cat /tmp/diskalertmail.msg)"
|
||||
echo "$(date) [MESSAGE] Running out of disk space email sent to $MAILTO" >> $LOGFILE
|
||||
|
||||
fi
|
||||
|
@ -1,8 +1,13 @@
|
||||
#!/bin/bash
|
||||
# Script Name: mailQWatch
|
||||
# Author: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description:
|
||||
# This script will email a report mailq on postfix is high.
|
||||
|
||||
QUEUELIMIT=75
|
||||
SUBJECT="Mail Queue on $HOST is currently $QUEUECOUNT"
|
||||
MAILTO="mmckinnon@comprofix.com"
|
||||
MAILTO="support@comprofix.com"
|
||||
|
||||
HOST=$(/bin/hostname)
|
||||
POSTQUEUE=$(which postqueue)
|
||||
|
12
rkhunter.sh
12
rkhunter.sh
@ -1,11 +1,15 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
# Script Name: rkhunter
|
||||
# Author: Matt McKinnon
|
||||
# Date: 7th June 2016
|
||||
# Description:
|
||||
# This script will email a logwatch report
|
||||
MAILTO="support@comprofix.com"
|
||||
SMTP=mail.comprofix.com
|
||||
THISSERVER=`hostname -f`
|
||||
THISSERVER=$(hostname -f)
|
||||
MAILFROM="support@comprofix.com"
|
||||
(
|
||||
/usr/bin/rkhunter --versioncheck --nocolors
|
||||
/usr/bin/rkhunter --versioncheck --nocolors
|
||||
/usr/bin/rkhunter --update --nocolors
|
||||
/usr/bin/rkhunter --cronjob --report-warnings-only --nocolors
|
||||
) | /usr/bin/sendemail -o tls=no -s $SMTP -t $MAILTO -f "$THISSERVER <$MAILTO>" -u "[rkhunter] Daily Log $THISSERVER" -q
|
||||
|
||||
|
@ -1,72 +0,0 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# squidGuard blacklists - download & install script to
|
||||
# download blacklists from Shalla Secure Services @
|
||||
# http://squidguard.shalla.de/Downloads/shallalist.tar.gz
|
||||
#
|
||||
# created by Steve Olive - oz.ollie[at]gmail.com
|
||||
# ver 0.8 20071204 15:05 GMT+10
|
||||
# Creative Commons Attribution-Share Alike 3.0 License
|
||||
# http://creativecommons.org/licenses/by-sa/3.0/
|
||||
#
|
||||
#
|
||||
# _________ ____ ____________ _______ ___________________
|
||||
# ______ /__________ |/ /___ ____/________ ___ |__ ____/___ ____/
|
||||
# _ __ / __ ___/__ / ______ \ ___ __ \__ /| |_ / __ __/
|
||||
# / /_/ / _ / _ | ____/ / __ /_/ /_ ___ |/ /___ _ /___
|
||||
# \__,_/ /_/ /_/|_| /_____/ _ .___/ /_/ |_|\____/ /_____/
|
||||
# /_/ drxspace@gmail.com
|
||||
#
|
||||
|
||||
ROOTLS=/tmp
|
||||
cd ${ROOTLS} || { echo "Can't find root's squidGuard directory."; exit 1; }
|
||||
|
||||
SQUID=$(which squid3)
|
||||
SQUIDGRD=$(which squidGuard)
|
||||
|
||||
[[ -f ${CONFFILE:="/etc/squidguard/squidGuard.conf"} ]] || { echo "Can't find squidGuard conf file."; exit 1; }
|
||||
DATADIR=$(grep ^dbhome ${CONFFILE} | cut -d' ' -f2)
|
||||
|
||||
# download latest file - overwrite any existing file
|
||||
echo 'Downloading new blacklists...'
|
||||
wget -nv 'http://www.shallalist.de/Downloads/shallalist.tar.gz' -a /var/log/blacklists.log
|
||||
|
||||
# extract blacklists
|
||||
tar -zxf shallalist.tar.gz
|
||||
echo 'New lists downloaded and decompressed.'
|
||||
|
||||
# remove old database folders
|
||||
test -d ${DATADIR} || mkdir -p ${DATADIR}
|
||||
echo 'Removing old lists...'
|
||||
rm -Rf ${DATADIR}/*
|
||||
|
||||
# copy downloaded blacklists to db home
|
||||
echo 'Copying new lists...'
|
||||
cp -R ${ROOTLS}/BL/* ${DATADIR}
|
||||
|
||||
# create my whitelist/blacklist directories and copy files
|
||||
#mkdir -p ${DATADIR}/white ${DATADIR}/black
|
||||
#cp -R ${ROOTLS}/white/* ${DATADIR}/white
|
||||
#cp -R ${ROOTLS}/black/* ${DATADIR}/black
|
||||
|
||||
echo 'Changing ownership...'
|
||||
chown -R proxy:proxy ${DATADIR}/../
|
||||
find ${DATADIR} -type d | xargs chmod -R 2750
|
||||
|
||||
# This script performs a database rebuild for any blacklists listed in the default Squidguard config file `/etc/squid/squidGuard.conf'.
|
||||
#/usr/sbin/update-squidguard -c
|
||||
|
||||
# build domains + urls db, then change ownership to squid user
|
||||
echo 'Building database. Please wait...'
|
||||
su - proxy -c "$SQUIDGRD -b -C all"
|
||||
echo 'Database builds complete.'
|
||||
|
||||
$SQUID -k reconfigure
|
||||
echo 'Squid Proxy Server reconfigured'
|
||||
echo 'Cleaning space...'
|
||||
rm -Rf ${ROOTLS}/BL
|
||||
rm -f ${ROOTLS}/shallalist.tar.gz
|
||||
|
||||
echo "$(date +"%c") Blacklists updated ok." >> /var/log/blacklists.log
|
||||
|
||||
exit 0
|
Loading…
Reference in New Issue
Block a user