SSH, le shell sécurisé



Documents pareils
Installation et mise en œuvre de OpenSSH sous AIX 5L

La sécurité avec SSH. Atelier cctld Dakar, Sénégal. Hervey Allen

Anas Abou El Kalam Sécurité SSH SSH

Devoir Surveillé de Sécurité des Réseaux

Antisèches Informatiques. Configuration et utilisation de openssh. Sommaire. Openssh pour linux. Installation. 1 sur 24 04/06/ :04

Table des matières Hakim Benameurlaine 1

Accès aux ressources informatiques de l ENSEEIHT à distance

Manuel des logiciels de transferts de fichiers File Delivery Services

Protocole SSH-2.0. Tuan-Tu, TRAN. Janvier 2009

Le protocole SSH (Secure Shell)

Services Réseau SSH. Michaël Hauspie. Licence Professionnelle Réseaux et Télécommunications

Les commandes relatives aux réseaux

SSH et compagnie : sftp, scp et ssh-agent

FTPS AVEC UNE APPLIANCE FAST360 EN COUPURE. Table des matières

SSH : Secure SHell. De l utilisateur à l administrateur. Version du 21/10/2004. Frédéric Bongat [fbongat@lmd.ens.fr]

Couche application. La couche application est la plus élevée du modèle de référence.

Secure SHell. Faites communiquer vos ordinateurs! Romain Vimont ( R om)

TP Sur SSH. I. Introduction à SSH. I.1. Putty

SSH. Romain Vimont. 7 juin Ubuntu-Party

Installation du transfert de fichier sécurisé sur le serveur orphanet

I. Linux/Unix/UnixLike

Introduction. Adresses

L3 informatique TP n o 2 : Les applications réseau

ROYAUME DU MAROC. Office de la Formation Professionnelle et de la Promotion du Travail. Ssh sous Gnu/Linux

Tunnels. Plan. Pourquoi? Comment? Qu est-ce? Quelles solutions? Tunnels applicatifs ESIL INFO 2005/2006. Sophie Nicoud

SSL. Secure Socket Layer. R. Kobylanski janvier version 1.1 FC INPG. Protocole SSL Application avec stunnel

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

Services Réseaux - Couche Application. TODARO Cédric

pare - feu généralités et iptables

Enoncé du TP 7 Réseaux

titre : CENTOS_CUPS_install&config Système : CentOs 5.7 Technologie : Cups Auteur : Charles-Alban BENEZECH

Note technique. Recommandations pour un usage sécurisé d (Open)SSH

Utilisation des ressources informatiques de l N7 à distance

ECOLE POLYTECHNIQUE DSI. Utilisation des serveurs mandataires («proxy») avec les protocoles d usage courant

INFO-F-404 : Techniques avancées de systèmes d exploitation

ftp & sftp : transférer des fichiers

Plan. Le système de transfert de fichiers d'internet. Introduction aux systèmes de transfert de fichiers Le protocole FTP.

Cours 14. Crypto. 2004, Marc-André Léger

1. Utilisation PuTTY openssh WinSCP

Routeur Chiffrant Navista Version Et le protocole de chiffrement du Réseau Privé Virtuel Navista Tunneling System - NTS Version 3.1.

FTP & SMTP. Deux applications fondamentales pour le réseau Internet.

Présentation et Mise en Oeuvre de SSF/SSH Documentation extraite de la formation continue INPG "Internet et Intranet"

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

OpenSSH. Présentation pour le groupe SUR (Sécurité Unix et Réseaux) 08/03/2005. Saâd Kadhi

FTP & SMTP. File Transfert Protocol. Deux applications fondamentales pour le réseau Internet. Un protocole d échange de fichier «au dessus» de TCP :

Sécurité des réseaux sans fil

Les différentes méthodes pour se connecter

Administration Linux - FTP

sshgate Patrick Guiran Chef de projet support

Projet Administration Réseaux

Serveurs de noms Protocoles HTTP et FTP

Linux LTE 2 - ISSBA. Année universitaire Linux Réseau et Archivage. Jean-Michel RICHER Faculté des Sciences, H206 1

Configuration d un firewall pour sécuriser un serveur WEB

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

Plan Général Prévisionnel (1/2) Internet et Outils L1/IO François Armand. Plan Général Prévisionnel (2/2) Unix, Réseau: Plan

Manuel FDS File Delivery Services Transfert de fichiers SFTP et FTP

