Compare commits
2 Commits
4628db3109
...
b010f17c9e
Author | SHA1 | Date | |
---|---|---|---|
b010f17c9e | |||
74e3f9c677 |
1
mail_on_ssh/.gitignore
vendored
Normal file
1
mail_on_ssh/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
mail_on_ssh.conf
|
8
mail_on_ssh/README.md
Normal file
8
mail_on_ssh/README.md
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# Installation
|
||||||
|
|
||||||
|
After setting up mail_on_ssh.conf, add the following configuration to `/etc/pam.d/sshd`
|
||||||
|
|
||||||
|
```
|
||||||
|
# Send an email if somebody logs in successfully over SSH
|
||||||
|
session optional pam_exec.so seteuid $PATH2SERVER_SCRIPTS/mail_on_ssh/mail_on_ssh.sh -c $PATH2SERVER_SCRIPTS/mail_on_ssh/mail_on_ssh.conf
|
||||||
|
```
|
4
mail_on_ssh/mail_on_ssh.conf.example
Normal file
4
mail_on_ssh/mail_on_ssh.conf.example
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#################################################################
|
||||||
|
# Config
|
||||||
|
#################################################################
|
||||||
|
RECEPIENT='' # Send email to this address
|
55
mail_on_ssh/mail_on_ssh.sh
Executable file
55
mail_on_ssh/mail_on_ssh.sh
Executable file
@ -0,0 +1,55 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#################################################################
|
||||||
|
# Check availability of software
|
||||||
|
#################################################################
|
||||||
|
function availability {
|
||||||
|
if [[ ! $(command -v $1) ]]; then
|
||||||
|
echo Error: '$1' is not available but required. Please install it!
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
availability mail
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Get arguments
|
||||||
|
#################################################################
|
||||||
|
missingArg()
|
||||||
|
{
|
||||||
|
echo "Error: Please define the configuration to be used!"
|
||||||
|
echo " Usage: $0 -c <configuration_file>"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
while getopts "c:" opt
|
||||||
|
do
|
||||||
|
case "$opt" in
|
||||||
|
c ) CONFIG_FILE="$OPTARG" ;;
|
||||||
|
? ) missingArg ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# Check if config was empty
|
||||||
|
if [ -z "$CONFIG_FILE" ]
|
||||||
|
then
|
||||||
|
missingArg
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if config file exists
|
||||||
|
if [ ! -f $CONFIG_FILE ]
|
||||||
|
then
|
||||||
|
echo "$CONFIG_FILE does not exist!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
source $CONFIG_FILE
|
||||||
|
|
||||||
|
#################################################################
|
||||||
|
# Send email
|
||||||
|
#################################################################
|
||||||
|
if [ "$PAM_TYPE" != "close_session" ]; then
|
||||||
|
host="`hostname`"
|
||||||
|
subject="SSH Login: $PAM_USER from $PAM_RHOST on $host"
|
||||||
|
message=$(env)
|
||||||
|
echo "$message" | mail -s "$subject" "$RECEPIENT"
|
||||||
|
fi
|
13
plesk_dump_mysql_dbs/plesk_dump_mysql_dbs.sh
Executable file
13
plesk_dump_mysql_dbs/plesk_dump_mysql_dbs.sh
Executable file
@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Source of script:
|
||||||
|
# https://support.plesk.com/hc/en-us/articles/12377216464279-How-to-back-up-all-MySQL-databases-via-a-command-line-interface-in-Plesk-for-Linux
|
||||||
|
|
||||||
|
# Create a directory where backup files will be stored
|
||||||
|
mkdir -p /root/mysql_dumps_all
|
||||||
|
|
||||||
|
# Get a list of all databases
|
||||||
|
cd /root && /usr/sbin/plesk db -e "show databases" | grep -v -E "^Database|information_schema|performance_schema|phpmyadmin" > dblist.txt
|
||||||
|
|
||||||
|
# Create a dump of each MySQL database
|
||||||
|
cat /root/dblist.txt | while read i; do /usr/sbin/plesk db dump "$i" > /root/mysql_dumps_all/"$i".sql; done
|
Loading…
Reference in New Issue
Block a user