
Ich habe Kerberos auf CentOS 7 per Yum-Befehl installiert.
yum install krb5-server krb5-libs krb5-workstation pam_krb5 -y
Meine Situation ist wie folgt:
- Es gibt 1 KDC.
- Es verfügt über 2 Serviceserver.
Die krb5.conf-Datei des KDC ist wie folgt eingestellt.
# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
default_realm = MYREALM.NET
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
MYREALM.NET = {
kdc = kdc.myrealm.net
admin_server = kdc.myrealm.net
}
[domain_realm]
.myrealm.net = MYREALM.NET
myrealm.net = MYREALM.NET
Und ich habe den Host-Principal mit dem folgenden Befehl hinzugefügt.
# kadmin.local -q 'addprinc -randkey host/build.myrealm.net'
# kadmin.local -q 'ktadd -k /tmp/build.keytab host/build.myrealm.net'
# scp /tmp/build.keytab build.myrealm.net:/etc/krb5.keytab
# kadmin.local -q 'addprinc -randkey host/api.myrealm.net'
# kadmin.local -q 'ktadd -k /tmp/api.keytab host/api.myrealm.net'
# scp /tmp/api.keytab api.myrealm.net:/etc/krb5.keytab
Und ich habe mit dem folgenden Befehl einen Benutzerprinzipal hinzugefügt.
# kadmin.local -q 'addprinc eric'
Mit dem oben hinzugefügten Benutzerprinzipal werden die beiden Service-Server durch den folgenden SSH-Befehl erfolgreich ohne Passwort verbunden.
Übrigens möchte ich einen Service-Server verwalten, auf den der Benutzerprinzipal zugreifen kann.
Ich frage mich, wie ich den hinzugefügten Benutzerprinzipal so einstellen kann, dass er nicht auf einen bestimmten Hostprinzipal von Bereichen zugreift.
Zusammenfassend hätte ich gern einen Rat, wie ich den hinzugefügten Benutzerprinzipal eric
nur für api.myrealm.net
die Serviceserver zugänglich machen kann.
Ich habe einen Benutzerprinzipal und einen Hostprinzipal hinzugefügt und die Keytab-Datei des Hostprinzipals auf den Serviceserver kopiert.
Der Zugriff auf den Service-Server im gleichen Realm ist ohne Passwort erfolgreich.
Ich möchte jedoch die Autorisierung pro Benutzerprinzipal verwalten.
Antwort1
Als Antwort auf meine Frage empfehle ich die Verwendung von FreeIPA. Das Erstellen einer Richtlinie in FreeIPA und deren Anwendung auf Benutzerbasis hat mein beabsichtigtes Problem gelöst.