Outils pour utilisateurs

Outils du site


reseau:debian:sequencesessionssh

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
reseau:debian:sequencesessionssh [2023/05/21 17:10]
techer.charles_educ-valadon-limoges.fr
reseau:debian:sequencesessionssh [2023/05/29 21:16] (Version actuelle)
techer.charles_educ-valadon-limoges.fr [Diagramme de séquence de l'établissement d'une session SSH]
Ligne 1: Ligne 1:
 ====== Diagramme de séquence de l'établissement d'une session SSH ====== ====== Diagramme de séquence de l'établissement d'une session SSH ======
 +<uml>
 +@startuml
 +group Etablissement d'une session 3-Way Handshake
 +ClientSSH  -> Serveur   : demande session avec paquet SYN (Synchronize)
 +Serveur    -> ClientSSH : approuve connexion avec paquet SYN-ACK (acknowledgement)
 +ClientSSH  -> Serveur   : confirme avec paquet ACK
 +end
 +group Etablissement de la session 
 +ClientSSH -> Serveur    : annonce la version de SSH utilisée
 +Serveur   -> ClientSSH  : annonce la version de SSH utilisée
 +ClientSSH -> ClientSSH : génèrent paires de clés\npubliques-privées\ntemporaires
 +Serveur   -> Serveur : génèrent paires de clés\npubliques-privées\ntemporaires
 +ClientSSH -> Serveur    : Initialisation échange de clé\n(Key Exchange Init)
 +note left : paramètres :\nalgorithmes\nMAC\ncompression
 +Serveur   -> ClientSSH  : réponse à l'initialisation de l'échange de clé\n(Key Exchange Init)
 +note right : paramètres :\nalgorithmes\nMAC\ncompression
 +ClientSSH -> Serveur    : Initialisation d’échange de clés Diffie-Hellman\n(Elliptic Curve Diffie-Hellman Key Exchange Init)
 +note left : Envoi clé publique\néphémère\n+ le résultat\nd'un calcul\nsigné 
 +Serveur   -> Serveur    : détermination\nclé partagée\n(symétrique)
 +Serveur   -> ClientSSH  : Réponse d’échange de clés Diffie-Hellman\n(Elliptic Curve Diffie-Hellman Key Exchange Reply, New Keys) 
 +note right : Envoi le résultat\nd'un calcul \signé\n+informe nouvelle\nclé partagée calculée\n+ empreintre ou certificat
 +ClientSSH -> ClientSSH :  Vérification de l'identité du serveur\nAcceptation de l'identité du serveur
 +ClientSSH -> ClientSSH  : détermination\nclé partagée\n(symétrique)
 +ClientSSH -> Serveur  : informe nouvelle clé partagée calculée
 +end
 +group Etablissement d'un canal sécurisé
 +end
 +group Authentification par mot de passe 
 +Serveur -> ClientSSH : demande saisie login
 +ClientSSH -> Serveur : envoi login
 +Serveur -> ClientSSH : demande saisie mot de passe
 +ClientSSH -> Serveur : envoi mot de passe
 +Serveur -> Serveur : vérification login et mot de passe
 +end
 +group Communication chifrée entre le client et le serveur durant toute la session
 +
 +end
 +group Deconnexion
 +ClientSSH -> Serveur   : déconnexion avec paquet RST,ACK (Reset)
 +Serveur -> ClientSSH   : approuve déconnexion avec paquet ACK
 +end
 +@enduml
 +</uml>
 +===== Compléments =====
 +  * [[bloc3s1:tcp|Les connexions TCP]]
 +  * l'algorithme **chacha20_poly1305** ([[https://www.rfc-editor.org/info/rfc7539|RFC 7539]]) 
 +
 +L'agorithme de chiffrement symétrique **ChaCha20** est utilisé à la place de **AES 256**.
 +  * **ChaCha20** : algorithme de chiffrement symétrique plus rapide qu'AES sur un matériel générique (mise en œuvre purement en logiciel)
 +  * **Poly1305** : c’est un **MAC** (message authentication code) qui permet d’assurer l'**intégrité des données** en vérifiant qu'elles n'ont subi aucune modification après une transmission. C'est une fonctionnalité semblable à une fonction de hachage.
 +
 +La combinaison de ces deux algortihmes permet de faire du chiffrement intègre.
 +
 +===== Ressources =====
 +  * https://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9s_Diffie-Hellman
 +  * https://www.adikts.io/mieux-comprendre-ssh-et-lauthentification-par-cles/
 +  * https://www.bortzmeyer.org/7539.html
 +  * https://fr.wikipedia.org/wiki/Code_d%27authentification_de_message
 +  * https://serverfault.com/questions/586638/understand-wireshark-capture-for-ssh-key-exchange
 +  * https://serveur.ipgirl.com/comprendre-la-capture-wireshark-pour-lchange-de-keys-ssh.html
 +
  
  
reseau/debian/sequencesessionssh.1684681831.txt.gz · Dernière modification: 2023/05/21 17:10 de techer.charles_educ-valadon-limoges.fr