Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
320kerberos:10_manip_simple [le 15/02/2010 à 10:38] – prof | 320kerberos:10_manip_simple [le 30/06/2018 à 15:57] (Version actuelle) – prof | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
Voyons tout d' | Voyons tout d' | ||
===== Le décor de la scène ===== | ===== Le décor de la scène ===== | ||
- | Grâce aux avantages de KVM nous pouvons disposer d' | + | Grâce aux avantages de KVM (([[http:// |
- | * un serveur '' | + | * un serveur '' |
* un serveur '' | * un serveur '' | ||
* un client qui voudrait bien accéder au contenu de '' | * un client qui voudrait bien accéder au contenu de '' | ||
Ligne 10: | Ligne 10: | ||
==== Ça ne marche pas ==== | ==== Ça ne marche pas ==== | ||
- | Première prise, l' | + | Première prise, l' |
{{ : | {{ : | ||
- | 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' | Chris lit alors la notice où on lui explique qu'il doit d' | ||
Ligne 25: | Ligne 26: | ||
{{ : | {{ : | ||
- | 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. |
- | ===== Coup d'œil à la machinerie ===== | ||
- | Si tout ceci fonctionne, c'est parce que : | ||
- | * '' | ||
- | * des utilisateurs enregistrés (chris entre autres) ; | ||
- | * des services sur des hôtes ('' | ||
- | * '' | ||
- | * un module spécial, '' | ||
- | * un « tableau de clés » (keytab) a été placé sur ce serveur, de manière à ce qu'il sache à qui s' | ||
- | * le poste client quant-à-lui utilise les outils nécessaires à l' | ||
- | Pour les trois protagonistes, | ||
- | ==== krb5.conf ==== | ||
- | C'est le fichier de configuration du royaume, commun ici à tous les protagonistes : | ||
- | < | ||
- | [realms] | ||
- | MAISON.MRS = { | ||
- | kdc = 192.168.0.133 | ||
- | admin_server = 192.168.0.133 # kerberos.maison.mrs | ||
- | default_domain = MAISON.MRS | ||
- | } | ||
- | |||
- | [domain_realm] | ||
- | .maison.mrs = MAISON.MRS | ||
- | | ||
- | |||
- | [logging] | ||
- | default = FILE:/ | ||
- | kdc = FILE:/ | ||
- | admin-server = FILE:/ | ||
- | |||
- | [appdefaults] | ||
- | pam = { | ||
- | debug = true | ||
- | forwardable = true | ||
- | krb4_convert = false | ||
- | } | ||
- | </ | ||
- | Pour l' | ||
- | |||
- | Le peu qu'il y a ici n'est pas très difficile à interpréter, | ||
- | * '' | ||
- | * '' | ||
- | Les noms sont assez explicites. | ||
- | |||
- | L' | ||
- | |||
- | En réalité, la définition des royaumes peut être plus complexe, un hôte peut appartenir à plusieurs royaumes et un utilisateur peut s' | ||
- | |||
- | ==== le keytab d' | ||
- | Sur apache, nous avons un tableau de clés que l'on peut consulter avec la commande klist : | ||
- | < | ||
- | apache-krb: | ||
- | Keytab name: FILE:/ | ||
- | KVNO Principal | ||
- | ---- -------------------------------------------------------------------------- | ||
- | 3 host/ | ||
- | 3 host/ | ||
- | 3 host/ | ||
- | 3 host/ | ||
- | 3 HTTP/ | ||
- | 3 HTTP/ | ||
- | 3 HTTP/ | ||
- | 3 HTTP/ | ||
- | </ | ||
- | Prenons-le comme tel pour le moment, nous comprendrons mieux plus tard. | ||
- | ==== configuration d' | ||
- | Il s'agit de la configuration par défaut du serveur par défaut à laquelle il a été ajouté les paramètres relatifs à l' | ||
- | < | ||
- | & | ||
- | <span class=" | ||
- | AuthType Kerberos | ||
- | Krb5Keytab / | ||
- | KrbMethodK5Passwd off | ||
- | KrbSaveCredentials on | ||
- | require valid-user</ | ||
- | |||
- | Options Indexes FollowSymLinks MultiViews | ||
- | AllowOverride None | ||
- | Order allow,deny | ||
- | allow from all | ||
- | & | ||
- | </ | ||
- | Pour ceux qui ont envie d'en savoir plus sur les paramètres que l'on peut passer au module, voyez [[http:// | ||
- | |||
- | ==== Le principal ==== | ||
- | Dans l' | ||
- | < | ||
- | root@pchris: | ||
- | Authenticating as principal chris/admin with password. | ||
- | Password for chris/ | ||
- | kadmin: | ||
- | |||
- | HTTP/ | ||
- | K/ | ||
- | chris/ | ||
- | chris@MAISON.MRS | ||
- | host/ | ||
- | host/ | ||
- | kadmin/ | ||
- | kadmin/ | ||
- | kadmin/ | ||
- | kadmin/ | ||
- | krbtgt/ | ||
- | </ | ||
- | |||
- | Passons sur les détails, certains de ces principaux sont créés à l' | ||
- | * chris@MAISON.MRS | ||
- | * host/ | ||
- | * HTTP/ | ||
- | entre autres. Nous retrouvons deux éléments qui figurent sur le tableau de clés de '' | ||
===== 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' | + | * l' |
- | * lorsque l' | + | * lorsque l' |
- | + | ||
- | Nous avons donc pu constater de façon subtile l' | + | |
- | Reste à démonter le mécanisme et à voir de plus près l'aspect sécuritaire | + | Nous avons donc pu constater |
Démonstration simple: Dernière modification le: 15/02/2010 à 10:38 par prof