AFS-Client-Fehlermeldung „Tokens sind abgelaufen“

AFS-Client-Fehlermeldung „Tokens sind abgelaufen“

Ich sehe die folgenden Syslog-Einträge etwa ein- bis zweimal am Tag auf einem meiner Server. Dieser Server sichert Dateien mithilfe eines Kerberos-Dienstprinzipals im AFS-Speicher:

Dec  6 04:01:06 myserver kernel: [3681180.757245] afs: Tokens for user of AFS id -1 for cell realm.example.com have expired (server 192.168.22.24)

Auf dem Server läuft Debian Wheezy 64-Bit. Was kann ich tun, um herauszufinden, was diese Meldung verursacht?

Antwort1

Ein wahrscheinlicher Grund für die ID -1 ist, dass die Token ungefähr zur selben Zeit zerstört wurden, als die Nachricht erschien. Entweder hat jemand die Token „entloggt“, oder (wahrscheinlicher) die regelmäßigen Aufräumprozesse im Kernelmodul haben bemerkt, dass die Token abgelaufen waren, und sie ungültig gemacht. Eine ID von -1 ist eine Möglichkeit, Token als ungültig zu kennzeichnen (das ist die ViceId in der Struktur „unixuser“ im Kernelmodul openafs). Wenn Sie in dieser Nachricht immer eine ID -1 sehen, ist es nicht wirklich möglich,wissenwas diese Nachrichten konkret auslöst, es sei denn, es werden zu diesem Zeitpunkt nur wenige Dinge ausgeführt, die gegenüber AFS authentifiziert sind.

Wenn Sie es nicht bereits verwenden, sollten Sie k5start oder krenew (beide im Paket „kstart“ in Debian) mit der Option -t verwenden, um sicherzustellen, dass Ihr Prozess zum Sichern von Dateien über nicht abgelaufene Token für den Zugriff auf AFS verfügt.

Wenn Sie jedoch k5start verwenden, kann es aufgrund einiger Sonderfälle bei der Funktionsweise der Option -K dennoch zu Zugriffsfehlern mit abgelaufenen Token kommen:http://permalink.gmane.org/gmane.comp.encryption.kerberos.general/18343. Da k5start mit -K nur garantiert, dass seine krb5-Tickets in Zukunft 2 Minuten lang gültig sind, ist es möglich, AFS-Token zu erhalten, die in Zukunft etwa 2 Minuten oder weniger gültig sind. Wenn diese 2-Minuten-gültigen Token verwendet werden, um den AFS-Dateiserver zu kontaktieren, und die Kommunikation länger als 2 Minuten dauert, kann der Zugriff mit „Token abgelaufen“ fehlschlagen. Oder wenn die maximale Ticketlebensdauer für den AFS-Dienstprinzipal kürzer ist als die maximale Ticketlebensdauer für das TGT, können die AFS-Token vor Ihren Tickets ablaufen, und daher würde k5start sie ablaufen lassen.

Sie können sicherstellen, dass dies nicht passiert, indem Sie die garantierte Ticketlebensdauer erhöhen, indem Sie die Option -H zusammen mit der Option -K verwenden. Stellen Sie -H einfach auf einen Wert ein, der höher ist als der Standardwert von 2 Minuten; vielleicht 30 Minuten oder eine Stunde. Oder Sie können die Option -a verwenden, um Tickets immer zu erneuern, wenn k5start/krenew aktiviert wird (das würde ich empfehlen). Allerdings ist alles in diesem Absatz mit der neuesten veröffentlichten Version von k5start nicht möglich, also müssen Sie dazu auf eine neue Version von k5start warten oder es aus Git erstellen.

Eine andere Möglichkeit, dieses Problem zu lösen, besteht darin, k5start nicht zu verwenden und Ihr eigenes Skript etwa kinit -kt /path/to/keytab && aklogstündlich im selben PAG wie den Prozess zum Sichern der Dateien in AFS auszuführen.

verwandte Informationen