Outils pour utilisateurs

Outils du site


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édentesRévision précédente
Prochaine révision
Révision précédente
320kerberos:10_manip_simple [le 15/02/2010 à 10:39] prof320kerberos:10_manip_simple [le 30/06/2018 à 15:57] (Version actuelle) prof
Ligne 2: Ligne 2:
 Voyons tout d'abord comment ça se présente du côté de l'utilisateur à peine averti, sur une plateforme de tests très rudimentaire. Voyons tout d'abord comment ça se présente du côté de l'utilisateur à peine averti, sur une plateforme de tests très rudimentaire.
 ===== Le décor de la scène ===== ===== Le décor de la scène =====
-Grâce aux avantages de KVM nous pouvons disposer d'autant de machines que nous le souhaitons, profitons-en. +Grâce aux avantages de KVM (([[http://www.linux-kvm.org/page/Main_Page|Kernel-based Virtual Machine]])) nous pouvons disposer d'autant de machines que nous le souhaitons, profitons-en. 
-  * un serveur ''kerberos.maison.mrs'' se charge de faire fonctionner l'usine à gaz ;+  * un serveur ''kerberos.maison.mrs'' se charge de faire fonctionner l'usine à gaz (AS et TGS, le tout appelé KDC comme Key Distribution Center) ;
   * un serveur ''apache-krb.maison.mrs'' est un serveur http tout bête, sauf qu'il n'autorise l'accès qu'aux personnes duement authentifiées par kerberos ;   * un serveur ''apache-krb.maison.mrs'' est un serveur http tout bête, sauf qu'il n'autorise l'accès qu'aux personnes duement authentifiées par kerberos ;
   * un client qui voudrait bien accéder au contenu de ''apache-krb.maison.mrs'' depuis un poste de travail qui dispose des outils nécessaires pour dialoguer avec ''kerberos.maison.mrs''.   * un client qui voudrait bien accéder au contenu de ''apache-krb.maison.mrs'' depuis un poste de travail qui dispose des outils nécessaires pour dialoguer avec ''kerberos.maison.mrs''.
Ligne 10: Ligne 10:
  
 ==== Ça ne marche pas ==== ==== Ça ne marche pas ====
-Première prise, l'utilisateur, qui s'appèle ''chris'', n'a pas fait risette à kerberos, et essaye d'accéder à ''%%http://apache-kerb.maison.mrs%%'' :+Première prise, l'utilisateur, qui s'appèle ''chris'', n'a pas fait risette au cerbère, et essaye d'accéder à ''%%http://apache-kerb.maison.mrs%%'' :
  
 {{ :320kerberos:err401.png?720 |No Ticket}} {{ :320kerberos:err401.png?720 |No Ticket}}
-Il se fait jeter...+Il se fait jeter dehors... 
 ==== Risette à kerberos ==== ==== Risette à kerberos ====
 Chris lit alors la notice où on lui explique qu'il doit d'abord s'authentifier auprès du cerbère en utilisant la commande ''kinit'' : Chris lit alors la notice où on lui explique qu'il doit d'abord s'authentifier auprès du cerbère en utilisant la commande ''kinit'' :
Ligne 25: Ligne 26:
 {{ :320kerberos:it-works.png?720 |ça marche}} {{ :320kerberos:it-works.png?720 |ça marche}}
  
-Et là, chris peut fermer son navigateur puis le ré-ouvrir, retourner sur la même page et ça marchera encore.+Et là, chris peut fermer son navigateur puis le ré-ouvrir, retourner sur la même page. Il sera automatiquement reconnu durant toute la validité de son ticket.
  
  
Ligne 35: Ligne 36:
 ===== Faisons le point ===== ===== Faisons le point =====
 Nous avons pu observer suffisamment de choses pour mieux comprendre le principe de kerberos et accessoirement pourquoi ce protocole a-t-il été appelé ainsi. Nous avons pu observer suffisamment de choses pour mieux comprendre le principe de kerberos et accessoirement pourquoi ce protocole a-t-il été appelé ainsi.
-  * l'utilisateur doit disposer d'un ''principal'' dont il fait la demande à une entité nommée ''AS'', au moyen de la commande ''kinit''. Nous verrons plus loin que cette demande peut être automatisée lors de l'ouverture de la session par l'utilisateur. Cette procédure aboutit au fait que l'utilisateur en question a été authentifié par « l'AS » qui lui a transmis une « chose » (le ''principal'') dont la validité est limitée dans le temps ; +  * l'utilisateur doit disposer d'un ''principal'' dont il fait la demande à une entité nommée ''AS'', au moyen de la commande ''kinit''. Nous verrons plus loin que cette demande peut être automatisée lors de l'ouverture de la session par l'utilisateur. Cette procédure aboutit au fait que l'utilisateur en question a été authentifié par « l'AS » qui lui a transmis une « chose » (le ''TGT'') dont la validité est limitée dans le temps ; 
-  * lorsque l'utilisateur souhaite utiliser un service soumis à une authentification par kerberos, sous réserve que l'application cliente qui doit communiquer avec ce service sache le faire, le client obtient silencieusement un « ticket spécial » en faisant une requête non moins silencieuse au service TGS de kerberos, et que ce ticket spécial lui ouvre les portes du service convoité+  * lorsque l'utilisateur souhaite utiliser un service soumis à une authentification par kerberos, sous réserve que l'application cliente qui doit communiquer avec ce service sache le faire, le client obtient silencieusement un « ticket de service » en faisant une requête non moins silencieuse au service TGS de kerberos, et que ce ticket de service lui ouvre les portes du service convoité.
- +
-Nous avons donc pu constater de façon subtile l'effet « SSO » de kerberos. Cet effet serait bien sûr beaucoup plus visible si en plus d'un service http, nous avions mis en place d'autres services, comme un système de fichier en réseau (NFS v4 par exemple), ssh, ftp voire aussi un proxy http comme squid.+
  
-Reste à démonter le mécanisme et à voir de plus près l'aspect sécuritaire de ce protocole.+Nous avons donc pu constater de façon subtile l'effet « SSO » de kerberos. Cet effet serait bien sûr beaucoup plus visible si en plus d'un service http, nous avions mis en place d'autres services, comme un système de fichier en réseau (NFS v4 par exemple), ssh, ftp voir aussi un proxy http comme squid.
Démonstration simple: Dernière modification le: 15/02/2010 à 10:39 par prof