Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> Linux操作系統下關於用戶和組的配置管理

Linux操作系統下關於用戶和組的配置管理

日期:2017/2/7 16:58:06      編輯:Linux教程

Linux 用戶和組管理

用戶管理,主要的工作就是建立一個合法的用戶帳戶、設置和管理用戶的密碼、修改用戶帳戶的屬性以及在必要時刪除已經廢棄的用戶帳號。

1. 增加一個新用戶

在Linux系統中,只有root用戶才能夠創建一個新用戶,如下的命令將新建一個登錄名user1的用戶。

# useradd user1

但是,這個用戶還不能夠登錄,因為還沒給它設置初始密碼,而沒有密碼的用戶是不能夠登錄系統的。在默認情況下,將會在/home目錄下新建一個與用戶名相同的用戶主目錄。如果需要另外指定用戶主目錄的話,那麼可以使用如下命令:

# useradd -d /home/xf user1

同時,該用戶登錄時將獲得一個Shell程序:/bin/bash,而假如你不想讓這個用戶登錄,也就可以指定該用戶的Shell程序為:/bin/false,這樣該用戶即使登錄,也不能夠執行Linux下的命令:

# useradd -s /bin/false user1

在Linux中,新增一個用戶的同時會創建一個新組,這個組與該用戶同名,而這個用戶就是該組的成員。如果你想讓新的用戶歸屬於一個已經存在的組,則可以使用如下命令:

# useradd -g user user1

這樣該用戶就屬於user組的一員了。而如果只是想讓其再屬於一個組,那麼應該使用:

# useradd -G user user1

完成了這一操作後,你還應該使用passwd命令為其設置一個初始密碼。

2. 刪除一個用戶

刪除用戶,只需使用一個簡單的命令“userdel 用戶名”即可。不過最好將它留在系統上的文件也刪除掉,你可以使用“userdel -r 用戶名”來實現這一目的。

3. 修改用戶屬性

在前面我們看到了在新建一個用戶的時候如何指定它的用戶主目錄,如何指定它的Shell,如何設置它所屬的組…等等。在Linux中提供了一個命令來實現:

usermod -g組名 -G 組名 -d 用戶主目錄 -s 用戶Shell

還有一種直接的方法,那就是修改/etc/passwd文件,在這個文件中每個用戶占用一行,它的內容為:

用戶名:密碼:用戶ID:組ID:用戶全名:用戶主目錄:用戶Shell

不過值得注意的是,密碼這一項通常是用一個*號代替的,你是看不到的。

4. 增加一個組

還記得Linux的文件可以為同組的人、非同組的人設置不同的訪問權限嗎?我們可以根據自己的需要創建用戶組:

groupadd 組名

5. 刪除一個組

同樣的,我們有時會需要刪除一個組,它的命令就是groupdel 組名。

6. 修改組成員

如果我們需要將一個用戶加入一個組,只需編輯/etc/group文件,將用戶名寫到組名的後面。例如將newuser用戶加入到softdevelop組,只需找到softdevelop這一行:

softdevelop:x:506:user1,user2

然後在後面加上newuser,形成:

softdevelop:x:506:user1,user2,newuser

另外,在Red Hat Linux中還提供一個圖形化的用戶管理工具:userconf,通過它可以更直接地進行用戶管理。

兩個重要文件:passwd與group

在linux的安全機制裡,/etc/passwd與/etc/group這兩個文件占著非常重要的地位。它們控制著linux的用戶和組一些重要設置。

◆/etc/passwd文件說明 (用於設置用戶的屬性)

可用 vi /etc/passwd 查看

在passwd的文件裡,每一行被冒號(":")分成7個部分,分別是:

[用戶名]:[密碼]:[UID]:[GID]:[身份描述]:[主目錄]:[登錄shell]

其中:

[UID]雖然是系統用來標志文件歸屬,確定各種權限的標志,但這個區域的內容並不要求唯一的。比較常見而又與安全問題相關的一個例子是有多個UID和GID均為0的用戶帳號。注意到在該文件最後一行還有一個UID和GID為0的用戶imnotroot,雖然它聲稱自己不是root,但是它卻有和root完全相同的權限,因為系統並非根據[用戶名],而是根據UID和GID來分用戶的權力的。所以,這種情況無疑為系統埋下了安全的炸彈。但是,當imnorroot做鎖定屏幕等操作的時候,如果它的密碼和root的不一樣,它將無法解鎖,因為系統只是查到第一個UID為0的用戶(自然是root)後,就不在往下查找了——它當UID也是唯一的。

[GID]用戶默認的組ID,這個ID可以在文件 /etc/group裡查到對應的組名。

<注意>:[UID]和[GID]小於500的一般都是系統自己保留,不做普通用戶和組的標識的,所以新增加的用戶和組一般都是UID和GID大於500的。

◆/etc/group文件說明

vi /etc/group 查看其內容

它總共分四個部分:

[組名]:[密碼域]:[GID]:[組員例表]

Copyright © Windows教程網 All Rights Reserved