Bash création de groupe user et utilisateur

Fermé
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 - Modifié par xunil2003 le 11/09/2012 à 19:53
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 - 15 sept. 2012 à 17:39
Bonjour,

Sous linux pour créer depuis le terminal un utilisateur avec l'UID 501et créer un groupe privé a l'utilisateur avec l'Id du groupe 501
avec l'attribue du shell par défaut,
avec expiration une date du compte utilisateur le 13/09/12
et que le compte soit compatible avec kde et gnome

Quel devra être la commande, je finis par me mélanger les pinceaux et avoir un doute ?
# groupadd toto -g 501        
# useradd toto -u 501 -g 501 -G toto -e 09/13/12 -s /bin/bash -m -k rep-skel -c toto       
#


KDE me dit que le compte est verrouillé ????

Es correct ?
Merci.


A voir également:

10 réponses

mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 14 novembre 2024 7 799
11 sept. 2012 à 20:01
La notion de compte compatible kde ou gnome n'a pas vraiment de sens, useradd ne fait que référencer le compte dans /etc/passwd et créer le home directory (/home/toto par exemple). Quand on lance une application (kde, gnome, ou même n'importe laquelle) celle-ci est susceptible de stocker des informations dans le home, et donc garantir que l'utilisateur peut écrire dans son /home est en soit suffisant.

Pour la commande en elle-même :

man useradd


Tu verras que la syntaxe de la date est incorrecte, ainsi que pour -k. Le reste a l'air correct. Maintenant il faut juste vérifier que l'utilisateur toto n'existe pas déjà, et vérifier que les UID 501 et GID 501 sont pas déjà utilisés.

Bonne chance
0
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 14
Modifié par xunil2003 le 12/09/2012 à 02:18
Bonsoir,

J'ai regardé ce tuto
http://ww2.ac-creteil.fr/reseaux/systemes/linux/comptes-utilisateurs.html

Pour le format date :
format date (MM/JJ/AA)donc pour que le compte expire le 13/09/12 je marque 09/13/12

pour -k il est dit :
La recopie du répertoire /etc/skel est très important pour l'administrateur, car il lui permet de configurer de façon uniforme les sessions de travail des utilisateurs.
C'est ainsi que tous les utilisateurs qui passe en mode graphique KDE hérite du même bureau.

il faut juste vérifier que l'utilisateur toto n'existe pas déjà, et vérifier que les UID 501 et GID 501 sont pas déjà utilisés.
mais groupadd verifie automatiquement tout comme useradd.

Exemple
[root@localhost laurent]# groupadd toto -g 501   
groupadd : l'identifiant de groupe (GID) « 501 » existe déjà   
[root@localhost laurent]#   

[root@localhost laurent]# groupadd toto   
groupadd : le groupe « toto » existe déjà   
[root@localhost laurent]#   

[root@localhost laurent]# useradd toto -u 501 -g 501 -G toto -e 09/13/12 -s /bin/bash -m -k rep-skel -c toto   
useradd : l'identifiant d'utilisateur (UID) 501 n'est pas unique   
[root@localhost laurent]#


man useradd dit :
-e, --expiredate DATE_FIN_VALIDIT
Date à laquelle le compte utilisateur sera désactivé. La date est
indiquée dans le format AAAA-MM-JJ.

If not specified, useradd will use the default expiry date
specified by the EXPIRE variable in /etc/default/useradd, or an
empty string (no expiry) by default.

-k, --skelRP_SQUELETTE
The skeleton directory, which contains files and directories to be
copied in the users home directory, when the home directory is
created by useradd.

Cette option nest valable que si loption -m (ou --create-home) est
utilisée.

If this option is not set, the skeleton directory is defined by the
SKEL variable in /etc/default/useradd or, by default, /etc/skel

Merci.
0
mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 14 novembre 2024 7 799
12 sept. 2012 à 10:05
Salut Laurent,

