36 lines
1.2 KiB
Bash
36 lines
1.2 KiB
Bash
#!/bin/bash
|
|
set -u
|
|
DOMAIN=$1
|
|
MAILUSER=$2
|
|
PASS=$3
|
|
FROM=$4
|
|
if [[ -z "$DOMAIN" ]]; then
|
|
echo "Must provide Domain as 1st argument" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z "$MAILUSER" ]]; then
|
|
echo "Must provide Mail User (user@domain) as 2nd argument" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z "$PASS" ]]; then
|
|
echo "Must provide Password as 3rd argument" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z "$FROM" ]]; then
|
|
echo "Must provide From Name as 4th argument" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
apt-get update && apt-get -y install ssmtp
|
|
sed -i -e 's/=mail$/=mail.neshweb.net:587/' /etc/ssmtp/ssmtp.conf # replace 'mail' mailhub with actual mailserver
|
|
sed -i -e 's/hostname=.*/hostname='"$DOMAIN"'/' /etc/ssmtp/ssmtp.conf # replace hostname with actual domain
|
|
sed -i -e 's/#FromLine/FromLine/' /etc/ssmtp/ssmtp.conf
|
|
printf "useSTARTTLS=YES\nAuthUser=$MAILUSER\nAuthPass=$PASS\n" >> /etc/ssmtp/ssmtp.conf
|
|
printf "root:noreply@$DOMAIN:mail.neshweb.net:587\n" >> /etc/ssmtp/revaliases # alias 'root' sender to actual noreply sender to be used
|
|
wget "https://forgejo.neshweb.net/Neshura/disk-warn-script/raw/branch/main/disk-warn.sh" -P /root -O disk-warn.sh
|
|
chmod +x /root/disk-warn.sh
|
|
sed -i -e 's/FROMNAME/'"$FROM"'/' /root/disk-warn.sh
|
|
(crontab -l 2>/dev/null; echo "0 1 * * * /root/disk-warn.sh") | crontab -
|