La sécurité dans les grilles

Les Réseaux Privés Virtuels (VPN) Définition d'un VPN

FTP-SSH-RSYNC-SCREEN au plus simple

Sauvegarde automatique des données de GEPI

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Contrôle de la DreamBox à travers un canal SSH

Sécurité des réseaux IPSec

Les applications Internet

Quelques protocoles et outils réseaux

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

Préparation LPI. Exam Securité. Document sous licence Creative commons «by nc sa» nc sa/2.

18 TCP Les protocoles de domaines d applications

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

SSH Préambule. Olivier Hoarau (olivier.hoarau@fnac.net) V1.0 du

Certificats (électroniques) : Pourquoi? Comment? CA CNRS-Test et CNRS

Enoncé du TP 7 Réseaux

NOUVELLES TECHNOLOGIES RESEAUX SSH SSL TLS

Applications. Applications. Le système de nommage d Internet: Domain Name System. Applications. service de noms

Contenu. Cocher : Network Policy and Access Services > Next > Next. Cocher : Network Policy Server > Next > Install

Logiciel de connexion sécurisée. M2Me_Secure. NOTICE D'UTILISATION Document référence :

1.Introduction - Modèle en couches - OSI TCP/IP

SSL ET IPSEC. Licence Pro ATC Amel Guetat

Bon ben voilà c est fait!

il chiffrer les flux d'authentification et les flux de données il n'y a pas de soucis d'ouverture de ports avec des modes actif/passif à gérer

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

Micro-ordinateurs, informations, idées, trucs et astuces utiliser le Bureau à distance

Utiliser le portail d accès distant Pour les personnels de l université LYON1

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

TP réseaux Translation d adresse, firewalls, zonage

Comment surfer tranquille au bureau

Service FTP. Stéphane Gill. Introduction 2

Kerberos en environnement ISP UNIX/Win2K/Cisco

Université de Reims Champagne Ardenne. HTTPS, SSL, SSH, IPSEC et SOCKS. Présenté par : BOUAMAMA Mohamed Nadjib AZIZ Xerin

Cisco Certified Network Associate

ARes - Lab n 2. Couche application (1) : Telnet, SSH, FTP, TFTP et Web

Programmation Réseau. ! UFR Informatique ! Jean-Baptiste.Yunes@univ-paris-diderot.fr

Figure 1a. Réseau intranet avec pare feu et NAT.

Le protocole RADIUS Remote Authentication Dial-In User Service

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

Transcription:

, le shell sécurisé Objectifs : 1. Présenter le protocole et les outils associés Sébastien JEAN

Pourquoi 1/2? Les services standards ne supportent que peu de propriétés de sécurité souvent l identification, l authentification par mot de passe rarement la confidentialité, l intégrité, Exemple 1 : FTP, transfert de fichiers (RFC 959) l authentification par login/mot de passe est le plus souvent réalisée en clair le fichier est transmis en clair No. Time Source Destination Protocol Info 1 0.000000 192.168.1.100 194.199.18.80 TCP 4959 > ftp [SYN] Seq=0 Ack=0 Win=16384 Len=0 MSS=1460 2 0.064332 194.199.18.80 192.168.1.100 TCP ftp > 4959 [SYN, ACK] Seq=0 Ack=1 Win=49700 Len=0 MSS=1420 3 0.064374 192.168.1.100 194.199.18.80 TCP 4959 > ftp [ACK] Seq=1 Ack=1 Win=17040 Len=0 4 0.222855 194.199.18.80 192.168.1.100 FTP Response: 220 (vsftpd 1.2.1) 5 0.369536 192.168.1.100 194.199.18.80 TCP 4959 > ftp [ACK] Seq=1 Ack=21 Win=17020 Len=0 6 5.184178 192.168.1.100 194.199.18.80 FTP Request: USER anonymous login 7 5.262700 194.199.18.80 192.168.1.100 TCP ftp > 4959 [ACK] Seq=21 Ack=17 Win=49700 Len=0 8 5.264707 194.199.18.80 192.168.1.100 FTP Response: 331 Please specify the password. 9 5.385543 192.168.1.100 194.199.18.80 TCP 4959 > ftp [ACK] Seq=17 Ack=55 Win=16986 Len=0 10 7.254548 192.168.1.100 194.199.18.80 FTP Request: PASS tralala 11 7.310157 194.199.18.80 192.168.1.100 TCP ftp > 4959 [ACK] Seq=55 Ack=31 Win=49700 Len=0 12 7.390842 194.199.18.80 192.168.1.100 FTP Response: 230 Login successful. 13 7.492260 192.168.1.100 194.199.18.80 TCP 4959 > ftp [ACK] Seq=31 Ack=78 Win=16963 Len=0 14 9.737211 192.168.1.100 194.199.18.80 FTP Request: QUIT 15 9.789354 194.199.18.80 192.168.1.100 FTP Response: 221 Goodbye. mot de passe S.JEAN, octobre 2004, v1.2, le shell sécurisé 2

