Skip to content

Instantly share code, notes, and snippets.

@hoangdh
Last active January 31, 2024 14:55
Show Gist options
  • Save hoangdh/7ce503b5f27701412eb9c2f7e81b8099 to your computer and use it in GitHub Desktop.
Save hoangdh/7ce503b5f27701412eb9c2f7e81b8099 to your computer and use it in GitHub Desktop.
Sync password hash from another system to Zimbra.
#!/bin/bash
FILE=$1
if [ -e $FILE ]
then
cat $FILE | while read -r l
do
text=`echo $l | sed "s/(//g; s/'//g; s/)//; s/;//g; s/)//g; s/,//g"`
USER=$(echo $text | awk '{print $1}')
PASS=$(echo $text | awk '{print $2}')
USERNAME=$(echo $USER | awk -F '@' '{print $1}')
#flag=$(echo "$PASS1" | grep -E '^\$')
#if [ -n "$flag" ]
#then
echo "zmprov ca $USER TemppasswordQAZXSW displayName $USERNAME"
echo "zmprov ma $USER userPassword '{crypt}$PASS'"
#fi
done
else
echo "$FILE: File not exist."
fi
@hoangdh
Copy link
Author

hoangdh commented Feb 23, 2019

File example: file1.txt

('[email protected]', '$1$^BfKH/7_$kxcRfBBe2rECgHzgaatOF/'),
('[email protected]'', '$1$a313953e$xDmohzW6Lf1ts6FazydEC0');

RUN:

bash sync-password-hash-zimbra.sh file1.txt

Output:

zmprov ca [email protected] TemppasswordQAZXSW displayName user1
zmprov ma [email protected] userPassword '{crypt}$1$^BfKH/7_$kxcRfBBe2rECgHzgaatOF/'
zmprov ca [email protected] TemppasswordQAZXSW displayName user2
zmprov ma [email protected] userPassword '{crypt}$1$a313953e$xDmohzW6Lf1ts6FazydEC0'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment