Outils pour utilisateurs

Outils du site


Panneau latéral

wiki:howto_connect

Connexion distante aux machines

Pour vous connecter aux machines de l’UFR d’informatique, vous avez besoin d’un login et d'un mot de passe qui vous sont distribués par l’administrateur en début d’année. Vous pouvez aussi vous connecter à certains serveurs, depuis les salles TD de l’UFR, où depuis chez vous.

Seuls certains serveurs sont accessibles depuis extérieurs. Vous pouvez les utiliser comme passerelles d’accès afin de “rebondir” vers d’autres machines de l’UFR. Il est interdit de se connecter depuis le campus vers une machine extérieure à l’université. Ceci est une restriction de sécurité de RENATER.

Connexion depuis une machine de l'UFR vers un serveur/une machine de l'UFR

  1. Depuis la page de login, choisir Menu / connexion distante
  2. Entrez ou choisissez le nom du serveur sur lequel vous connecter
  3. Entrez votre login et votre mot de passe.

Connexion sécurisée en SSH

SSH est un protocoles permettant de se connecter à un ordinateur distant. A la différence d’autres protocoles non sécurisés comme Telnet ou rlogin qui véhiculent l’information en clair, SSH nécessite une authentification mutuelle du client et du serveur et les données sont chiffrées.

L’authentification se fait par mot de passe ou par clé publique.

SSH est présent nativement sous les systèmes Unix et MacOS. Sous Windows, il existe plusieurs utilitaires pour vous permettre de vous connecter en SSH (par ex : putty).

Sous Unix/Macos X

Vous devez utiliser le terminal :

$ ssh login@machine_distante

ou encore

$ ssh machine_distante -l login

L’option -X est très pratique. Elle permet d’activer le transfert X11 et donc de lancer des applications X11 à travers le tunnel SSH.

$ ssh -X login@machine_distante

La première fois que vous vous connectez à une machine, un message comme ci-dessous apparait :

The authenticity of host 'machine_distante (194.254.199.xx)' can't be established.
RSA key fingerprint is 66:c7:c2:e5:2d:f5:5e:07:f6:95:d2:86:60:7c:ba:b8.
Are you sure you want to continue connecting (yes/no)?

Il vérifie que c’est la bonne machine. répondez “yes”.

Warning: Permanently added 'machine_distante,194.254.199.xx' (RSA) to the list of known hosts.

SSH vient de rajouter l’identité de la machine distante à votre liste d’hôtes connus. Vous pouvez vérifier dans le fichier ~/.ssh/known_hosts que l’identité de la machine est bien présente.

$ cat known_hosts 
machine_distante,194.254.199.xx ssh-rsa AAAAB3NzarrrrrEAAAABIwAAAIEAujbhYY2pJVXylsYHzz
zzzBHghQhcZD58sI3zFO0wFHwWf/sGrmy3lbGcLxxxxxW3r2OzMM58d00V9Jrzwyhkn3mEaKxgvj/m9WOtJBRUgr
p+hosgdWfHd4JbiezraezrtAkveq0APngg+mopEbajFzyAZERTYjVAAW84CIE90=

Sous windows : putty

Putty est un petit utilitaire qui permet de faire des connexions SSH sous Windows.

Téléchargez putty.exe à cette adresse : http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Il s’agit d’un exécutable, pas besoin d’installation. Placez le fichier à l’endroit qui vous convient et lancez le.

  • host Name (or IP Address) : Indiquez l’adresse IP ou le nom complètement qualifié du serveur que vous voulez contacter (par exemple: nivose.informatique.univ-paris-diderot.fr ou 194.254.199.73)
  • Protocol : Cochez SSH
  • Cliquez sur Open.
  • A l’invite de commande, entrez votre login et votre mot de passe.

Nota : Il est possible d’enregistrer vos diverses sessions.

Authentification par clef

Au lieu de s’authentifier par mot de passe, les utilisateurs peuvent s’authentifier grâce à un couple de clefs privée/publique. C’est ce qu’on appelle la cryptographie asymétrique. Deux clés distinctes mais liées par un algorithme de chiffrement.

  • La clé publique qui est distribuée sur les systèmes sur lesquels vous voulez vous connecter.
  • La clé privée, protégée par un mot de passe, qui reste stockée sur votre machine local et qui ne doit en aucun cas être divulguée.

Cette méthode d’authentification est bien plus sure que celle par mot de passe.

C’est le cas sur le serveur “lucien” qui nécessite l’utilisation d’une clé publique pour vous connecter. Suivez les indications ci-dessous pour générer vos clés et les déployer sur votre compte.

Attention aux permissions de votre homedir. Si “group” ou “other” ont les droits d’écriture (ce que vous ne devriez pas faire, pour des raisons évidentes de sécurité), alors sshd refusera toute connexion par clé public. En effet, n’importe qui pourrait modifier .ssh/authorized_keys (voir ci-dessous), et se connecter sur votre compte en usurpant votre identité..

Génération des clés

Sur votre machine, pour générer votre couple de clés, il suffit de taper dans un shell :

$ ssh-keygen

ou

$ ssh-keygen -t rsa