Pourquoi 2/2? Exemple 2 : POP, récupération de courrier (RFC 1939) l authentification par login/mot de passe est le plus souvent réalisée en clair les messages sont transmis en clair No. Time Source Destination Protocol Info 1 0.000000 192.168.1.100 193.51.172.3 TCP 4961 > pop3 [SYN] Seq=0 Ack=0 Win=16384 Len=0 MSS=1460 2 0.076138 193.51.172.3 192.168.1.100 TCP pop3 > 4961 [SYN, ACK] Seq=0 Ack=1 Win=5840 Len=0 MSS=1420 3 0.076188 192.168.1.100 193.51.172.3 TCP 4961 > pop3 [ACK] Seq=1 Ack=1 Win=17040 Len=0 4 0.149246 193.51.172.3 192.168.1.100 POP Response: +OK Hello there. 5 0.150566 192.168.1.100 193.51.172.3 POP Request: USER jean login 6 0.222886 193.51.172.3 192.168.1.100 TCP pop3 > 4961 [ACK] Seq=19 Ack=12 Win=5840 Len=0 7 0.225615 193.51.172.3 192.168.1.100 POP Response: +OK Password required. 8 0.225734 192.168.1.100 193.51.172.3 POP Request: PASS tralala mot de passe 9 0.304706 193.51.172.3 192.168.1.100 POP Response: +OK logged in. 10 0.305954 192.168.1.100 193.51.172.3 POP Request: STAT 11 0.371482 193.51.172.3 192.168.1.100 POP Response: +OK 0 0 12 0.372204 192.168.1.100 193.51.172.3 POP Request: QUIT 13 0.446129 193.51.172.3 192.168.1.100 POP Response: +OK Bye-bye. 14 0.446299 192.168.1.100 193.51.172.3 TCP 4961 > pop3 [FIN, ACK] Seq=37 Ack=82 Win=16959 Len=0 15 0.447759 193.51.172.3 192.168.1.100 TCP pop3 > 4961 [FIN, ACK] Seq=82 Ack=37 Win=5840 Len=0 16 0.447783 192.168.1.100 193.51.172.3 TCP 4961 > pop3 [ACK] Seq=38 Ack=83 Win=16959 Len=0 17 0.522977 193.51.172.3 192.168.1.100 TCP pop3 > 4961 [ACK] Seq=83 Ack=38 Win=5840 Len=0 Même constat pour TELNET, et les r-commandes (rlogin, rsh, rcp) S.JEAN, octobre 2004, v1.2, le shell sécurisé 3

en bref est un protocole dont il existe des implémentations sous forme d outils (s et ) pour tous les systèmes d exploitations Open est une implémentation libre (+) pour le monde Unix Putty est un pour Windows, s intéresse uniquement à garantir les propriétés d authentification mutuelle ( et ) et de confidentialité et d intégrité des données pour : les connexions distantes (outil ssh) les transferts de fichiers à distance (outils scp et sftp) permet aussi d assurer la confidentialité de n importe quel échange TCP par création d un tunnel (tunneling) port X port Y tunnel port port X S.JEAN, octobre 2004, v1.2, le shell sécurisé 4

Ouverture de session sécurisée 1/4 Utilisation de l outil ssh commande locale $ ls Établissement de la connexion distante commande distante pipo.txt $ ssh -l jean proton.inrialpes.fr jean@proton.inrialpes.fr's password: ********* jean@proton jean]$ ls a.out option l : spécifie le compte sur lequel se connecter syntaxe équivalente : ssh user@machine option X : active la redirection X11 (pour l utilisation d outils distants en mode graphique) S.JEAN, octobre 2004, v1.2, le shell sécurisé 5

