
Ich verwende TACACS+, um Linux-Benutzer mit dem PAM-Modul pam_tacplus.so zu authentifizieren, und es funktioniert ohne Probleme.
Ich habe das Modul pam_tacplus geändert, um einige meiner benutzerdefinierten Anforderungen zu erfüllen.
Ich weiß, dass TACACS+ standardmäßig keine Möglichkeit hat, Linux-Gruppen oder die Zugriffsebenenkontrolle über Linux-Bash-Befehle zu unterstützen. Allerdings frage ich mich, ob es eine Möglichkeit gibt, einige Informationen von der TACACS+-Serverseite an das Modul pam_tacplus.so weiterzugeben, mit dem die Benutzergruppe [vom PAM-Modul selbst] im laufenden Betrieb zugelassen/verweigert oder geändert werden kann.
Beispiel: Wenn ich die Berechtigungsnummer vom Server an den Client weitergeben könnte und diese für einige Entscheidungen im PAM-Modul verwendet werden könnte.
PS: Ich würde eine Methode bevorzugen, bei der keine Änderungen am Server-[Code] erforderlich sind. Alle Änderungen sollten auf der Linux-Seite erfolgen, d. h. im Modul pam_tacplus.
Vielen Dank für jede Hilfe.
Antwort1
Irgendwann habe ich es zum Laufen gebracht.
Fehler 1:
Mein Problem bestand darin, dass nur sehr wenig Dokumentation zur Konfiguration des TACACS+-Servers für ein Nicht-CISCO-Gerät verfügbar ist.
Problem 2:
Die von mir verwendete tac_plus-Version
tac_plus -v
tac_plus version F4.0.4.28
scheint nicht zu unterstützen
service = shell protocol = ssh
Option in der Datei tac_plus.conf.
Also habe ich schließlich
service = system {
default attribute = permit
priv-lvl = 15
}
Auf der Clientseite (pam_tacplus.so),
Ich habe in der Autorisierungsphase (pam_acct_mgmt) den AVP-Dienst „service=system“ gesendet, wodurch der Dienst gezwungen wurde, die in der Konfigurationsdatei definierte Berechtigungsstufe zurückzugeben, die ich zur Festlegung der Geräteberechtigungsstufe des Benutzers verwendet habe.
HINWEIS: In einigen Dokumentationen wird erwähnt, dass service=system nicht mehr verwendet wird. Daher funktioniert diese Option möglicherweise nicht mit CISCO-Geräten.
HTH