使用者、組、許可權
許可權:r,w,x
檔案:r:可讀,可以使用類似cat等命令檢視檔案內容
w:可讀,可以編輯或刪除此檔案
x:可執行,可以命令提示符下當做命令提交給核心執行
目錄:r:可以對此目錄執行ls以列出內部的所有檔案
w:可以在此目錄中建立檔案
x:可以使用cd切換進此目錄,也可以使用ls -l檢視內部檔案的詳細資訊
使用者:uid,/etc/passwd
組:gid,/etc/group
passwd使用者都可以看到,不是很危險?
影子口令,密碼實際儲存在/etc/shadow
組也是有密碼的,在/etc/gshadow
使用者類別:
1、管理員 uid=0
2、普通使用者 uid=1-65535
a)、系統使用者 1-499,一般用於某一類服務,一般不允許登陸
b)、一般使用者 500-60000,後面就很少用了
使用者組類別:
管理員組:
普通組:
系統組:
一般組:
使用者組類別:
私有組:我們在建立使用者時,如果沒有指定所屬的組,那麼系統會為其自動建立乙個與使用者名稱同名的組。
基本組:使用者的預設組
附加組(額外組),預設組以外的其他組
程序:tom tom
物件:rwxrw-r-- jerry tom a.txt
若tom不是屬主
若tom不是tom組
則是other
/etc/passwd,:之間的含義?
whatis passwd
man 5 passwd
可以得知:
account:登入名
password:密碼
uid:
gid:
comment:注釋
home dir:家目錄
shell:使用者預設shell
/etc/shadow
account:登入名
encrypted password:加密的密碼(密碼若是雙!,則是鎖定不可登陸)
加密方法:
對稱加密:加密和解密使用同乙個密碼
公鑰加密:每個密碼都成對出現,乙個為私鑰,乙個為公鑰(速度慢)
單向加密(雜湊加密):提取資料特徵碼,可以由明文得到密文,但是不可以反過來,可以用來做
資料完整性校驗。
1、不可逆
2、雪崩效應
3、定長輸出
常用的單向加密演算法:
md5:message digest,128位的定長輸出
sha1:secure hash algorithm,160位定長輸出
新增使用者
useradd username
修改使用者的密碼
passwd username
新增後,可以檢視/etc/passwd,/etc/shadow
新增使用者後,會自動的指定組、存在時間等屬性,這些屬性都儲存在
/etc/default/useradd這個文字檔案中,我們可以設定相應的值,比如過期時間的。
新增組groupadd grpname
/etc/group
使用者管理:
useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage\
useradd [options] username
-u uid
-g gid(基本組)
-g gid,...(附加組)
-d path 指定其家目錄
-s 指定shell路徑
useradd -s /sbin/nologin user5 -->無法登陸
注:不知道有哪些shell,可以檢視/etc/shells
-m -k(一般兩者結合使用,-k不能單獨使用)
-m 不建立家目錄
-r 新增乙個系統使用者(uid 1-499,系統使用者通常不能登陸系統,沒有家目錄)
/etc/login.defs
環境變數shell:用於儲存當前使用者預設shell
id username ->查詢使用者的uid gid等資訊
finger username,查詢使用者賬號的相關資訊
userdel [option] username
-r:同時刪除使用者的家目錄
usermod :修改使用者賬號屬性
-u uid
-g gid
-a -g gid,加了a就不覆蓋附加組,而是追加
-d -m:既指定新的家目錄的位置,又將此前的檔案移動過去
-l 更改登陸名
-e 指定過期時間
-l 鎖定賬號,不能登陸
-u 解鎖
chfn username 修改使用者的注釋資訊
chsh username 修改使用者的預設shell
密碼管理:
passwd [username]
--stdin
eg:echo "test" | passwd --stdin test
-l 鎖定使用者
-u 解鎖
-d 刪除使用者密碼
pwck,檢查使用者賬號的完整性
chage:改變密碼的各種時間屬性
-d:最近一次的修改時間
-e:過期時間
-i:非活動時間
-m:最短使用期限
-m:最長使用期限
-w:警告時間
組管理:
groupadd,groupdel,groupmod,gpasswd
groupadd
-g gid
-r:新增為系統組
groupmod
-g gid
-n grpname
groupdel
gpasswd:為組設定密碼,組是不用來登陸系統的,是為了「更改」屬組(這個屬組是登陸屬性,可以退出)
newgrp grpname(newgrp類似login,不是修改組)
練習題:
許可權管理:
chown,chgrp,chmod
chown:改變檔案屬主(只有管理員可以使用此命令)
格式:chown username file,...
-r:修改目錄及其內部檔案的屬主
--reference=/path/to/somefile file,.. 設定成與參考檔案相同的屬性
特殊用法:
chown [username]:grpname file,...
chgrp grpname file,...
-r--reference
chmod:修改檔案的許可權
chmod mode file,...
-r--reference
修改某類使用者或某些類使用者許可權:
u,g,o,a
chmod 使用者類別=mode file,...
eg:chmod u=rwx /tmp/abc
chmod g=r,o=r /tmp/abc
chmod go=r /tmp/abc
chmod g=r,o= /tmp/abc
chmod a=r /tmp/abc
修改某些使用者的某位或某些位許可權
chmod 使用者類別+|-mode file,...
chmod u-x /tmp/abc
eg:openssl passwd -1 -salt '12345678'
可以幫助我們自動生成乙個密碼
練習手動新增乙個使用者?
umask:遮罩碼
檔案:666-umask
目錄:777-umask
若umask:023
檔案:666-023=643+1 =644
目錄:777-023=754
檔案預設不能具有執行許可權,如果算得的結果中有執行許可權,則將其許可權+1
站在使用者登入的角度來說,shell的型別:
登入式shell:
正常通常某終端登入
su - username
su -l username
非登入式shell:
su username
圖形終端下開啟命令視窗
自動執行的shell指令碼
bash的配置檔案:
全域性配置
/etc/profile, /etc/profile.d/*.sh, /etc/bashrc
個人配置
~/.bash_profile, ~/.bashrc
profile類的檔案:
設定環境變數
執行命令或指令碼
bashrc類的檔案:
設定本地變數
定義命令別名
登入式shell如何讀取配置檔案?
/etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc
非登入式shell如何配置檔案?
~/.bashrc --> /etc/basrc --> /etc/profile.d/*.sh
Linux許可權詳解 使用者 使用者組及檔案許可權
linux的許可權系統主要是由使用者 使用者組和檔案許可權組成。使用者就是乙個個的登入並使用linux的使用者。linux內部用uid表示。使用者組就是使用者的分組。linux內部用gid表示。檔案許可權分為讀 寫 執行三種許可權。linux系統將所有東西都體現成檔案,所以某使用者 使用者組 有哪些...
Linux使用者及許可權
計算資源 許可權 使用者 使用者組 容器,關聯許可權使用者組,方便的指派許可權 使用者 獲取資源或服務的標識 程序安全上下文 secure context 許可權 r w x 檔案 r 可讀 檢視 w 可寫 編輯或刪除 x 可執行 當作命令提交給核心 目錄 r 可對此目錄ls w 在此目錄建立檔案 ...
Linux使用者及許可權
庫 lib 共享庫 so shared object,許可權 使用者,獲取資源,服務的識別符號 組,指派許可權,識別符號 程序 以某個使用者的身份在進行,有屬主和屬組 安全上下文 security context linux許可權,三組使用者 檔案屬主,檔案的所有者 檔案屬組,檔案的原生組 其他使用...