Nfs
授予 linux 服務使用者對 Kerberos NFS 共享的訪問權限
我在兩個 raspbian buster 發行版上執行 NFSv4 伺服器和客戶端。我使用 Kerberos 來保護 NFS 共享。
在 NFS 客戶端上,我使用 git 使用者執行 gitea 服務,該服務在啟動時啟動。我想將 git 儲存庫儲存在 NFS 共享上,因此 git 使用者需要訪問它。
當我登錄到 git 使用者並執行時,
kinit
我可以毫無問題地訪問共享。有沒有辦法讓 gitea 服務自動詢問 Kerberos 票證並更新它,以便該服務可以在沒有我干預的情況下訪問 NFS 共享?
我做了一些研究,我有一些想法,但不確定實現它的最佳方法是什麼。
- 我可以執行一個定期執行
kinit
.- 這個執行緒談論 SSSD(我不知道)
- 我可以手動進行初始設置
kinit
並設置很長的票證生命週期,但從安全形度來看,這不是一個好習慣。(我是 Kerberos 和 NFS 的新手,所以它們可能配置不當,但它可以工作)
謝謝 !
你基本上有兩種選擇:
- 以root身份執行所有內容,因為 root 使用機器憑據,
- 為您的使用者創建一個客戶端密鑰表。
為了使用第二種解決方案,您必須找到客戶端密鑰表的預設位置:
piotr@bialykiel:~$ krb5-config --defcktname FILE:/etc/krb5/user/%{euid}/client.keytab
並使用以下命令創建密鑰表
kadmin
:ktadd -k /etc/krb5/user/1234/client.keytab yourprincipal@YOUR.DOMAIN.ORG
每當
GSS-API
諸如rpc.gssd 之類的應用程序無法訪問您的憑證記憶體時,它將使用密鑰表創建一個新的。