Ouverture de session sécurisée 2/4 telnet Vs ssh : authentification TELNET «je suis untel et je te le prouve avec le mot de passe que nous sommes deux à connaître» En clair «je t autorise à exécuter des commandes» TELNET «je suis untel, je demande une connexion» En clair «je te prouve que je suis le» «mettons nous d accord sur une clé secrète (de session) pour rendre le canal de communication confidentiel» En clair Chiffrement Déchiffrement «nous sommes d accord» «je suis untel et je te le prouve» Canal confidentiel «je t autorise à exécuter des commandes» Chiffrement Déchiffrement S.JEAN, octobre 2004, v1.2, le shell sécurisé 6

Ouverture de session sécurisée 3/4 telnet Vs ssh : échange de données "a.out" "ls" TELNET "ls" En clair "a.out" exécution locale de la commande "ls" TELNET "a.out" "ls" Chiffrement Chiffrement exécution locale de la commande "ls" "a.out" Déchiffrement Canal confidentiel Déchiffrement "a.out" S.JEAN, octobre 2004, v1.2, le shell sécurisé 7

Ouverture de session sécurisée 4/4 de bout en bout $ ssh -l jean proton.inrialpes.fr jean@proton.inrialpes.fr's password: ********* Non sûr Canal sécurisé jean@proton jean]$ telnet ici.la-bas.com NON! TELNET Canal non sécurisé TELNET $ ssh -l jean proton.inrialpes.fr Canal sécurisé jean@proton.inrialpes.fr's password: ********* Sûr jean@proton jean]$ ssh user@ici.la-bas.com OUI! Canal sécurisé S.JEAN, octobre 2004, v1.2, le shell sécurisé 8

Copie de fichiers sécurisée 1/2 Utilisation de l outil scp (front-end pour ssh) Système de fichiers local protocole SCP Système de fichiers distant R1 F1 F2 R3 F7 F2 R2 F4 F5 F6 F8 $ scp /R1/F2 jean@proton.inrialpes.fr:/r3/f2 $ scp jean@proton.inrialpes.fr:/r3/f7 /R2/F8 option p : conserve les attributs (rwx) du fichier origine option r : copie récursivement des répertoires entiers S.JEAN, octobre 2004, v1.2, le shell sécurisé 9

Copie de fichiers sécurisée 2/2 Utilisation de l outil sftp $ sftp jean@proton.inrialpes.fr Connecting to proton.inrialpes.fr... jean@proton.inrialpes.fr's password: ******** sftp> ls a.out sftp> get a.out SFTP Système de fichiers local protocole SCP SFTP Système de fichiers distant Identique à FTP mais le protocole de transfert de fichiers SFTP repose sur le canal de communication sécurisé par (comme SCP) Le sftp repose sur le qui va dialoguer avec le distant pour lancer le sftp distant et sécuriser les échanges de données. S.JEAN, octobre 2004, v1.2, le shell sécurisé 10

Architecture de 2 Rem : la version courante est 2, plus évoluée, mais compatible avec 1 > ssh terminal Protocole de connexion shell $ agent canaux socket agent port TCP dérouté socket TCP clés d utilisateur Protocole d authentification de l utilisateur authentificateur = f (aléa) U clé d utilisateur U U U mot de passe mot de passe Protocole de transport TCP compression intégrité, confidentialité clés de session clés d hôte clé d hôte H authentificateur = f (aléa) K Authentification du H H S.JEAN, octobre 2004, v1.2, le shell sécurisé 11

Déroulement d une session 2 1/4 1. Le contacte le 22 En établissant une connexion TCP sur le port (typiquement 22) No. Time Source Destination Protocol Info 1 12.367021 192.168.1.100 194.199.25.122 TCP 2260 > 22 [SYN] Seq=0 Ack=0 Win=16384 Len=0 MSS=1460 2 12.434373 194.199.25.122 192.168.1.100 TCP 22 > 2260 [SYN, ACK] Seq=0 Ack=1 Win=5840 Len=0 MSS=1420 3 12.434417 192.168.1.100 194.199.25.122 TCP 2260 > 22 [ACK] Seq=1 Ack=1 Win=17040 Len=0 2. Serveur et s échangent les versions de qu ils supportent No. Time Source Destination Protocol Info 4 12.697789 194.199.25.122 192.168.1.100 Server Protocol: -1.99-Open_3.6.1p2 5 12.698040 192.168.1.100 194.199.25.122 Client Protocol: -2.0-Open_3.8p1 S.JEAN, octobre 2004, v1.2, le shell sécurisé 12

