2017-01-20 4 views
0

J'ai installé Kerberos for Windows sur une nouvelle machine Windows 8.1 installée.Kerberos: kinit sur Windows 8.1 conduit au cache de ticket vide

  • Domaine: non défini
  • Groupe de travail: workgroup

J'ai modifié le fichier krb5.ini dans C:\ProgramData\MIT\Kerberos5 répertoire comme ceci:

[libdefaults] 
    default_realm = HSHADOOPCLUSTER.DE 

[realms] 
    HSHADOOPCLUSTER.DE = { 
    admin_server = had-job.server.de 
    kdc = had-job.server.de 
    } 

Après un redémarrage, je fis un kinit -kt daniel.keytab daniel pour authentifier moi contre le Royaume via la console. Obtenir également un ticket par utilisateur et mot de passe via le Kerberos Ticket Manager semble fonctionner correctement, car le ticket est affiché dans l'interface utilisateur.

Ce que je me demande est-ce que quand je l'appelle un klist je reçois une liste vide de retour, qui dit quelque chose comme cached tickets: 0:

enter image description here

Cela me semble pas normal, comme mon Ubuntu ordinateur montre des billets valides par klist après un kinit.

Qu'est-ce que je fais mal? Est-ce qu'il y a plus de configuration à faire? Parfois, je lis sur un outil ksetup, mais je ne sais pas quels paramètres ici sont neccessary et qui ...

===================== =======================================

Après avoir mis

[libdefaults] 
    ... 
    default_ccache_name = FILE:C:/ProgramData/Kerberos/krb5cc_%{uid} 

dans krb5.conf, la commande kinit via la console et via Kerberos Ticket Manager crée un fichier dans le chemin spécifié. Jusqu'à présent, tout semble bien. Mais: La commande kinit crée des tickets avec des noms de fichiers très différents (long ou court), selon que je lance la console en tant que "admin" (nom court) ou non (nom long), voir la capture d'écran ci-dessous. Le ticket Kerberos Manager affiche seulement l'un des billets:

  • Si exécuter en tant qu'administrateur:
    • Affiche le billet que j'ai créé via la console d'administration
    • crée des fichiers de billets avec des noms de fichiers courts
  • Si exécuté comme d'habitude:
    • Affiche le ticket que j'ai créé via la console "normale"
    • crée des fichiers de billets avec de longs noms de fichiers

enter image description here

La commande klist ne montre pas encore les billets mises en cache, indépendants si la console a été ouverte en tant qu'administrateur ou non.

+0

Vous avez plusieurs questions ouvertes dans ce forum; J'ai demandé des éclaircissements sur quelques-uns d'entre eux et vous n'avez répondu à aucun d'entre eux. Dans ce cas, il devient finalement un gaspillage du temps d'une personne essayant de vous aider. Je suis intéressé à vous aider, mais je ne vais pas répondre à vos questions avant d'avoir répondu aux questions précédentes. –

+0

@ D.Müller - avez-vous résolu votre problème? (il pourrait m'aider :)) – Dieter

+0

J'utilise simplement la console de Windows et fais un "kinit -kt C: \ myuser.keytab myusername". Le cache de tickets est toujours vide, mais le ticket est créé et je peux m'authentifier (par exemple sur mon cluster Hadoop Kerberisé)! –

Répondre

3

Les MIT Kerberos documentation souligne que ...

Il existe plusieurs types d'informations d'identification en cache pris en charge dans la bibliothèque Kerberos MIT . Tous ne sont pas supportés sur toutes les plateformes ...
- FICHIER Les caches sont les plus simples et les plus portables. Un format de fichier plat simple est utilisé pour stocker un justificatif après l'autre. C'est le par défaut ...
- L'API est uniquement implémentée sous Windows. Il communique avec un processus serveur qui contient les informations d'identification dans la mémoire ...

Le nom par défaut du cache d'informations d'identification est déterminée par ...
- La variable d'environnement KRB5CCNAME ...
- La variable profil default_ccache_name dans [libdefaults ]
- la valeur par défaut hardcoded, DEFCCNAME

Mais autant que je sache, Windows, le cache par défaut est hardcoded API: et c'est ce que vous pouvez gérer w avec l'interface utilisateur. kinit utilise également ce protocole par défaut.

je pourrais personnellement jamais utiliser klist à utiliser ce protocole, même avec la syntaxe "standard", à savoir soit
    klist -c API:
ou
    set KRB5CCNAME=API:
    klist

D'autre part , si vous pointez KRB5CCNAME à FILE:***** alors vous pouvez kinit puis klist le ticket; mais il n'apparaîtra pas dans l'interface utilisateur et ne sera pas disponible pour les navigateurs Web et autres.

+0

Je viens de mettre le "default_ccache_name" à "FILE: C:/ProgramData/Kerberos/krb5cc _% {uid}" dans mon fichier "krb5.conf". La commande "kinit" crée maintenant le fichier ticket dans ce répertoire. Je suis toujours en mesure de voir le ticket dans mon interface utilisateur, et "klist" ne montre toujours pas de tickets en cache. –

+0

Comportement étrange: Si j'ouvre ma console Windows en tant qu'administrateur et que je crée un "kinit", l'interface utilisateur de Kerberos Ticket Manager n'affiche pas le ticket. Mais si je cours normalement la console, le "kinit" crée un ticket qui est montré dans l'interface utilisateur. Cependant, "klist" ne fonctionne toujours pas! –

+0

klist n'affiche pas les tickets, mais ils sont valides, comme je le fais par exemple. pouvez ouvrir une interface Web Hadoop sécurisée par Kerberos après avoir créé une kinit dans ma console Windows. –