
我透過 yum 指令在 CentOS 7 上安裝了 Kerberos。
yum install krb5-server krb5-libs krb5-workstation pam_krb5 -y
我的情況如下:
- 有 1 個 KDC。
- 它有 2 個服務伺服器。
KDC 的 krb5.conf 檔案設定如下。
# 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
我使用以下命令新增了主機主體。
# 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
我使用以下命令新增了用戶主體。
# kadmin.local -q 'addprinc eric'
上面新增了使用者主體後,透過下面的ssh指令,無需密碼即可成功連接兩台業務伺服器。
順便說一句,我想管理一個可由使用者主體存取的服務伺服器。
我想知道如何設定新增的使用者主體不存取領域的特定主機主體。
總而言之,我想了解如何使新增的使用者主體只能在服務伺服器之間eric
存取。api.myrealm.net
我新增了使用者主體和主機主體,並將主機主體金鑰表檔案複製到服務伺服器。
無需密碼即可成功存取同域業務伺服器。
但是,我想要做的是管理每個使用者主體的授權。
答案1
作為我的問題的答案,我建議使用 FreeIPA。在 FreeIPA 中建立策略並針對每個使用者應用它,解決了我想要的問題。