Skip to content

Exercices

Les exercices sont à faire dans l'ordre et uniquement via le terminal.

Prenez comme machine distante une des machines des salles de TP, par exemple tp-1a201-XX, avec XX dans [01, 40].

Nous appellerons cette machine REMOTEHOST dans les exercices qui suivent.

Attention

Vous devez avoir installé votre clé publique sur votre compte école.

Sauf indication contraire donnée par "connectez-vous en SSH", toutes les opérations ci-dessous doivent se faire en une seule ligne de commande.

SSH et commandes

  1. Ouvrez un terminal et allez dans projets/1A/
  2. Vérifiez le nom de la machine REMOTEHOST via SSH
  3. Vérifiez votre nom de login sur REMOTEHOST via SSH
  4. Donner la liste des utilisateurs connectés sur REMOTEHOST via SSH
  5. Donner l'occupation disque de votre compte personnel sur REMOTEHOST via SSH
    • Vous pourrez utiliser du -hs pour avoir un bref aperçu de l'espace disque utilisé

Copie de fichiers

  1. Ouvrez un terminal et allez dans projets/1A/
  2. Copier le répertoire ue_outils via scp dans votre compte dans le répertoire ~/
  3. Enlever le répertoire ~/ue_outils de REMOTEHOST

SSHFS

  1. Ouvrez un terminal et allez dans projets/1A/ue_outils
  2. Créer le répertoire distant
  3. Connectez via sshfs votre compte école à ce répertoire distant
  4. Ouvrez un autre terminal (T2), connectez-vous en SSH à REMOTEHOST et créez un répertoire UETESTdans votre répertoire utilisateur.
  5. Revenez dans le premier terminal
    • vérifiez la présence de UETEST dans le répertoire projets/1A/ue_outils/distant
    • renommez UETEST et UETEMP
  6. Revenez dans le second terminal (T2) et vérifiez que le répertoire a bien été renommé
  7. supprimez UETEMP

SSH et commandes distantes

  1. Ouvrez un terminal et allez dans projets/1A/ue_outils et créez le script test_run.sh suivant:
#!/bin/bash
echo "" > test_res.txt
for i in {1..10} ; do
    echo "Alive $i" >> test_res.txt 
    sleep 1
done
  1. Que fait ce script ?
  2. Exécutez le script en le lançant en premier plan
    • vous pouvez tester d'interrompre le script via ctrl+cet regarder le contenu du fichier test_res.txt
  3. Exécutez le script en le lançant en arrière plan
  4. Copiez le script dans votre répertoire utilisateur sur REMOTEHOST via scp
  5. Exécutez le script sur REMOTEHOSTvia SSH en le lançant en premier plan
  6. Exécutez la même commande sur REMOTEHOSTvia SSH en la lançant en arrière plan
    • vous devrez mettre la commande entre guillemets simples ': './test_run.sh &'
    • l'exécution en arrière-plan est-elle respectée ?
  7. En utilisant nohup, lancer le script sur REMOTEHOSTvia SSH
    • Comme vu précédemment vous devrez rediriger les fichiers spéciaux sortie et erreur
    • Vérifiez que la déconnexion est bien immédiate
    • Vérifiez que l'exécution se déroule bien en regardant le fichier test_res.txt via une autre connexion SSH ou via SSHFS
  8. En utilisant tmux, lancer le script sur REMOTEHOST via SSH
    • Vérifiez que l'exécution se déroule bien en regardant le fichier via une autre connexion SSH ou via SSHFS

Tunnel SSH

Faites cet exercice soit depuis chez vous ou soit sur le réseau WiFi eduroam, pas Campus-Telecom.

  • Tentez une connexion SSH sur REMOTEHOST
    • elle doit échouer
  • Connectez-vous en SSH sur REMOTEHOST en faisant un tunnel SSH depuis ssh.enst.fr