26/02/16
L’ensemble des cours et TP pourront être réalisé sur un système d’information conteneurisé.
Ce frontend cache dans son backend plusieurs technologies comme docker et nginx.

Chaque étudiant dispose de 3 instances docker linux :
client
server
monitoring
Vous disposez des droits administrateurs, d’un outils de backup, d’un server SFTP et la possibilité de regénérer l’instance complètement.
Pour vous connecter, il vous faudra utiliser un navigateur “récent” (chrome/firefox).
l’URL depuis laquel vous aurrez accès (pendant toute la formation) à votre “micro” système d’information est :
https://isen-docker.gastier.net

Les informations nécessaires pour toutes connexions sont :
host = "NOM"-"Premiere lettre du prénom"-"Type de machine"
ex : pour Astier Guillaume sur la machine monitoring
|_> astier-g-monitoring
username = isen
password = isen
L’outils de backup sauvegarde uniquement les répertoires /home/isen /root/ et /etc/
Il vous sera demandé de changer le mot de passe par défaut de l’instance sur la quelle vous voulez vous connecter.

Lors de votre première connexion l’interface du terminal sera similaire à :

Vous pouvez échanger des données entre vos instances et votre machine local (dans les 2 sens)


Ne pas oublier que le descriptif des commandes est disponible en utilisant le manuel (commande man).
Pour savoir ou se trouve un fichier ou commande = whereis, which, apropos
Initiation au Système Linux (environnement, commandes de base, processus, …) Tous ces exercices doivent être faits en mode commande dans un shell
se connecter en tant que isen sur l’instance client
connectez vous en tant que root avec la commande su (switch user)
se connecter en root en utilisant sudo
expliquer la différence entre ‘su’, ‘su -’, ‘sudo’, ‘sudo su’ , ‘sudo su -’
Lire le manuel de ‘ls’ pour expliquer le resultat de la commande suivante : $ls -srF /etc
Lire le manuel de test et rechercher la chaine de caractère ‘-f FILE’
lancez la commande test avec l’option ci-dessus et en arguement ‘/home/isen/backup_isen’. Que ce passe t’il ?
Comment vérifier et afficher le code retour de la commande et qu’indique t’il dans ce cas
lancez la commande test avec l’option ci-dessus et en arguement ‘/dev/random’
Comment vérifier et afficher le code retour de la commande et qu’indique t’il dans ce cas
Afficher l’ensemble de vos variables d’environnement.
Donner la signification de PATH, PS1, HOME, et TERM
Creer un repertoire INIT dans la “home directory” de l’utilisateur root en tant que isen
Creer un repertoire INIT dans la “home directory” de l’utilisateur isen en tant que root
Creer les fichiers vides ‘001_ha 002_bay 003_say 004_day’ dans /tmp/
Deplacer ces fichiers avec les path relatif dans le sens /tmp/ vers /isen/INIT/
Deplacer ces fichiers avec les path absolu dans le sens /isen/INIT vers /tmp/
Deplacer ces fichiers en une seule commande dans le sens /tmp/ vers /root/INIT/ en utilisant les “jokers”
Creer un repertoire /tmp/REP_UN/REP_DEUX/REP_TROIX/ en une seule commande
Copier le fichier /bin/cat dans /tmp/REP_UN/REP_DEUX/REP_TROIX/
Prouvez que les 2 fichiers sont identiques
Comment supprimer le fichier cat avec le repertoire REP_TROIX/ en une seule commande
Trouver le moyen d’afficher l’intégralité des fichierq de /tmp/ de manière récursive
Connectez vous sur l’instance server en tant que isen
Une fois connecte, dans quel repertoire vous trouvez-vous ? Pourquoi ?
Existe-t-il d’autres comptes sur cette machine ? Si oui, comment les lister ?
switchez d’utilisateur en passez en root
Combien d’utilisateurs peuvent se connecter en utilisant un mot de passe ?
Pourquoi nous n’aurions pas pu utiliser l’utilisateur isen pour répondre à la question précédente
Creer un compte “eleve1” avec la commande “‘useradd eleve1’” et lui definir un mot de passe.
Se connecter avec cet utilisateur, que remarquez-vous ?
En “root”, creer le home directory de “eleve1” avec les commandes “‘mkdir’” et “‘chown’”.
Creer un nouveau compte ‘eleve2’ de facon à creer automatiquement son “home directory”.
Comparer les contenus des repertoires des utilisateurs “eleve1” et “eleve2”.
Maintenant, comparer avec le contenu du repertoire /etc/skel.
A quels groupes appartiennent les comptes “eleve1” et “eleve2” ? (Indiquez au moins 2 méthode)
Avec la commande “‘groupadd’”, creer un groupe “eleves” ayant un GID egal à 600.
Vérifiez dans le bon fichier que le groupe a bien été créé
Creer un groupe “profs” avec un GID de 700.
En modifiant le fichier adequat, mettre le groupe “eleves” en groupe primaire de l’utilisateur “eleve1”.
En utilisant la commande “usermod”, faire la même manipulation pour l’utilisateur “eleve2”.
Supprimer les groupes “eleve1” et “eleve2”.
Changer le groupe proprietaire des repertoires “‘/home/eleve1’” et “‘/home/eleve2’” en consequence.
Creer un compte “prof1” ayant comme groupe primaire “profs” et comme groupe secondaire “eleves”.
Créer un répertoire “‘/data/eleves’” où seuls les “eleves” pourront lire et modifier son contenu.
Si “eleve1” crée un fichier dans “‘/data/eleves/’”, est-ce que “eleve2” pourra le supprimer ?
Créer un répertoire “‘/data/professeurs’” où seuls les “profs” pourront lire et modifier son contenu.
Un élève peut-il lire, créer et supprimer des fichiers dans ce répertoire ? Pourquoi ?
Quel sera le groupe d’appartenance d’un fichier créé par “prof1” dans “‘/data/eleves/’” (ne pas oublier d’ajouter les droits sur other)?
En utilisant une permission d’accès spéciale, proposer une solution pour palier au problème du point 2 de “permissions classic”
Fixer la permission setgid sur le répertoire “‘/data/eleves’” et répondre de nouveau au point 5 de “permissions classic”
Quelles sont les permissions du fichier “‘/etc/shadow’” ?
Les eleves ou les profs peuvent-ils modifier le contenu de ce fichier avec un éditeur de texte ?
Pourtant, en lançant la commande “‘passwd’”, ils arrivent à modifier leur champ mot de passe. Pourquoi ? (“‘type’” permet de localiser l’emplacement d’une commande).