Déroulement d une session 2 2/4 3. Client et Serveur s échangent : des informations sur les algorithmes à utiliser par la suite algorithme pour l échange de clé algorithmes de chiffrements symétriques pour assurer la confidentialité algorithmes de hachage pour le contrôle d intégrité une clé secrète de session cette clé est transmise en utilisant un algorithme d échange de clé sécurisé No. Time Source Destination Protocol Info 6 12.760787 192.168.1.100 194.199.25.122 v2 Client: Key Exchange Init 7 12.795994 194.199.25.122 192.168.1.100 v2 Server: Key Exchange Init 8 12.921750 192.168.1.100 194.199.25.122 v2 Client: Diffie-Hellman GEX Request 9 13.030701 194.199.25.122 192.168.1.100 v2 Server: Diffie-Hellman Key Exchange Reply 10 13.033616 192.168.1.100 194.199.25.122 v2 Client: Diffie-Hellman GEX Init 11 13.134283 194.199.25.122 192.168.1.100 v2 Server: Diffie-Hellman GEX Reply 12 13.139335 192.168.1.100 194.199.25.122 v2 Client: New Keys S.JEAN, octobre 2004, v1.2, le shell sécurisé 13

Déroulement d une session 2 3/4 4. Client et Serveur s authentifient mutuellement à travers le canal sécurisé le est authentifié par un challenge utilisant sa clé privée le vérifie le challenge avec la clé publique du clé d hôte H H le est authentifié soit : par un mot de passe par un challenge utilisant sa clé privée le vérifie le challenge avec la clé publique du U clé d utilisateur U S.JEAN, octobre 2004, v1.2, le shell sécurisé 14

Déroulement d une session 2 4/4 5. Le peut ensuite demander l exécution de commandes distantes protocole basé sur l échange en requête réponse de paquets chiffrés No. Time Source Destination Protocol Info 13 13.386310 192.168.1.100 194.199.25.122 v2 Encrypted request packet len=80 14 13.387050 194.199.25.122 194.199.25.122 v2 Encrypted response packet len=240 6. Lorsque le a terminé, il met fin à la connexion S.JEAN, octobre 2004, v1.2, le shell sécurisé 15

Authentification du 1/6 L authentification du est réalisée soit : par mot de passe le mot de passe est envoyé sur le à travers le canal sécurisé Pb : le mot de passe peut être capturé sur le une fois décrypté. par des moyens cryptographiques L authentification est réalisée via un challenge cryptographique prouvant que le possède bien la clé privée qui est associée à la clé publique le concernant et que détient le S.JEAN, octobre 2004, v1.2, le shell sécurisé 16

Authentification du 2/6 Authentification par challenge cryptographique : exemples avec Le doit générer une paire de clé (privée/publique) version 3.8 (2) Outil ssh-keygen type de clé (dsa par défaut pour 2) taille de clé (en bits) commentaire $ ssh-keygen -t rsa -f bazid_rsa -b 1024 -C testkey Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in bazid_rsa. Your public key has been saved in bazid_rsa.pub. The key fingerprint is: 45:84:7f:a7:49:b8:44:04:19:6b:4f:87:75:fe:ac:e9 testkey Tous les fichiers utilisateur (clés, ) liés à doivent être en accès «700» $ ls ~/.ssh bazid_rsa bazid_rsa.pub config known_hosts La passphrase est un mot de passe servant à authentifier l utilisateur localement auprès du (pour éviter que quelqu un d autre ayant accès à la machine ne puisse se connecter en tant que cet utilisateur) S.JEAN, octobre 2004, v1.2, le shell sécurisé 17

