Changements récents - Rechercher:

Espace Wiki ∂'Alembert
Documentation générale


Espace Guide de survie du SysAdmin
Documentation technique


Espace Guide de survie du Développeur
Pour les développeurs


Espace Institut ∂’Alembert
L'institut


Le Site
À propos du Site
Liste complète des Pages


Aide PmWikiFr

Help PmWiki

Main /

Secure Shell

Page mise à jour le 20/07/2023 12:58



logo OpenSSH

Secure Shell (SSH) est à la fois un programme informatique et un protocole de communication sécurisé. Le protocole de connexion impose un échange de clés de chiffrement en début de connexion. Par la suite, tous les segments TCP sont authentifiés et chiffrés. Il devient donc impossible d'utiliser un sniffer pour voir ce que fait l'utilisateur.

Le protocole SSH a été conçu avec l'objectif de remplacer les différents programmes rlogin, telnet, rcp, ftp et rsh.


Se connecter au laboratoire

La machine vauban est la passerelle ssh du laboratoire. Son nom complet est vauban.dalembert.upmc.fr.

Pour accéder à vos machines depuis l’extérieur, il faut :

  • un compte sur la passerelle
  • une paire de clés ssh crée sur une machine extérieure

Attention, Les données sur la passerelle ne sont pas sauvegardées et peuvent être supprimées à tout moment. Pour copier des données, éventuellement lourdes, sur votre machine interne, voir #et copier des fichiers sans encombrer la passerelle

Créer une paire de clés

Opération a ne faire qu'une fois, pas sur la passerelle ni votre machine au laboratoire, mais sur votre machine personnelle.

  1. créer une paire de clé
    (machine exterieur)$ ssh-keygen -t rsa
    • taper *enter* pour valider le chemin de la clé par défaut
    • et mettre (éventuellement) une passphrase pour chiffrer la paire de clés
    • cette opération crée deux fichiers : ~/.ssh/id_rsa, la clé privée et ~/.ssh/id_rsa.pub, la clé publique
  2. envoyer la clé publique à et ne montrer la clé privée à personne, pas même votre grand-mère !!
  3. attendre que nous activions votre compte et votre clé sur la passerelle

À partir de là vous pouvez vous connecter sur les machines du laboratoire (voir plus bas).

  1. (optionnel) installer la clé publique sur toutes les machines que vous souhaitez accéder:
    $ cat ~/.ssh/id_rsa.pub | ssh -J <user sur la passerelle>@vauban.dalembert.upmc.fr <user>@<machine> 'cat >> .ssh/authorized_keys'

Sans la dernière étape, vous ne pourrez pas vous connecter directement sur les machines, il faudra taper le mot de passe à chaque connexion.

Se connecter au laboratoire directement ...

  1. après création du compte sur la passerelle, vous pourrez vous connecter directement sur la machine de votre choix dans le laboratoire, par exemple xeller:
(machine exterieur)$ ssh -J <user>@vauban.dalembert.upmc.fr <user>@xeller
(xeller)$

et copier des fichiers sans encombrer la passerelle

  • avec la même option, on peut copier directement depuis l'exterieur, par exemple le fichier coucou sur xeller (dans votre répertoire personnel):
(machine exterieur)$ scp -J <user>@vauban.dalembert.upmc.fr coucou <user>@xeller:
coucou 100% 0 10.0KB/s 00:05
  • on peut également copier depuis xeller vers sa machine:
(machine extérieure)$ scp -J <user>@vauban.dalembert.upmc.fr <user>@xeller:coucou .
coucou 100% 0 10.0KB/s 00:05
Autre options intéressantes de scp:
-r : récursif
-v : verbosité

Mémoriser les options

Il est possible d'éviter de taper systèmatiquement les options en utilisant le fichier .ssh/config

Pour automatiser la connexion vers xeller (compte toto) via la passerelle (compte patrick), on ajoute:

Host xeller
User toto
ProxyJump patrick@vauban.dalembert.upmc.fr

Puis on fait

(machine extérieure)$ ssh xeller
toto@xeller $

Difficultés

  • À la première connexion, sur la passerelle ou ailleurs, un message apparaît demandant de valider la machine de destination. Il faut valider en tapant yes
The authenticity of host 'xeller (<no hostip for proxy command>)' can't be established.
ECDSA key fingerprint is SHA256:nFgd7Z1Vfl8BqtdFitMqhg1eeEaenp7Og3KK0RDyQYw.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
  • Après la connexion à la passerelle, il est toujours possible de se connecter sur les machines internes sans devoir installer la clé générée plus haut. Dans ce cas, chaque connexion/copie demandera le mode de passe du compte de la machine

Affichage de Netdata à distance

Netdata est notre outil pour la surveillance de l'état de santé des stations, notamment dans la Salle de calcul - site jussieu.

Normalement, dans le réseau du labo, on peut regarder un tableau de bord à <votre_machine>.dalembert.upmc.fr:19999/. À l'extérieur, c'est un peu plus compliqué. L'idée est de rediriger le port de la machine qui vous intéresse vers votre machine locale via ssh.

Ainsi, en supposant que vous ayez un accès ssh à chagall, vous pouvez exécuter

(machine extérieure)$ ssh -i ~/.ssh/id_rsa -L 19999:<votre_machine>.dalembert.upmc.fr:19999 <user>@chagall.dalembert.upmc.fr

Il est important de noter que puisque cette redirection ouvre un stream, vous devez quitter ssh d'une manière particulière plutôt que taper "exit", "ctrl-d" ou "ctrl-c", ce qui laissera la connexion ouverte. Pour couper le stream, appuyez sur la touche "entrée", puis appuyez sur la touche "~" et enfin sur ".". Cette commande peut être expliquée comme suit.

  • "entrée" : Assurez-vous que la ligne de commande est vide.
  • "~" : Indiquez que le caractère suivant est un séquence d'échappement. Il n'apparaîtra pas !
  • "." : Terminer la connexion.

Après cela, vous devriez pouvoir voir le tableau de bord dans votre navigateur à l'adresse http://localhost:19999.

Lorsque vous aurez terminé, n'oubliez pas de fermer la connexion.

Voir Aussi

À propos du site Licence Creative Commons Cooked with love in 2014-2023 by pcht
Page mise à jour le 20/07/2023 12:58