linux使用者管理 1

2021-06-28 16:00:29 字數 2904 閱讀 5402

1 linux使用者分三種:

超級使用者(root uid=0)

普通使用者(uid  500-60000) 注意只要修改了uid=0,此普通使用者可以變為超級使用者

偽使用者( uid 1-499 ),一般與linux系統和服務相關,無法登陸和沒有宿主目錄

2 使用者組

1 每個使用者至少屬於乙個組

2 每個使用者組可以包括多個使用者

3 同一使用者組的使用者共享有該組共有的許可權

3 配置檔案

(1)  使用者資訊檔案:/etc/passwd

檢視passwd檔案會發現有以下內容

使用者名稱:密碼位(並不存放密碼):uid(使用者標示符號):gid(預設組標識號)   :描述資訊:宿主目錄:命令直譯器(預設為bash)

(2) 密碼檔案:/etc/shadow

檢視shadow檔案會發現有以下內容:

注意密碼一般是先寫到passwd中,然後再轉到shadow中

(3) 新使用者資訊檔案:/etc/skel

每次建立乙個使用者,會把/etc/skel目錄下面的所有檔案拷貝到自己的宿主目錄下

(4)使用者配置檔案:/etc/login.defs,/etc/defaule/useradd(定義了一些新增使用者的預設的設定資訊),/

(5)登陸資訊:/etc/motd

普通使用者為什麼能修改密碼?

如下圖可以看出普通使用者是沒有更改自己密碼的許可權的:

看到普通使用者對於passwd檔案只有讀的許可權,對於shadow檔案沒有任何許可權,普通使用者應該是修改不了密碼的,可是為啥普通使用者還可以修改密碼了?

密碼不在於更改檔案的許可權上面,而在passwd命令的許可權上面,看到passwd命令第三個位置是s而不是常用的x。這個就是普通使用者可以更改密碼的根本原因,這個從而引出了setuid。

setuid定義:當乙個可執行程式具有setuid許可權,使用者執行這個程式時,將以這個程式所有者的身份執行。

設定乙個命令為setuid:

chmod  u+s 

chomd  4755

取消:chmod  u-s 

chomd  755

例子 將touch命令授予setuid許可權

看到原始的touch命令是誰使用,所有者就是誰,修改touch命令的所有者許可權,令其許可權為s

再次用touch命令建立檔案,會發現所有者變為root了,如下圖。

setgid定義:當乙個可執行程式具有setgid許可權,使用者執行這個程式時,將以這個程式所有組的身份執行。

設定乙個命令為setgd:

chmod  g+s 

chomd  2755

取消:chmod  g-s 

chomd  755

粘著位:如果乙個許可權為777的目錄,被設定了粘著位,每個使用者都可以在目錄下面建立檔案,但是只可以刪除自己是所有者的檔案。

設定chmod  o+t

新增使用者

命令名稱:useradd

選項含義:

使用者組命令

1 新增組

命令名稱:groupadd

用法:group  -g 999  admin

建立使用者組 admin  gid是999

2 刪除組:

命令名稱:groupdel  組名

用法  groupdel  admin

3 修改使用者組資訊:

命令名稱:groupmod

用法:groupmod   -n  apache  admin

修改admin 組名apache

4 把使用者加入到組

1  命令名稱:usermod

usermod  -g  組名  使用者名稱

2  命令名稱:gpasswd

gpasswd  -a  使用者名稱  組名

5 切換到預設的組

命令名稱:newgrp 

用法: newgrp   webadmin

6 禁止使用者切換到該組

用法:gpasswd  -r  webadmin

7  檢視使用者屬於哪個組

命令名稱:groups

用法:groups

linux使用者管理1

一 檢視使用者 cat etc passwd 可以檢視所有使用者的列表 w 可以檢視當前活躍的使用者列表 cat etc group 檢視使用者組 比較簡明的命令 cat etc passwd grep v nologin grep v halt grep v shutdown awk f more...

LINUX使用者安全管理1

在linux中,每個普通使用者都有乙個帳戶,包括使用者名稱 密碼和主目錄等資訊。除此之外,還有一些系統本身建立的特殊使用者,它們具有特殊的意義。其中最重要的是超級使用者,在linux中,它預設使用者名稱是root。基本操作 增加乙個使用者newuser useradd newuser passwd ...

linux 使用者許可權管理 1

etc passwd 使用者資訊 etc shadow 使用者密碼 uid 1000 60000 可以自己設定 0 999 系統使用者 shell bin bash 預設 sbin nologin 系統使用者1.建立使用者 root localhost ls var spool mail 存放郵件內...