#!/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 -