Script Shell
Résolu
dun85
Messages postés
16
Statut
Membre
-
matt -
matt -
Bonjour a tous, actuellement en formation, je me retrouve sur un exercices ou je rame
Je dois donner le privilège de droits « Permission non accordée » avec la commande
Auriez-vous des idées merci.
Je dois donner le privilège de droits « Permission non accordée » avec la commande
sudodu Bash (1 Shell) à l’utilisateur
robby, puis la « Permission accordée » avec le mot de passe « adminrobby » (utilisez la commande
lspour afficher l’ensemble des fichiers contenus dans le répertoire
/root).
Auriez-vous des idées merci.
12 réponses
-
Bonjour,
Il te faut utiliser une commande pour corriger les droits associé au fichier concerné. Voirchmod
,chown
,chgrp
. Pour voir comment utiliser une commande, utilise la commandeman
(e.g.man chmod
) un cours sur les droits sous Linux, par exemple cette page.
Bonne chance -
Merci mamiemando pour cette réponse
Voila à quoi ressemble l'exercice:
1) Sous Linux, créez un utilisateurrobby
dans le grouperobot
en vous aidant des éléments suivants :- la commande
useradd
;-
-g
: édition de /etc/group ; -
-m
: option qui crée le répertoire personnel par défaut ; - option
-u 1010
pour l’UID numérique de l’utilisateur ;
-
- les commandes
ls
etlp
pour afficher le répertoire et imprimer ; - l’arborescence d’un système de fichiers sous Linux.
2) Sous Linux, donnez la possibilité au compterobby
de générer un mot de passe avec la commandegrep
, puis ajoutez ce mot de passe manuellement avecpasswd
.
3) Donnez le privilège de droits « Permission non accordée » avec la commandesudo
du Bash (1 Shell) à l’utilisateurrobby
, puis la « Permission accordée » avec le mot de passe « adminrobby » (utilisez la commandels
pour afficher l’ensemble des fichiers contenus dans le répertoire/root
).
pour la partie 1, je pense auseradd -u 1010 -g /etc/group/robot -s /bin/bash -m robby
- la commande
-
Bonjour,
Plusieurs recommandations :- Pourquoi ne pas installer Linux, soit via WSL si tu es sous windows 10, soit via virtualbox si tu as un windows antérieur et tester ?
- Pense au
man
. Chercher des réponses sur des sites comme stackoverflow peut aussi t'aider.
Pour la question (1) : c'est presque ça, mais incorrect (voir option-g
). -
Bonjour,
J'utilise Ubuntu 20.04
Pour l'option [-g groupe] définit le groupe par défaut. [-g GID groupe] pour définir l'id du groupe par défaut.
/# useradd -u 1010 -g robot -s /bin/bash -m robby
useradd : le groupe « robot » n'existe pas
/# groupadd robot
/# useradd -u 1010 -g robot -s /bin/bash -m robby
/# id robby
uid=1010(robby) gid=1001(robot) groupes=1001(robot)
/# ls /home
robby -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bravo à toi :-) Il ne te reste plus qu'à finir ton exercice sur les permissions associées au dossier /root. Voir
man chmod.
etman chown
.
Bonne chance -
Merci je continu mes recherches
pour la partie 2 la commande #grep est utilisée pour des recherche si je me trompe pas, alors pour générer le mot de passe j'ai :strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 6 | tr -d '\n'
qui contientgrep
et génére un mot de passse aléatoire.
ou:grep "^[[:alpha:]]\{5,8\}$" "${1-/usr/share/dict/words}" | sort --random-source=/dev/urandom -R | head -1
mais la mot de passe est non aléatoire (mot du dictionnaire).-
2) Sous Linux, donnez la possibilité au compte robby de générer un mot de passe avec la commande grep, puis ajoutez ce mot de passe manuellement avec passwd.
Personnellement, je n'ai pas compris pourquoigrep
était nécessaire. J'ai l'impression que l'énoncé est incomplet.grep
permet de filtrer un ensemble de lignes de sorte à ne garder que celles qui se conforment à l'expression rationnelle passée en paramètre àgrep
. Pour quegrep
serve à quelque chose, il faudrait donc préciser quelle(s) contrainte(s) doivent être respectée par le mot de passe et réfléchir à l'expression rationnelle associée.
Dans la première commande que tu proposes, tu sembles vouloir un code aléatoire contenant 6 caractères alphanumériques mais je n'ai pas vu où c'était indiqué dans l'énoncé.
La seconde commande que tu proposes n'est pas recommandée en ce sens qu'un mot de passe basé sur un mot du dictionnaire est un mot de passe faible (= facile à pirater).
Bonne chance
-
-
Je suis partis du principe de générer un mot de passe "un générateur" avec "grep" dedans puis de d'ajouter ce mot de passe manuellement avec passwd robby
non rien ne me dit un code aléatoire contenant 6 caractères alphanumériques
ou j’interprète mal "générer un mot de passe"
Merci pour ces réponses-
Disons que ton interprétation est la seule qui me paraît raisonnable, mais l'énoncé est mal posé et ça mériterait de poser une question à ton enseignant. De manière générale je trouve l'exercice assez mal formulé mais ça n'engage que moi :-)
- Je suis une formation a distance. Ce n'est pas la première fois que je leur signale des problèmes dans les énoncés, mais à chaque fois, ça prends du temps pour avoir des réponses. Il y a plus de 4 mois que j'ai signalé qu'un schéma n'était pas correct. Ils doivent le modifier mais toujours rien de fait.
- ne serait ce pas le schéma du devoir réseau a tout hasard ? Je suis la meme formation et elle me rend fou entre les incohérence des devoirs , le manque d'explications des cours etc
Le prof ne semble pas maitriser ses sujets. Je suis actuellement sur ce devoir AD et script et je deviens fou car beaucoup de chose n'ont pas de sens (comme cette commande grep) Je perd un temps monstre sur mes devoirs car beaucoup de chose pas du tout logique pour moi. Et quand tu poses une questions on te répond à coté.
-
-
Pour la partie 3
Permission non accordée avec la commande sudo du Bash (1 Shell)
que l'utilisateur robby doit s'identifier comme#sudo
???#sudo bash
???
Permission accordée avec le mot de passe adminrobby
Si il faut juste modifier les droits sur /root ca c'est ok-
Permission non accordée avec la commande sudo du Bash (1 Shell) que l'utilisateur robby doit s'identifier comme #sudo ??? #sudo bash ???
La commandesudo
permet d'envelopper une commande shell et de l'exécuter avec des droits root, pour peu que l'utilisateur courant soit sudoer (pour cette commande). Cette politique est définie dans/etc/sudoers
qui spécifie notamment que tout membre du groupesudo
(voir résultat de la commandegroups
) peut lancer n'importe quelle commande avec des droits root au travers desudo
. Si ton utilisateur n'appartient pas à ce groupe, il faudra l'y ajouter (e.g. en tant que root avecusermod -a -G sudo toto
).
Exemple :sudo cat /etc/shadow
Bref, ce qu'ils essaient de dire (mais mal) c'est qu'il faut corriger les droits, et que ceci nécessitera des droits root (et donc ils t'aiguillent verssudo
).
Permission accordée avec le mot de passe adminrobby
Ici aussi, l'énoncé est peu clair, qui pour moi, ne veut rien dire.
Une première interprétation est que l'utilisateur (et non le mot de passe)adminrobby
doit pouvoir accéder à/root
mais pasrobby
, et ensuite, tester avec la commandels
.
Une interprétation possible de l'exercice est que sirobby
est sudoer, à l'aide desudo
et de son mot de passeadminrobby
, il doit peut lister le contenu de/root
. Et comme root a tous les droits, pas besoin de changer les droits.
Bonne chance- Voici ce qu j'ai fait :
dundee@PC:~$ su robby
mot de passe : l7D9I3XA
robby@PC:/home/dundee$ cd /
robby@PC:/$ ls /root
ls: impossible d'ouvrir le répertoire '/root': Permission non accordée
robby@PC:/$ sudo su
[sudo] Mot de passe de robby : l7D9I3XA
robby n'apparaît pas dans le fichier sudoers. Cet incident sera signalé.
robby@PC:/$ su dundee
mot de passe : xxxxxxxxxx
dundee@PC:/$ sudo su
[sudo] Mot de passe de dundee : xxxxxxxxxx
root@PC:/# usermod -aG sudo robby
root@PC:/# passwd robby
nouveau mot de passe : adminrobby
retapez le nouveau mot de passe : adminrobby
passwd : le mot de passe a été mis à jour avec succès
root@PC:/# su robby
robby@PC:/$ sudo su
[sudo] Mot de passe de robby : adminrobby
root@PC:/# ls /root
snap
-
-
Bonjour a tous,
Aprés plusieurs jours d'attente, j'ai enfin une réponse a mon message pour leurs signaler que #grep n'a pas de sens voici la réponse:
En effet, l'exercice est conçu étrangement parce que GREP est une commande de filtrage et pas très appropriée dans le cas présent, vous avez raison. La commande "getent" aurait peut-être été plus logique.-
-
-
-
Je leurs aient envoyé ma proposition pour la commande
strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 6 | tr -d '\n'
et voila la réponse :
Pour tout vous dire, je ne l'ai jamais utilisé celle-là, même si je la connais et que sa construction me parait cohérente.
Cela me convient dès lors qu'on arrive au résultat souhaité.
Sur le terrain, on raisonne souvent ainsi, vous verrez :-) -
Mouais, je les trouve un peu zen dans ta formation, mais bon au moins ça oblige à être "créatif" :-)
Sinon, pour info sur le terrain on aurait par exemple utilisémkpasswd
.
Est-ce que ton problème est résolu ?
-
-
Merci pour vos avis et votre aide. Si vous recherchez du travail, postulez chez eux pour leur donner des cours ; )
-
Si vous recherchez du travail, postulez chez eux pour leur donner des cours ; )
:-))))
Est-ce que ton problème est résolu ?
-
-
-
Bonjour,
Je suis en formation en distanciel avec l'école ESECAD pour la même formation que vous.
Effectivement je trouve leurs cours vraiment difficile d'interprétation et les réponses des profs sont plutôt vague.
Est ce que je peux me permettre de vous demander quelques infos sur l'excercice précédent sur la création d'une AD.
Cordialement.