Si tu lis le man de groupadd tu verras que le format de la date est :

       -e, --expiredate DATE_FIN_VALIDITÉ
           Date à laquelle le compte utilisateur sera désactivé. La date est indiquée dans le format AAAA-MM-JJ.

           Si non précisé, useradd utilisera la date d'expiration par défaut précisée par la variable EXPIRE dans /etc/default/useradd ou une chaîne
           vide (pas d'expiration) par défaut.


Après, peut-être que plusieurs formats sont supportés ou que celui-ci diffère en fonction des locales, de la distribution je n'en sais rien etc... Je ne fais que reporter que ce qui est écrit dans la page de man :-)

Pour l'option -k on te dit de passer en paramètre un répertoire skelette, donc par exemple /etc/skel et non rep-skel comme tu l'as écrit dans ta première commande, c'est pour ça que j'ai réagi sur ce paramètre dans mon premier messages. De plus, si tu regardes le man, tu verras en plus que ce n'est pas la peine de passer -k /etc/skel vu que c'est le comportement par défaut.

Pour l'histoire de l'UID et du GID, comme tu le dis fort justement, useradd et groupadd échoueront si ces identifiants sont déjà utilisés, c'était juste une précision que je voulais apporter. En temps normal on évite de passer l'UID et le GID en paramètre. De plus en général on utilise des UID et GID supérieur à 1000 pour des utilisateurs, mais bon, là il faut évidemment suivre les consignes de ton exercice.

Bonne chance
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
12 sept. 2012 à 10:17
Salut mamie,

De plus en général on utilise des UID et GID supérieur à 1000 pour des utilisateurs, mais bon, là il faut évidemment suivre les consignes de ton exercice.
Sur Debian (et dérivés) et autres distribs, à part celles basées sur RedHat, comme Mandriva ( et/ou Mageia), ou l'UID et GID débutent à 500 ;-))
0
mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 14 novembre 2024 7 799
13 sept. 2012 à 09:54
Ha ok zipe31, merci pour la précision.
0
Bonjour

Oui c'est un exercice et merci pour votre aide à tous. Oui il est vrai que selon la distribution l'Uid commence à partir de 500 pour Mageia et 1000 pour Debian.
J'ai plusieurs distribes pour les exercices, y compris sur Virtualbox.

J'ai donc essayer comme ceci, (j'ai retiré le -k) mais c'est pareil le compte est toujours verrouillé , Kde ne peut pas démarrer le compte utilisateur

[root@localhost laurent]# groupadd toto -g 501   
[root@localhost laurent]# useradd toto -u 501 -g 501 -G toto -e 2012-09-16 -s /bin/bash -m  -c toto   
[root@localhost laurent]#   


De file en aiguille je me suis rendu compte qu'il n'y avait pas de mot de passe

[root@localhost laurent]# groupadd toto -g 501   
[root@localhost laurent]# useradd toto -u 501 -g 501 -G toto -e 2012-09-16 -s /bin/bash -p toto -m  -c toto   
[root@localhost laurent]#   


Là le compte fonctionne, le -p c'est pour indiquer le mot de passe

Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33357 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 14 novembre 2024 7 799
15 sept. 2012 à 02:21
J'en déduis que ton problème est résolu ? Si oui bascule le sujet en tant que tel (voir lien au niveau de ton premier message). Sinon indique-nous ce qu'il reste à voir.
0
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 14
Modifié par xunil2003 le 15/09/2012 à 14:03
Bonjour,

En faitequand je me suis connecté sur l'utilisateur toto avec KDE, KDE me répondé : Echec de la connection

En super-utilisateur j'ai fait
passwd toto

puis j'ai undiquer le nouveau mot de passe
Là j'ai pu me connecter sur Kde sans problème sur le compte de toto.

La question est quand on fait ceci, il n'est pas possible d'intégrer le mot de passe de l'utilisateur
[root@localhost laurent]# groupadd toto -g 501     
[root@localhost laurent]# useradd toto -u 501 -g 501 -G toto -e 2012-09-16 -s /bin/bash -p toto -m  -c toto     
[root@localhost laurent]#

