diff --git a/.env.sample b/.env.sample
index 952bd557879e486bec1fe304101cf0e1b9dc2d2d..c42984e28c61cdab207aba1e67ef4edcb3faf50d 100644
--- a/.env.sample
+++ b/.env.sample
@@ -4,6 +4,7 @@ COMPOSE_FILE=docker-compose.yml:ports.yml
 
 PASS=MON_SUPER_MOT_DE_PASSE
 NAME=kasmVNC
+VNC_USER=kasm
 HOST=kasmVNC.tetras-lab.io
 PORT=6901
 
diff --git a/docker-compose.yml b/docker-compose.yml
index 2be139ddc09f89f23797d476f3611b05d37e6937..6529a4c19620b58f7a5ec8e0156e63cefda3b65b 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -6,19 +6,17 @@ services:
       args:
         - SPYDER=${SPYDER}
         - ANACONDA=${ANACONDA}
-        - KASM_USER=${USER}
+        - KASM_USER=${VNC_USER}
     image: "kasmvnc-ubuntu-noble:spyder-${SPYDER}_anaconda-${ANACONDA}"
     container_name: KasmVNC-ubuntu
     volumes:
       - homedir:/home/:rw
-      - etc_shadow:/opt/shadow
     environment:
       - VNC_PW=${PASS}
       - SPYDER=${SPYDER}
       - ANACONDA=${ANACONDA}
-      - KASM_USER=${USER}
+      - KASM_USER=${VNC_USER}
 
 
 volumes:
   homedir:
-  etc_shadow:
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 055cbe08d31dc987f413eb51ce3814a4f0fe5646..eac0215cfa819ea78cee9bd7d6c9e98c3a0d22aa 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -19,7 +19,6 @@ RUN apt-get update && \
     apt-get -y dist-upgrade && \
     apt-get install -y \
                     firefox \
-                    gnome-system-tools \
                     inotify-tools \
                     language-pack-fr \
                     language-pack-fr-base \
@@ -28,7 +27,8 @@ RUN apt-get update && \
     locale-gen --purge fr_FR.UTF-8 en_US.UTF-8
 RUN mkdir /install
 
-RUN for f in /dockerstartup/*.sh; do sed -i -e "s/kasm_user/$KASM_USER/g" $f; done
+RUN usermod -l $KASM_USER kasm-user; \
+     for f in /dockerstartup/*.sh; do sed -i -e "s/kasm_user/$KASM_USER/g" $f; done
 
 WORKDIR /install
 # === Install Spyder === #
@@ -47,7 +47,7 @@ RUN if [ "$ANACONDA" = true ] ; then \
 RUN rm -rf $HOME/.cache
 
 COPY custom_startup.sh $STARTUPDIR/custom_startup.sh
-COPY shadow_monitor.sh /
+COPY change_password.sh /
 
 ######### End Customizations ###########
 
diff --git a/docker/change_password.sh b/docker/change_password.sh
new file mode 100755
index 0000000000000000000000000000000000000000..cff6ac1aa2af819d693dca273caa9cf066d6e2c5
--- /dev/null
+++ b/docker/change_password.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+title="Changement du mot de passe"
+password=$(zenity --title="$title" --question="Veuillez entrer votre mot de passe" --entry)
+confirm=$(zenity --title="$title" --question="Veuillez entrer votre mot de passe" --entry)
+icon="error"
+if [ "$password" != "$confirm" ]; then
+    message=$(echo -e "$password\n$password" | vncpasswd -u $KASM_USER $HOME/.vnc/passwd)
+    if [ $? -eq 0 ]; then
+        message="Mot de passe changé"
+        icon="info"
+    fi
+else
+    message="La confirmation du mot de passe n'est pas identique au mot de passe"
+fi
+notify-send -i $icon "$message"
diff --git a/docker/custom_startup.sh b/docker/custom_startup.sh
index 2c84e090bd779612e7cbc96f54ea1a439e85116e..6225f467900c3ca4b33a5c80d347c21225cb11e1 100755
--- a/docker/custom_startup.sh
+++ b/docker/custom_startup.sh
@@ -7,10 +7,10 @@ sed -i -e "s@kasm-default-profile@$KASM_USER@g" ~/anaconda3/etc/profile.d/conda.
 mkdir -p $VNC_HOME/Desktop
 cat <<EOF > $VNC_HOME/Desktop/users.desktop
 [Desktop Entry]
-Type=Link
+Type=Application
 Name=Change password
 Icon=config-users
-URL=/usr/share/applications/users.desktop
+Exec=/change_password.sh
 terminal=true
 EOF
 
@@ -35,12 +35,4 @@ Icon=$VNC_HOME/anaconda3/share/icons/spyder.png
 Exec=$(which spyder)
 eof
 fi
-
-if [ -f "/opt/shadow/shadow" ]
-then
-    echo "Copying shadow file"
-    cp /opt/shadow/shadow /etc/shadow
-    sync
-fi
-
-/shadow_monitor.sh
+chmod +x $VNC_HOME/Desktop/*.desktop
diff --git a/docker/shadow_monitor.sh b/docker/shadow_monitor.sh
deleted file mode 100755
index 4f3c25233bd677a301a87694ca239d21541e5674..0000000000000000000000000000000000000000
--- a/docker/shadow_monitor.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-sleep 10
-
-while true; do
-    modif=$(inotifywait --event move /etc)
-    echo "Modif : '$modif'"
-    if [ ! -z "$(echo $modif | grep 'MOVED_FROM nshadow')" ]; then
-        echo "Shadow file has changed"
-        sync
-        cp /etc/shadow /opt/shadow/shadow
-    fi
-done
-