docker-mailserver/target/bin/updatemailuser

30 lines
616 B
Plaintext
Raw Normal View History

#!/bin/bash
DATABASE=/tmp/docker-mailserver/postfix-accounts.cf
function usage {
echo 'Usage: updatemailuser <user@domain.tld> [password]'
exit 1
}
if [ ! -z "$1" ]; then
USER=$1
if [ -e "$DATABASE" ] && [ -z "$(grep $USER -i $DATABASE)" ]; then
echo "User doesn't exist"
exit 1
fi
if [ ! -z "$2" ]; then
PASS="$2"
else
read -s -p "Enter Password: " PASS
if [ -z "$PASS" ]; then
echo "Password can't be empty"
exit 1
fi
fi
ENTRY=$(echo "$USER|$(doveadm pw -s SHA512-CRYPT -u "$USER" -p "$PASS")")
sed -i.bak "s%^$USER.*%$ENTRY%g" $DATABASE
else
usage
fi