Après avoir compris le problème de l'utilisation d'un mot de passe dans la ligne de commande , je dois trouver un moyen d'alimenter un programme avec un mot de passe sans que cela soit un problème (sans que le mot de passe soit enregistré quelque part).
J'ai un script bash qui installe automatiquement un serveur LAMP entier à partir de la source: Apache, FastCGI, PHP & MySQL. Ces installations nécessitent un mot de passe, en particulier MySQL.
Comment rendre le script entièrement automatisé sans révéler le mot de passe?
Edit (9 juin, 3:55 UTC):
J'invoque mysql avec un mot de passe sur la ligne de commande, via root:
root@dor-desktop:/home/dor# PASS=`cat /home/dor/tmpf/pass`
root@dor-desktop:/home/dor# mysql -u root -p"$PASS"
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
(PASS = "p4ssw0rd" dans notre cas)
Et j'exécute ps aux | grep mysql
via mon utilisateur habituel (dor), qui ne me montre pas le mot de passe !
(Une partie de) la ps
sortie est:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 3562 0.0 0.0 34156 2864 pts/0 S+ 05:53 0:00 mysql -u root -px xxxxxx
Comment est-ce possible?