管理用戶同時跨伺服器共享主目錄

管理用戶同時跨伺服器共享主目錄

我有兩台共享主目錄的 ubuntu 伺服器。 server1 中的 /home 目錄安裝為 server2 上的 /home 目錄。當我嘗試讓新人訪問兩台伺服器時遇到問題。我在每台伺服器上使用相同的使用者名稱使用 adduser 命令。然而,當我這樣做時,UID 不匹配,因此當使用 server2 的帳戶存取其主目錄中的檔案時,使用者最終沒有權限存取該檔案。

在伺服器 1 上建立使用者及其主目錄。 (事情看起來還不錯)

selah@server1:~$ tail -n 2 /etc/passwd
dfulgon:x:1083:1087:,,,:/home/dfulgon:/bin/bash
swartp:x:1085:1089:,,,:/home/swartp:/bin/bash

selah@server1:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 dfulgon dfulgon   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 dfulgon dfulgon  675 Jun  2 13:35 .profile
drwxrwxr-x  2 dfulgon dfulgon 4096 Jun  2 14:27 .ssh/

在伺服器 2 上,建立了同名的使用者帳戶,但使用了其他伺服器的主目錄:(權限混亂,指向錯誤的使用者)

selah@server2:~$ tail -n 2 /etc/passwd
bslf:x:1083:1087:,,,:/home/bslf:/bin/bash
dfulgon:x:1087:1091:,,,:/home/dfulgon:/bin/bash

selah@server2:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 bslf bslf   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 bslf bslf  675 Jun  2 13:35 .profile
drwxrwxr-x  2 bslf bslf 4096 Jun  2 14:27 .ssh/

有沒有一個好方法可以克服這個問題,同時保持共享主目錄的便利性?

答案1

最簡單的事情就是在某個中央資料庫中建立您的帳戶。如今,幾乎每個人都使用某種形式的 LDAP 資料庫來實現此目的。但如果您想採用不安全的老式方法,您也可以查看 NIS。 (不)。

另一種選擇是使用組態管理工具來建立帳戶並保持 UID 同步。因此,您可以使用 puppet 建立帳戶並定義所需的特定 UID/GID。

您可以使用 NFS id 映射器執行一些操作來在系統之間轉換 id,但這可能會成為管理的噩夢。

答案2

我們正在採用的解決方案:

檢查 /etc/passwd 檔案並選擇下一個適當的 GID 和 UID。然後在使用者建立過程中指定它們,如下所示。

addgroup -g $GID $username
adduser -g $GID -u $UID $username 

相關內容