ensuite il faut immédiatement donner le mot de passe sinon le compte est inaccessible
# passwd toto


La commande passwd  
Elle est chargée du cryptage du mot de passe dans /etc/shadow  
Syntaxe : passwd [option] nom-login  

    --stdin, la commande abandonne son caractère interactif habituel et examine son entrée standard pour s'en servir comme mot de passe.  
    Très utile dans un script : echo mot | passwd --stdin (attention tout caractère est significatif, y compris les " ")  
    -d , pour supprimer le mot de passe, l'utilisateur pourra se connecter sans !  
    -l , pour verrouiller le compte et empêcher sa connexion.  
    -u , pour déverrouiller. 


Il n'est pas possible d'indiquer directement le mot de passe dans useradd à la création du compte .

Merci
0
Utilisateur anonyme
15 sept. 2012 à 14:24
salut,

man useradd
-p, --password PASSWORD
The encrypted password, as returned by crypt(3).[...]

man -k crypt
cbc_crypt (3) - fast DES encryption
crypt (3) - password and data encryption
crypt_r (3) - password and data encryption
des_crypt (3) - fast DES encryption
des_modes (7ssl) - the variants of DES and other crypto algorithms of OpenSSL
des_setparity (3) - fast DES encryption
ecb_crypt (3) - fast DES encryption
encrypt (3) - encrypt 64-bit messages
encrypt_r (3) - encrypt 64-bit messages
gpg (1) - OpenPGP encryption and signing tool
gpg-zip (1) - encrypt or sign files into an archive
key_decryptsession (3) - interfaces to rpc keyserver daemon
key_encryptsession (3) - interfaces to rpc keyserver daemon
memfrob (3) - frobnicate (encrypt) a memory area
mkpasswd (1) - Overfeatured front end to crypt(3)
passwd2des (3) - RFS password encryption
seahorse (1) - Encryption Key Manager
seahorse-preferences (1) - View and set encryption preferences
seahorse-tool (1) - PGP/GnuPG file encryption for the GNOME Desktop
setkey (3) - encrypt 64-bit messages
setkey_r (3) - encrypt 64-bit messages
xcrypt (3) - RFS password encryption
xdecrypt (3) - RFS password encryption
xencrypt (3) - RFS password encryption

man mkpasswd
!
0
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 14
15 sept. 2012 à 14:37
Bonjour,

Pourtant je l'ai bien indiqué -p toto
[root@localhost laurent]# useradd toto -u 501 -g 501 -G toto -e 2012-09-16 -s /bin/bash -p toto -m  -c toto     
[root@localhost laurent]#

c'est ce que je n'ai pas compris

Configuration: Linux / Firefox 10.0.7
0
Utilisateur anonyme
15 sept. 2012 à 15:10
username="toto"
userpwd=$(mkpasswd -m MD5 "$username")
useradd toto -u 501 -g 501 -G toto -e 2012-09-16 -s /bin/bash -p "$userpwd" -m  -c toto
0
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 14
Modifié par xunil2003 le 15/09/2012 à 17:52
Bonjour,

Vous voulez dire que par défault l'option "-p toto " de useradd ne crypt pas le mot de passe, si je comprends bien.

Ensuite j'ai décrit l'utilisateur comme l'exercice,
[laurent@localhost ~]$ su toto  
Mot de passe :  
[toto@localhost laurent]$ chfn  
Modification des renseignements finger pour toto.  
Mot de passe :  
Name [toto]: nom complet  
Office []: son bureau  
Office Phone []: telephone bureau  
Home Phone []: telephone perso  

Finger information changed.  
[toto@localhost laurent]$


Pour avoir les informations de l'utilisateur y a-t-il une commande spécifique ou faut il faire un truc du genre, car il n'en parle pas :
[toto@localhost laurent]$ cat -n /etc/passwd | grep toto  
    35  toto:x:501:501:nom complet,son bureau,telephone bureau,telephone perso:/home/toto:/bin/bash  
[toto@localhost laurent]$


Merci.
0