diff --git a/src/freedombone-app-irc b/src/freedombone-app-irc
index 1b6a1725f27d35cb88261e747e55518fc10af685..73cc64c033a1651335bbfefd0fb9d7021f4e680f 100755
--- a/src/freedombone-app-irc
+++ b/src/freedombone-app-irc
@@ -193,6 +193,13 @@ function add_user_irc_bouncer {
     ZNC_SALT="$(dd if=/dev/urandom bs=16c count=1 | md5sum | awk -F ' ' '{print $1}' | cut -c1-20)"
     new_user_hash=$(echo -n "${new_user_password}${ZNC_SALT}" | sha256sum | awk -F ' ' '{print $1}')
 
+    if grep -q "<User ${new_username}>" /home/znc/.znc/configs/znc.conf; then
+        # user already exists
+        sed -i "s|Hash = .*|Hash = ${new_user_hash}|g" /home/znc/.znc/configs/znc.conf
+        sed -i "s|Salt = .*|Salt = ${ZNC_SALT}|g" /home/znc/.znc/configs/znc.conf
+        return
+    fi
+
     echo "<User ${new_username}>" >> /home/znc/.znc/configs/znc.conf
     echo "    Admin      = ${is_admin}" >> /home/znc/.znc/configs/znc.conf
     echo "    AltNick = ${new_username}_" >> /home/znc/.znc/configs/znc.conf
@@ -300,7 +307,7 @@ function irc_set_global_password {
     dialog --title $"IRC Password" \
            --clear \
            --backtitle $"Freedombone Control Panel" \
-           --passwordbox $"Password for all IRC users, or press Enter for no password" 10 50 2> $data
+           --passwordbox $"Password for all IRC users, or press Enter for no password" 10 60 2> $data
     sel=$?
     case $sel in
         0)