Authentification du 3/6 Authentification par challenge cryptographique (suite) : $ cat ~/.ssh/bazid_rsa -----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,A9A78D52F2D29629 kgxtot8pg1i/atl5/dnjltdwvasvzfnwf8xexcfeaqqwjifvtoi0fi5ppvg6ar75 wauqd0yd9wsddyexfhuksbzcxpmkdk/ru9pqndodwk0ahweny8t1v3kmkmszslx5 M8Y5/1cSqcSjIGSkh1xWfB8bewGe/yl/Ztc8bnDHYUbg35cMkvc6MeZwHoUxwAub r14ndj3swzgoch3e7oivetjbbrox8sp+mzlb5f3yqoxwrncumxumhzfrevdyn5g5 ZlEherImfRAIY7nV0dHfl3PAyHrwZSp1SV6PLK05mrWrhG6JBpq9x+Z+NHW/vDZe XCSTIaX2hHm4ilE8FX8KnRpWsOjpo7WdkFgAqAkDvdtHK3Kqtbmbyy68B8Z3MpjQ W+HGAxJon4TZWUJTxfADcfZY3EV5GZIcJfHoaefJMX7xpoSDoIFdPe1h40EJVF6o wfmtv02qjxpxtjc/gsjl3vwfsfyonbf6as0/yygkl3neu52k8p1aw41zqxe/g2jm Uy+Mj42ZZBIuyHg75U0tUGZ3A8pcHpykVUsO2Jxh0Ein2sSXeaVHbOwiSSWBTejp zggjrzzzedwghgp7y2roma== -----END RSA PRIVATE KEY----- $ cat ~/.ssh/bazid_dsa.pub ssh-rsa AAAAB3NzaC1kc3MAAACBAI0wWmsXXosnketjGGaT8IEwmC1MJZvnS+UC7XS1d6gmLdivGOFz C+K2XV9V5NusrowaBzZc4qhg06jKMC3wzWk8sEyYlQjlQMArnwMcUVsouK4m/Q1v1OZn4FIrJfiHfRrK $ NlU2TmwrOinFsq4WQzO4iiaU3NAf+QHBkPN+Knt4PyUYhULEsU6gTTUVTp90NQsVDFUMqVOQPRmz/o7s bnxuy362ewwkn6+eiznj66+czdmqhgsug3xe4oypaccegpxgyw4ux/3t0kwmtiif0gucuktch+ycdc4r hcv5wwdbnaaaaibfbef/iiabrlp4e53xn1zgpxa5jvoitjlgwtspymorwjli961porrglv8yikkerk9z xmxu/3akjrdimbfd/t2nuf7gpqlmk9q5gdxjsqy2gqdnwopo0ffau2nlloctnf8zzx4r3k5giqiy2wnu whcm5sfgpviocargdib9ljbiug== testkey S.JEAN, octobre 2004, v1.2, le shell sécurisé 18

Authentification du 4/6 Authentification par challenge cryptographique (suite) : Le doit disposer dans un répertoire local (~/.ssh pour Open), d un couple de clés (publique/privée) qui lui permettront de se connecter sur le compte distant Les clés publiques associées à la connexion sur le compte distant doivent également être copiées/collées dans un fichier situé sur le compte distant (~/.ssh/authorized_keys pour Open). Il est possible, dans le cas où le compte est partagé, de différencier les accès des différents utilisateurs en leur associant chacun une clé et en associant des droits différents à ces clés compte utilisateur 1 (local) clés associées au compte 2 U U compte utilisateur 2 (distant) clé publique associée au compte 2 U fichier de configuration du S.JEAN, octobre 2004, v1.2, le shell sécurisé 19

Authentification du 5/6 Authentification par challenge cryptographique (suite) : $ cat ~/.ssh/authorized_keys ssh-rsa AAAAB3NzaC1kc3MAAACBAI0wWmsXXosnketjGGaT8IEwmC1MJZvnS+UC7XS1d6gmLdivGOFz C+K2XV9V5NusrowaBzZc4qhg06jKMC3wzWk8sEyYlQjlQMArnwMcUVsouK4m/Q1v1OZn4FIrJfiHfRrK $ NlU2TmwrOinFsq4WQzO4iiaU3NAf+QHBkPN+Knt4PyUYhULEsU6gTTUVTp90NQsVDFUMqVOQPRmz/o7s bnxuy362ewwkn6+eiznj66+czdmqhgsug3xe4oypaccegpxgyw4ux/3t0kwmtiif0gucuktch+ycdc4r hcv5wwdbnaaaaibfbef/iiabrlp4e53xn1zgpxa5jvoitjlgwtspymorwjli961porrglv8yikkerk9z xmxu/3akjrdimbfd/t2nuf7gpqlmk9q5gdxjsqy2gqdnwopo0ffau2nlloctnf8zzx4r3k5giqiy2wnu whcm5sfgpviocargdib9ljbiug== testkey juste avant «ssh-rsa», il est possible d ajouter des options qui précisent des restrictions d accès par exemple «host= 192.168.1.100» indique que les connexions sont acceptées sur présentation de cette clé uniquement depuis la machine d adresse IP 192.168.1.100 S.JEAN, octobre 2004, v1.2, le shell sécurisé 20

