Page Web Création Users - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 12-07-2012 à 14:41:36
HTML est simplement un langage de présentation interprété par les browsers web. Il te faut créer un formulaire (ça tu l'as fait) et le lier avec un mécanisme situé sur le serveur.
Cela peut être un
- un script cgi
- un script php
- du jsp
- du perl
Ton formulaire envoie les données au script côté serveur qui en fera ce qu'il voudra (création de user, interaction avec une base de donnée, etc...)
http://en.wikipedia.org/wiki/Server-side_scripting
Marsh Posté le 12-07-2012 à 14:43:16
Après recréer cela de a à z, c'est lourd, propice à de gros problèmes (bug, faille de sécurité, maintenance, etc...) Il doit exister des solutions clés en mains permettant la création/gestion de users via une interface web.
Marsh Posté le 12-07-2012 à 15:10:54
Merci beaucoup o'gure.
Il s'agit d'un projet purement scolaire, sinon en effet d'autres solutions auraient été préconisées .
Je peux laisser mon code HTML comme cela et y intégrer un PHP pour executer le .sh ?
Merci
Marsh Posté le 12-07-2012 à 15:15:57
Je dirais que dans une première étape, tu devrais t'informer sur comment fonctionne php...
http://www.siteduzero.com/tutoriel [...] aires.html
Marsh Posté le 12-07-2012 à 18:22:21
En plus pour exécuter des commandes nécessitant des droits root, il faut faire ça proprement :
http://blog.khemael.net/2010/08/26 [...] -en-php/2/
Marsh Posté le 15-07-2012 à 22:15:37
sur ce sujet fort intéressant.
Une fois avancé, je suis preneur car j'avais justement une demande "équivalente" pour de la gestion de quota en graphique, mais s'il ne s'agit que d'avoir en plus du serveur de fichiers "de base" un bête serveur web (nginx/apache/...) avec du PHP et de quoi consulter/remplir les quotas, ça m'intéresse.
Par contre tes utilisateurs, ils sont stockés où ?
Du LDAP ? -> phpldapadmin est plus adapté et déjà opérationnel sans réinventer la roue
Du vrai utilisateur local sur la machine ? -> là il faut voir en plus les droits à donner, notamment si tu ne veux pas qu'ils puissent s'y connecter directement mais qu'ils puissent s'y logguer pour un accès autre (typiquement du serveur de fichiers)
Marsh Posté le 17-07-2012 à 09:21:48
Bonjour à tous et merci pour vos conseils.
Voici en j'en suis (malheureusement cela ne fonctionne pas encore...). 3 fichiers :
users.html :
Code :
|
fichierphp.php :
Code :
|
adduser.sh :
Code :
|
Les manipulations sont ok pour l'exec en root !
Merci par avance et bonne journée
Marsh Posté le 17-07-2012 à 14:43:06
Il faut que tu modifies ton script bash adduser.sh par l'ajout d'une utilisation d'arguments.
Regardes ici comment faire.
Une fois fait, il te faudrait modifier ton script d'appel fichierphp.php pour insérer les arguments username et password à l'exec de ton script bash (voir ici un exemple)
Enfin et pour finir, tu peux faire plus propre en modifiant ton users.html en le transformant directement en PHP, et d'insérer suivant la méthode $_GET l'appel à ton script d'exec.
Et si je puis me permettre, à l'avenir utilises soit la méthode fixe (bouton Fixe) ou script (C/C++) plutôt que la mise en spoiler, c'est plus agréable à lire
edit : et puis tant que j'y pense, tu as pensé à faire un truc "plus généraliste" avec usermod, userdel, passwd ?
Marsh Posté le 12-07-2012 à 14:21:27
Bonjour à tous ,
Dans le cadre d'un projet assez général (qui comprend postfix, etc, mais cela n'est pas vraiment important pour ma demande), je dois réaliser une page web sur laquelle via des champs et un bouton je pourrai créer des utilisateurs linux avec leurs passwords.
Pour l'instant j'ai deux choses :
- un .sh qui me permet de créer un user avec un mdp
if [ $(id -u) -eq 0 ]; then
read -p "Entrer le nom de l'utilisateur : " username
read -s -p "Entrer le mot de passe de l'utilisateur : " password
egrep "^$username" /etc/passwd >/dev/null
if [ $? -eq 0 ]; then
echo "$username existe deja !"
exit 1
else
pass=$(perl -e 'print crypt($ARGV[0], "password" )' $password)
useradd -m -p $pass $username
[ $? -eq 0 ] && echo "Le compte est cree !" || echo "Echec !"
fi
else
echo "Seul le root peut ajouter un utilisateur"
exit 2
fi
- une page html qui me permet d'avoir des champs dans lesquels entrer le nom de l'utilisateur et son password + un bouton "ajouter l'utilisateur".
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Gestion des utilisateurs</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<div id="corps">
<h1>Gestion des utilisateurs</h1>
<p>
Bienvenue !<br />
Il sera possible d'ajouter et de supprimer des utilisateurs depuis cette page !<br/>
<br/>
Nom de l'utilisateur
<input type="text" id="username">
Mot de passe
<input type="password" id="password">
<button id="adduser">Ajouter utilisateur</button>
</p>
</div>
</body>
</html>
Je suis bloquée car je ne sais pas vraiment comment "lier" ces deux éléments. Pouvez-vous m'aider?
Merci beaucoup par avance !
PS : je suis vraiment débutante dans le code ^^
Message édité par thany le 12-07-2012 à 14:23:06