使用者群組管理
要想對使用者群組的管理有更深入的了解,應該先了解相應的概念,然後對相應的指令進行記憶和操作,記住要多加練習。
一、相關知識
UNIX作業系統:是通過多使用者、多任務環境實作的
密碼:驗證使用者身份的憑證;
權限:界定不同的使用者本身所能夠操作的資源的範圍的
SAM資料庫:用來驗證使用者密碼、存儲密碼和使用者,是強加密檔案
linux使用者密碼存放實作加密:
MD5:Message Degist 資訊摘要,資料的指紋,資料特征碼;唯一辨別一段資料的;
① 單項加密:隻能根據特征碼取得資料,不能通過特征碼還原資料;
特征:1、雪崩效應:避免防暴力破解;
2、 輸入資料是任意大小,輸出資料是定長的
② 采用單項加密技術
例:MD5(輸出資料128bit) ----linux當中使用者是通過MD5加密
SHA1(輸出資料160bit)---------安全雜湊演算法
SHA256(輸出資料256bit)
長度越長,安全性越好,計算時間越長,效率越低
二、使用者與組
1、使用者
使用者:是擷取特定資源的集合,權限集合的映射,是權限的集合,是擷取資源的憑證
uid(user identification):是使用者的辨別符,是用來識别使用者
使用者名:可公開,是使用者的外部表示;
使用者:管理者-----------root ID=0
系統使用者--------ID=1-499; 讓背景程序運作所給的使用者
普通使用者--------ID>=500
使用者資訊存放在檔案/etc/passwd中,可用指令id來查詢使用者标志。
2、組
組:group ,是具有某種聯系或關系的使用者集合,需要密碼
組名:是組的外部表示
GID :是組的辨別符
組:由多個使用者組成,用于實作權限的分類;組是權限的容器
組:兩種分類方式:1.私有組,系統組,公共組
2. 基本組,額外組(附加組)
使用者組資訊存放在檔案/etc/group中,可用指令id來查詢使用者組标志。
安全上下文:發起的指令由程序運作,以發起者的身份運作;
3、權限
檔案權限:r------讀 w------寫 x:-------執行
目錄權限:r-------檢視ls w-----建立或删除檔案 x---cd換至此目錄,或者ls -l 檔案
二進制表示:--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
使用者:/etc/passwd 644
密碼:/etc/shadow 400
組: /etc/group
組密碼:/etc/gshadow
/etc/passwd -----系統使用者資料庫檔案,包括系統内所有已經注冊使用者的資訊;格式:
username:[password]:uid:pid: CECOS:[comment]:dir:[shell]
username------使用者名,以字元開頭,不使用大寫字母
password-----密碼;在redhat系統中設定為“x”
uid----使用者辨別号
pid-----使用者組辨別号
CECOS:補充資訊
comment-----說明域,包括使用者詳細資訊說明;不能包含冒号,可以為空
dir------使用者家目錄$HOME,即使用者登入成功後的工作目錄或目前目錄
shell------shell程式,預設是/bin/bash
/etc/shadow----影子密碼檔案,啟動時,用于存放系統内使用者的加密後的密碼和使用者登入控制資訊;密碼最短使用時間:不做限制(盡可能的指定密碼):密碼過期的警告時間:密碼過期之後必禁用:明确密碼禁用:目前尚未使用
username:password:lastchanged:minimum:maximum::::
username------與passwd内容對應的使用者名
password-------加密後的密碼;為空,表示無密碼;當開頭的兩個字元為“!!”,辨別使用者被上鎖沒加密,不允許登入;一般情況下,新建立的使用者是被上鎖的
lastchanged-----從某天(19700101)到上次修改密碼時間的間隔天數
minimum-----必須修改密碼的天數間隔,密碼最短使用期限;預設為0
maximum-----新密碼的最長有效天數;不做限制(盡可能的指定密碼)
warndays-------密碼過期的警告時間
密碼過期之後必禁用
明确密碼禁用
目前尚未使用
/etc/group----組定義檔案,格式:
groupname:password:gid:userlist
groupname---組名
password-----組密碼;為空,則不需要密碼;在redhat系統中設定為“x”,可用gpasswd設定密碼,并有newgrp等指令使用
gid------組标志号
userlist------組成員元,為以逗号分隔的使用者;附加組
#cat /etc/shells----使用者的合法shell
/sbin/nologin-------禁止使用者登入
使用者管理指令:
useradd-------添加使用者
用法:#useradd USERNAME
選項: -u UID-----指定UID
-g GID------指定GID,組事先存在;如果組不存在,會報錯
-c "string" --------- 注釋,說明;不含“:”,和回車的長度<512的字元串
-d PATH ----------- 指定家目錄,建立家目錄在/home目錄下;家目錄不存在
-s SHELL---------指定shell /etc/shells
-G grp1,grp2,…-----------指定附加組
-M ----------不建立家目錄
-m ----------建立家目錄
-D -----------設定預設值
-b HOMEPATH --------家目錄,預設指定
-s SHELL---------預設指定
/etc/group 以此附加組使用者清單
添加使用者,背後做的工作:
添加一行:/etc/passwd | /etc/shadow | /etc/group /home/USERNAME---環境配置檔案
添加使用者的預設值的位置--------- /ect/defult/useradd
使用者設定密碼: passwd USERNAME
用法:passwd USERNAME
選項:-l-------鎖定指定使用者賬号
-u-------解鎖使用者賬号的鎖定
--stdin 實作在管道中傳遞的,實作密碼和使用者使用同一個名
eg: echo redhat | passwd –stdin gentoo
-n-----密碼最短使用期限
添加密碼時使用者屬性的預設值的位置---------/etc/login.defs添加密碼時
#cd /etc/skel---- 使用者的環境變量
$1$:1代表UID5
bc-----------電腦
scale=2 精度的多少
pwck------檢測檔案密碼是否仍然在有效期内
#less/etc/login.defs:UID\GID的最大值和最小值
使用者帳号管理;修改相關資訊:
chfn USERNAME----------改變finger資訊
chsh USERNAME-----------改變shell
usermod------------使用者修改的相關資訊
-u UID
-g GID
-G 附加組存在會覆寫 -a -G 追加附加的組
-c----------注釋
-d 家目錄 -------家目錄不存在 -m –d--------
-s SHELL
-l NEWLOGNAME-------改變使用者名,登入名
-L 鎖定使用者賬号
-U 解鎖使用者賬号
-o 兩個使用者可以使用同一個賬号
-e 使用者帳号的鎖定時間,失效時間
chage --------- 改變使用者密碼的失效時間
-m 最短使用時間
userdel -----------删除使用者
-r 删除使用者和家目錄
finger USERNAME--------顯示使用者的名稱,是否登入
id -----------顯示使用者的辨別資訊
用法:id USERNAME
選項:-u ----------顯示uid
-g-----------顯示gid
-G--------顯示groups
-n -------- 顯示名字
關于組的相關資訊:
groupadd
-g GID
-r 把此組添加為系統組
groupmod 修改組資訊
-g 修改GID
-n 修改組名
groupdel---------删除組
gpasswd GRPNAME----------添加組密碼
newgrp-------登入另一個組