O primeiro problema é que a chamada de firefox --preferences
interrompe o script. O segundo problema é que o script é executado como root, não como o usuário logado. Terceiro: o Firefox precisa do ambiente dos usuários e do número de exibição.
Altere a parte "para cima" no script da seguinte forma:
case "$2" in
up|vpn-up)
if [ "$CONNECTION_UUID" = "6e7f613f-5563-48f7-892d-655e95c0b834" ]; then
export HOME=/home/user
export DISPLAY=:0
nohup sudo -u user firefox --preferences &
logger -s "FIREFOX SCRIPT EXECUTED"
fi
;;