Vous devez absolument comprendre les commandes suivantes.
Ne vous contentez pas de répondre, vérifiez que vous comprenez précisément chaque option.
Si vous avez des doutes, prenez le temps de chercher sur internet les informations nécessaires.
Voir entre-autres:
La fiche de ce cours (et aussi)
http://fr.wikipedia.org/wiki/Advanced_Packaging_Tool
http://www.debian.org/doc/manuals/apt-howto/index.fr.html
http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.fr.html
http://www.coagul.org/article.php3?id_article=157
[des questions seront posées au contrôle sur le fonctionnement de certaines de ces commandes]
Attention! Lisez jusqu'au bout avant d'appuyer sur les touches!
Un système Linux fournit normalement une série de consoles sur lesquelles on peut se connecter.
On peut changer d'une console à l'autre à l'aide des touches "control-alt-f1, control-alt-f2 ..."
Attention! Vous allez perdre temporairement l'accès à votre interface graphique. Il faudra essayer toutes les consoles (f1, f2 ... f12) jusqu'à ce que vous retrouviez l'interface graphique.
Essayez plusieurs consoles en vous loguant à chaque fois et en tapant quelques commandes.
Les consoles peuvent-être très pratiques lorsque vous avez un problème d'affichage.
Une des consoles correspond au serveur X (interface graphique), laquelle?
(f1, f2, f3 ... f12 ) ?
Dans cette partie du TP nous allons nous intéresser à la création et à la gestion des utilisateurs.
Voici les transparents du cours correspondants:
La 18eme ligne de /etc/group ressemble à:
cdrom:x:24:etudiant
à quoi correspond le "cdrom:" en debut de ligne?
scanner:x:111:saned,etudiantà quoi correspond le "saned" ?
Quel est le répertoire personnel de l'utilisateur "root" ?
Dans cette partie nous allons essayer de comprendre quelques principes sur le hachage des mots de passe utilisé dans /etc/shadow
N'oubliez pas: un des buts et d'eviter que des mots de passe soient enregistrés en clair (non hachés) dans un fichier. Même si ce fichier est protegé en lecture. C'est très dangereux.
La fonction "C " crypt() permet de hacher un mot de passe.
Lisez rapidement la page man de crypt.
le deuxième champ de /etc/shadow contient le mot de passe crypté sous la forme:
$1$abcdefgh$xyz....
ou bien (plus récent):
$y$j9T$S10k5msKrNxNQajY8oI/$xyz...
Comme on l'a vu:
Créez un fichier password.c :
#define _XOPEN_SOURCE
#include <unistd.h>
#include <stdio.h>
#include <crypt.h>
int
main()
{
printf("resultat:\n%s\n",crypt("motdepasse", "salt"));
return 0;
}
remplacez "salt" avec une valeur trouvée dans /etc/shadow et "motdepasse" par le mot de passe correspondant (par exemple, pour le compte "etudiant")
puis compilez le avec: "gcc password.c -l crypt -o password"
Exécutez le programme et vérifiez qu'il affiche effectivement le mot de passe cryptée, tel qu'on le trouve dans /etc/shadow
Attention: ne créez jamais des fichiers de travail dans /etc !!!
Vous devez travailler dans votre répertoire personnel
Question: Quel est la ligne affichée pour:
salt: $1$s1f5m5j4$
mot de passe: blablabla
En supposant que votre machine puisse vérifier 1000 mots de passe à la seconde, combien de temps faudra-il pour décrypter un mot de passe de 10 lettres minuscules sans accents.
Dictionnaire
Les gens utilisent souvent des mots de passe longs, mais contenant des mots en français.
Les programmes de décryptage peuvent alors essayer tous les mots du dictionnaire pour essayer de trouver le mot de passe correspondant. (en pratique les méthodes dictionnaire ont des approches beaucoup plus sophistiquées)
Un dictionnaire français contient environ 40 000 mots.
Un utilisateur choisit le mot de passe "diplodocus"
En supposant que votre machine puisse vérifier 1000 mots de passe à la seconde, combien de temps faudra-il pour décrypter un mot de passe comme "diplodocus"?
toto:$1$rXGhjmGD$qtuklX26hky6/TDbGxjCo.:11745:0:99999:7:::Conseils et rappels C:
Dans l'exercice suivant nous allons construire une arborescence en y associant des utilisateurs et des groupes.
Le but est de s'habituer à l'utilisation des commandes de gestion des utilisateurs et des droits.
La commande ls -l affiche ceci:
-rw-r--r-- 1 abcd efgh 1234 août 14 2018 ijkl
La commande ls -l affiche ceci:
-rw-r-xr-- 1 abcd efgh 1234 août 14 2018 ijklDécomposons le sens de
rw-r-xr--
La commande ls -l affiche ceci:
-rw-r-xr-- 1 abcd efgh 1234 août 14 2018 ijkl
rw-r-xr--
La commande chmod utilise des lettres pour chacune de ces 3 catégories, lesquelles ?
Quelle commande taper pour changer ceci :
-rw-r--r-- 1 abcd efgh 1234 août 14 2018 ijklen ceci:
-rw-rw-r-- 1 abcd efgh 1234 août 14 2018 ijkl
Quelle commande taper pour changer ceci :
-rw-r--r-- 1 abcd efgh 1234 août 14 2018 ijklen ceci:
-rw-r--r-- 1 wxyz efgh 1234 août 14 2018 ijkl
Quelle commande taper pour changer ceci :
-rw-r--r-- 1 abcd efgh 1234 août 14 2018 ijkl
en ceci:
-rw-r--r-- 1 abcd rstu 1234 août 14 2018 ijkl
La commande ls -l affiche ceci:
drwxr-xr-x 1 abcd efgh 1234 août 14 2018 ijklLe "d" indique que ijkl est un répertoire.
r,w et x ont un sens différent pour un fichier et pour répertoire .
Pour un fichier:
A votre avis que veulent dire r,w et x pour un répertoire ?
Cet exercice de manipulation de droits est assez long, mais important. N'hésitez pas à prendre du temps.
Des commandes qui pourront être utiles sont données en pas de cette page.
Un petit programme (script) est fourni, pour vérifier si vous ne vous êtes pas trompés, une fois que vous aurez fini les 4 questions de cet exercice.
Vous pouvez l'exécuter, en tant que root, et il vous dira si vos répertoires sont conformes à ce qui est demandé.
Pour télécharger le script cliquez sur ce lien: verif-droits.sh
Exceptionnellement, pour cet exercice, il peut-être intéressant de travailler dans un shell en tant que root.
Pour ça, vous pouvez taper la commande "sudo su - "
Créez l'arborescence suivante (figure)
Vous pouvez créer très simplement des fichier vides à l'aide de la commande "touch nom_fichier" .
Indication: /var existe déjà, vous devez donc commencer par créer le répertoire "jeu"
En utilisant la commande appropriée, créez les utilisateurs: jeu, jean, akima, dupond
Attention, ne confondez pas les répertoires (que vous avez déjà crée) avec les utilisateurs du système.
Vérifiez que les utilisateurs ont bien été crées en regardant le fichier /etc/passwd
Dans cette partie vous devez changer les propriétaires, les groupes et les droits de différents fichiers et répertoires pour obtenir les point suivants (faites-les dans l'ordre) :
Conseil : n'hésitez pas à devenir un des utilisateurs pour voir si ses droits sont corrects. Par exemple, pour devenir akima, vous pouvez taper: "sudo su - akima"
N'hésitez pas à regarder la page "man" de ces commandes.