SSH vous demande de rentrer une pass-phrase qui est le mot de passe qui va protéger la clef privée. Mémorisez bien cette pass-phrase car elle vous sera demandée à chaque fois que vous vous connecterez en utilisant cette méthode d’authentification.

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/pietroni/.ssh/id_rsa):
[...]
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
[...]
Your identification has been saved in /Users/pietroni/.ssh/id_rsa.
Your public key has been saved in /Users/pietroni/.ssh/id_rsa.pub.
The key fingerprint is:
cd:b8:da:a3:95:dd:29:f8:b0:38:c1:e4:7e:6d:77:82 pietroni@local_machine.informatique.univ-paris-diderot.fr
[...]

(L’affichage peut différer d’un système à l’autre. Ici, la capture provient d’un MacOS 10.6.8)

La clef privée est stockée par défaut dans le fichier ~/.ssh/id_rsa avec les permissions 600 (lisible uniquement par le propriétaire, c’est à dire vous) et la clef publique est stockée dans le fichier ~/.ssh/id_rsa.pub avec les permissions 644 (lisible par tout le monde… normal, elle est “publique”).

Note : Vous pouvez modifier votre pass-phrase avec l’option -p de ssh-keygen.

$ ssh-keygen -p
Enter file in which the key is (/Users/pietroni/.ssh/id_rsa):
[...]
Enter old passphrase: 
Key has comment '/Users/pietroni/.ssh/id_rsa'
Enter new passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved with the new passphrase.

Déploiement et autorisation de votre clef publique

1. Afin d’autoriser votre clé publique nouvellement générée, vous devez la copier sur votre compte de l’UFR. Pour accéder à votre compte de l’UFR, il va falloir vous connecter sur une autre machine que “lucien” (bein oui, puisqu’il vous faut une clé pour lucien…). Le serveur “nivose” fera parfaitement l’affaire.

$ scp ~/.ssh/id_rsa.pub login@nivose.informatique.univ-paris-diderot.fr:~/

Cette commande va copier votre clé publique à la racine de votre compte de l’UFR. (Voir les détails de scp plus bas)

2. Connectez vous sur nivose en ssh

$ ssh login@nivose.informatique.univ-paris-diderot.fr

et ajoutez votre clé publique à votre fichier ~/.ssh/authorized_keys:

$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

(cette commande concatène votre clé à la fin du fichier authorized_keys).

Vous pouvez désormais vous connecter à lucien.

Génération de clé sous Windows : puttygen

:!: A faire

SCP : Copie sécurisée de fichiers

SCP permet de tranférer ou de récupérer un fichier ou un répertoire vers/à partir d’une autre machine. Pour les options de transfert, reportez vous au man de scp.

Transférer un fichier vers une machine distante :

$ scp chemin_fichier login@machine_distance:chemin_destination

ou pour un répertoire

$ scp -r chemin_repertoire login@machine_distance:chemin_destination
  • chemin_fichier/chemin_repertoire est l’emplacement de votre fichier/repertoire sur votre machine locale (par exemple ~/documents/fichier.txt)
  • login@machine_distante : La syntaxe est similaire à SSH
  • :chemin_destination est l’emplacement où vous voulez copier votre fichier sur la machine distante (par exemple :~/mes_fichiers/)

Exemples

$ scp ~/fichier1.txt pietroni@nivose.informatique.univ-paris-diderot.fr:/tmp/

Copie fichier1.txt qui est dans mon home_dir vers la machine nivose, dans le répertoire /tmp.

$ scp fichier1 fichier2 fichier3 pietroni@194.254.199.73:

Copie les 3 fichiers vers le répertoire racine sur la machine 194.254.199.73.

$ scp fich* pietroni@194.254.199.73:

Vous pouvez utiliser des caractères de substitution.

$ scp fichier1.txt pietroni@machine_distante:~/fichier2.txt

copier fichier1.txt et le renomme en fichier2.txt sur la machine distante.

Récupérer un fichier depuis une machine distante :

L’action inverse est également possible. Vous pouvez récupérer un fichier depuis une machine distante et le copier sur votre machine locale.

$ scp login@machine_distante:chemin_fichier_distant chemin_local_destination

ou pour un répertoire :

$ scp -r login@machine_distante:chemin_repertoire_distant chemin_local_destination
  • login@machine_distante : toujours la syntaxe SSH
  • :chemin_fichier_distant/chemin_repertoire_distant : l’emplacement du fichier à récupérer sur la machine distante.
  • chemin_local_destination : L’emplacement où vous voulez copier le fichier sur votre machine locale.

Exemple

$ scp pietroni@nivose.informatique.univ-paris-diderot.fr:~/fichier2.txt ~/Mes_Documents/

Récupère fichier2.txt situé sur la machine nivose dans mon home_dir, et le copier dans mon répertoire local Mes_Documents.

Trucs et astuces

Se connecter en SSH sans taper de mot de passe

Un mécanisme appelé ssh-agent permet de ne pas rentrer la pass-phrase à chaque fois.

:!: A faire

Utilisation des alias

Créer des alias afin de simplifier l’utilisation de ssh/scp.

:!: A faire

SSH/SCP en mode graphique

  • sous windows : Tunnelier
  • sous macos : Cyberduck
  • etc.

:!: A faire

wiki/howto_connect.txt · Dernière modification: 14/09/19 10:29 par Dominique Poulalhon