1. 程式人生 > >第五天 使用者身份與許可權

第五天 使用者身份與許可權

Linux 多使用者 多工的作業系統
檔案的所有者\ 所屬級以有其他人對文可以進行的讀\寫\執行等等
添\刪除\修改使用者資訊
特殊許可權:SUID SGID SBIT + 隱藏許可權進行檔案更加靈活的控制

一 、使用者許可權和能力
類Unix 系統使用額超級管理員預設都是root ,具備最高的許可權,
Rm -rf /*
UID ----GID ---都等於0時 即為超級管理員
UID GID 使用者ID \ 組ID 唯一的

UID = 0 :系統的管理使用者
UID >=1000 (REHL7.X預設從1000開始,REHL6.X從500開始): 普通使用者,由root建立和授權(使用的都是普通使用者)
1<=UID <=999 : 系統使用者(虛擬使用者),預設服務程式具備的獨立系統使用者,
保護系統安全

GID 用組 使用者組:成員
Linux 在建立使用者時,預設會生成一個與使用者同名的組
使用者預設自己屬於一個組內

1.useradd 建立使用者
預設會自動建立一個家目錄(以使用者---目錄)在/home下
預設shell版本是/bin/bash 可以登入(系統使用者預設/sbin/nologin)
引數 作用
-d
-e
-u
-g
-G
-N
-s

2.usermod 修改使用者資訊
-c
-d -m
-e
-g
-G
-L
-U
-s
-u
3.passwd 用於建立、修改使用者密碼
Root 是可以對所有人進行修改
普通使用者只能對自己修改
不跟使用者名稱預設修改當前使用者
引數 作用
-l
-u
---stdin
-d
-e
-S

4.userdel 使用者刪除
引數 作用
-f
-r
二、檔案許可權和歸屬
-普通檔案
d目錄檔案
l連結檔案
b塊檔案----U盤
c字元檔案--虛擬終端
s安全套接字檔案
[

[email protected] ~]# yum -y install mariadb
Find / -name *.sock

連結:
硬連結: 絕對不可以對目錄使用,是將所有的內容 完全copy,生成一個新檔案,原始檔被刪除,連結檔案依然可以用ln
軟連結:可對任何檔案進行,類似windows 中的快捷方式,原始檔刪除連結後無法使用
Ln -s
Inode
所有者 所有組 其他人

R可讀4
W可寫2
X執行1
-無權 0
r w x
對檔案 可以檢視檔案內容 對內容修改 指令碼檔案
對目錄 可以瀏覽目錄 對目錄中檔案增刪改 可不可以進入目錄
檔案能夠刪除與本身許可權無尖的,年上一級目錄許可權

預設情況 root建立的文的許可權 位644 ,目錄許可權 755
三、檔案的特殊許可權
SUID SGID SBIT 與一般許可權可以一起使用
1.SUID
對二進位制程式(內部命令)進行設定的特殊許可權,讓其執行者臨時具備屬主的功能

/bin/passwd
ll /bin/passwd
Passwd 可以修改自己的密碼
S 位 s表示當前位置上具備x許可權,S則不具備x許可權

2.SGID
讓執行者臨時擁有屬組的許可權(二進位制程式)
Touch test.txt
Chmod 2777 test.txt
Chmod -R
-R遞迴
數字法 777
表示式法 a =所有 u=使用者 g=使用者組 o=其它
a+x 給所有使用者、使用者組成員、其它人新增x許可權
a-x 許可權
a=x 覆蓋

Chown 修改檔案使用者 或者使用者組
Chown -R 使用者:使用者組filename
chgrp單獨修改使用者組的命令

3.SBIT粘滯位
確保使用者只能刪除 自己的檔案
目錄設定SBIT,那麼只有目錄的所有者和root可以執行刪除
T 表示該位無X,, t表示有x
SUID =4
SGID = 2
SBIT = 1
四、隱藏許可權

Chattr 設定隱藏許可權 (新增、刪除、修改)
lsattr檢視隱藏許可權
引數 作用
------------------------以上許可權針對甘醇 類使用者
五、檔案訪問控制列表
希望指定使用者進行單獨的許可權控制
目錄設定ACL,其中的檔案自動繼承
setfacl 用於管理檔案的acl規則
-R遞迴
-m 普通檔案
-d 刪除
檢視acl
[[email protected] ~]# setfacl -Rm u:allen:rwx /root/

[[email protected] ~]# ll -d /root
dr-xrwx---+ (加號是acl) 4 root root 4096 Nov 21 09:17 /root

Getfacl 用於顯示檔案的acl資訊

六、su 和sudo
su用於切換使用者身份
su username 不完全切換(單純切換身份)
su - username 完全切換(直接進入到使用者家目錄中)
Sudo 命令 用於給普通使用者提供額外許可權完成原本只有root才能完成的wttl0
(reboot poweroff)
1、限制使用者執行指定的命令
2、記錄使用者執行的命
3、

Visudo (禁止使用者
[[email protected] ~]# ll /etc/sudoers
Sudo -l
Logout root
/bin/reboot

Syntax

第五天 使用者身份與許可權