Authentification du 6/6 Authentification par challenge cryptographique (suite) : clé privée à utiliser pour l authentification $ ssh l jean i ~.ssh/bazid_rsa proton.inrialpes.fr Enter passphrase for key '/home/jean/.ssh/bazid_rsa': Last login: Sun Nov 7 17:08:36 2004 from localhost Fanfare!!! You are successfully logged in to this server!!! la passphrase associée à la clé est toujours demandée (authentification de l utilisateur) il est possible d omettre l option i à condition de stocker la clé privée sous le nom «identity» $ ssh l jean proton.inrialpes.fr Enter passphrase for key '/home/jean/.ssh/indentity': Last login: Sun Nov 7 17:08:36 2004 from localhost Fanfare!!! You are successfully logged in to this server!!! S.JEAN, octobre 2004, v1.2, le shell sécurisé 21

Agent 1/3 Lors d une authentification par challenge cryptographique (la méthode la plus sûre), il est nécessaire de saisir la passphrase (il est plus que déconseillé de mettre une passphrase vide) Un agent est un mandataire qui évite l intervention de l utilisateur la passphrase est saisie une seule fois au lancement de l agent très utile lors d une connexion en mode non interactif L agent peut être «transporté» pour continuer à jouer le rôle de l utilisateur sur le site distant (pour d éventuels rebond vers d autres s, ) agent transporté S.JEAN, octobre 2004, v1.2, le shell sécurisé 22

Agent 2/3 1. Lancement de l agent l agent est un processus communiquant par tube avec le, par socket avec le $ eval `ssh-agent` Agent pid 4392 Exécuter la commande ssh-agent ne permet pas de lancer l agent correctement. En s éxécutant, ssh-agent produit sur la sortie standard des commande shell qui doivent être interprétées (d où l utilisation de eval) 2. Ajout d identité à l agent indique quelles clés doivent être gérées par l agent $ ssh-add.ssh/bazid_rsa Enter passphrase for.ssh/bazid_rsa: Identity added:.ssh/bazid_rsa (.ssh/bazid_rsa) S.JEAN, octobre 2004, v1.2, le shell sécurisé 23

Agent 3/3 Options de ssh-add option l : voir les identités mandatées $ ssh-add -l 1024 45:84:7f:a7:49:b8:44:04:19:6b:4f:87:75:fe:ac:e9.ssh/bazid_rsa (RSA) option x : verrouiller l agent avec un mot de passe (éviter l utilisation frauduleuse) option X : déverrouiller l agent $ ssh-add -x Enter lock password: Again: Agent locked. $ ssh-add -X Enter lock password: Agent unlocked. S.JEAN, octobre 2004, v1.2, le shell sécurisé 24

Authentification du 1/2 clés d hôte clé d hôte H authentificateur = f (aléa) K Authentification du H H L authentification est réalisée de la même manière que pour le, via un challenge cryptographique. La clé publique du doit être copiée/collée ou importée dans un fichier situé sur le compte local (i.e. côté ) (~/.ssh/known_hosts pour Open). proton.inrialpes.fr ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAwGcmu9d7sv4b7ZNeVdaod6JV 5IO0xw97d01zUF6U+X/SOpwbmCbsl+oOOaoVF0FeE8Ddf24M/y5QDsEJLH1KDsZvqqgXFT52M4obvDld CjfmzBy0LjiVs4XftB3Sw8P70I9W2FJcwlfQfRjfO5kONEpVY+FW5FafubQjwfGa4BU= S.JEAN, octobre 2004, v1.2, le shell sécurisé 25

Authentification du 2/2 clés d hôte clé d hôte H authentificateur = f (aléa) K Authentification du H H Lors de la première connexion à un «inconnu», la clé est importée dans le fichier des hôtes connus, après confirmation de l utilisateur $ ssh -l jean proton.inrialpes.fr The authenticity of host proton.inrialpes.fr (194.199.25.2)' can't be established. RSA key fingerprint is 1a:da:63:f0:1c:01:eb:c8:1c:01:2f:21:41:eb:1c:77. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added proton' (RSA) to the list of known hosts. S.JEAN, octobre 2004, v1.2, le shell sécurisé 26

FIN! S.JEAN, octobre 2004, v1.2, le shell sécurisé 27