用戶和組管理
用戶帳戶
組帳戶
權限分配算法
Cisco開發並創建了AAA認證體系: Authentication:認證,覈實使用者身份; Authorization:受權,對已經覈實身份的使用者進行資源分配; Accounting:審計,監管資源被使用的狀況; 多任務,多用戶操做系統; 可以實現資源使用和完成任務的主體是:應用程序進程; 安全上下文:Secure Context 進程是以其發起者的身份運行的;能夠理解爲,進程的全部者就是其發起者;每一個進程上都會標記上其全部者的身份信息; 當進程試圖訪問資源的時候,安全上下文會比對進程的全部者和資源的全部者之間的關係: 首先,查看進程的全部者是否和資源的全部者爲同一用戶,若是是,就按照全部者擁有的權限來使用資源; 若是不是,則判斷進程的全部者是否屬於該資源所屬組的成員;若是是,按照所屬組的權限來使用資源; 若是不是,就按照最爲普通的其餘用戶的權限來使用資源; 用戶帳戶:實現操做者和計算機交互式操做的基礎,是操做者的身份在知足了驗證條件以後的計算機系統中的映射; 用戶帳戶分類: 超級用戶(管理員):root 普通用戶: 系統用戶(非登陸用戶): 爲了保證安全,每每會讓某些進程或服務必須以非管理員的用戶身份運行;這類非管理員用戶,稱爲系統用戶;此類用戶通常不容許登陸到系統的; 登陸用戶 可以經過登陸行爲驗證用戶身份進而得到資源訪問權限並能夠對資源進行操做的用戶,能夠稱爲登陸用戶; 用戶帳戶的標識方式: 用戶登陸名稱: 爲操做者提供的簡單易記的字符串標識; 用戶的數字ID(UID): 爲計算機操做系統提供的標準的數字標識符號,0~2^32-1 超級用戶: 用戶名:root UID:0 普通用戶: 系統用戶: CentOS 6-:1~499 CentOS 7+:1~999 登陸用戶 CentOS 6-:500+ CentOS 7+:1000+ 注意:60000+的UID一般須要用戶自定義標識; 名稱解析: 用戶名 <--> UID 用戶名解析庫:/etc/passwd 操做系統中的認證組件經過解析庫實現認證機制,即驗證登陸用戶是否爲已經存在的用戶; 用戶的認證庫:/etc/shadow 經過此前的解析庫認定用戶是存在的,再通過認證庫的認證,來證實登陸用戶就是其聲明的用戶; 默認的認證機制:密碼認證; 密碼複雜性要求: 1.儘可能避免使用有規律的或者來源於字典中的字符串做爲密碼; 2.密碼要足夠長,通常不得少於6個字符; 3.密碼要足夠複雜,其中應該至少包括大寫字母,小寫字母,數字及其餘符號中的三類; 4.不按期更換,每隔一段時間進行密碼更換; 在Linux中,保存到認證庫的密碼是通過單向加密算法處理過的; 可以加密密碼的算法: MD: MD5,Message Digest Version 5,消息摘要算法第5版; 128位定長輸出; SHA:Secure Hash Algorithm,安全的哈希算法; sha1:160加密輸出 sha224: sha256: sha384: sha512:默認的加密算法; salt:經過隨機算法計算獲得的隨機數; 隨機數的生成裝置: /dev/random: 僅僅從熵池中返回隨機數;若是熵池中隨機數耗盡,進程會被阻塞; /dev/urandom: 首先試圖從熵池中返回隨機數,若是熵池中隨機數耗盡,則利用僞隨機數生成器生成僞隨機數; 在認證庫中的密碼的最終形態:算法+salt+加密字符串; 算法:$1~$6 salt:$隨機字符串 加密字符串:$單向加密的結果 組帳戶:將具備某些相同或類似屬性的用戶聯繫在一塊兒以即可以集中受權的容器; 組的分類: 超級用戶組 普通用戶組 系統用戶組 登陸用戶組 組帳戶的標識方法: 組帳戶名稱: 組帳戶ID(GID): 超級用戶組:0 系統用戶組: CentOS 6-:1~499 CentOS 7+:1~999 登陸用戶組: CentOS 6-:500+ CentOS 7+:1000+ 組名解析: 解析庫:/etc/group 認證庫:/etc/gshadow 組也須要使用密碼加密保護; 用戶帳戶和組帳戶之間的關係: 在Linux中,每一個用戶必須至少屬於一個組; 用戶帳戶的GID標識被稱爲用戶的主要組(基本組),Primary Group;每一個用戶必需要有主要組,並且只能有一個; 在主要組的基礎之上,用戶能夠與其餘的組帳戶存在邏輯關係,此類組稱爲用戶的附加組(附屬組,額外組),Addtion Group;對於用戶來講,此類組能夠沒有,也能夠有多個;