1.權限模型
- 密碼學發展:
- 古典密碼學(數據的安全基於算法保密)
- 近代密碼學(成爲一個真正的一門科學)
- 現代密碼學(解決了密鑰分發和管理的問題)
- 影響密碼學系統安全性的因素:
- 密碼算法複雜性,密鑰機密性,密鑰長度
- 科克霍夫原則;密碼體制應該對外公開,僅需要對密鑰進行保密;如果一個密碼系統需要保密的越多,那麼此加密方式越弱.
- 應用:機密性.完整性.可鑑別性,不可否性
- 兩大算法
- 對稱加密算法:加密密碼和解密密碼相同,典型算法:DES,(不安全了),3DES,AES,IDEA有點:加密速度簡單,快.
- 非對稱加密:密鑰對;典型算法,RSA.ECC:安全性高,資源消耗高.
- 哈希:MD5,SHA-256,SHA-512(單向性,弱抗碰撞性,強抗碰撞性)
- 數字簽名
- PKI:CA,RA,證書存放.終端
2.操作系統類型
1.單用戶操作系統;2.多用戶操作系統
- 用戶的分類
- root(uid:0)
- 普通用戶(uid:1000-65535)
- 僞用戶:(uid:1-1000):系統用戶
- 密碼配置文件
- /etc/passwd
- 第一列:用戶名
- 第二列:x表示已經設置密碼,!!表示沒有加密還不可使用
- 第三列:UID
- 第四列:GID
- 第五列:描述字樣
- 第六列:家目錄
- 第七列:使用的shell
- /etc/shadow
- 第一列:用戶的登錄名
- 第二列:用戶加密後的密碼
- 第一部分加密算法:
- 1:MD5加密
- 5:SHA-256加密
- 6:SHA-512加密
- 第二部分:隨機序列號
- 第三部分:隨機序列號和密碼共同加密後的字符串
- 第一部分加密算法:
- 第三列:最後一次更改密碼時間(從1970年1月1號)
- 第四列:密碼最小使用時間
- 第五列:密碼最長使用時間
- 第六列:通知密碼失效前的天數
- 第七列:賬戶過期日期
3.賬戶管理
- 用戶管理
- 添加用戶:useradd <用戶名>,設置密碼 passwd <用戶名>
- 同時添加用戶和命令:useradd abc;echo “123” | passwd –stdin abc
- 模板目錄:/etc/skel此目錄下的隱藏文件在新建用戶時,會全部拷貝到新建用戶目錄下.
- 管理用戶:usermod
- -l改名
- -L鎖定用戶
- -U解除鎖定
- -a添加用戶到組結合-G使用
- 組管理
- 添加組groupadd <組名>
- 修改組名:groupmod <new_name> <old_name>
- 組添加用戶: gpasswd -a <user_name> <group_name>
- -a:組中添加成員
- -d:組中刪除成員
- -A:設置組的管理員
- 刪除組:groupdel groupname
- passwd
- -l鎖定用戶
- -u解鎖用戶
- -n密碼最小使用期限
- -x密碼最大使用期限
- -w密碼過期前提醒天數
- whoami id查看用戶信息
- chage
- chage -d 0 用戶名 用戶下次登陸必須更改密碼
- chage -m 2 用戶名 修改密碼最少使用天數
- chage -M 50用戶名 修改密碼最大使用天數
- chage -l 5用戶名 密碼過期後到賬戶失效的天數
- chage -W 3用戶名 密碼過期的警告的天數
- /etc/login.defs默認建立新用戶的配置文件
- 全局配置/etc/profile 局部配置:~/.bash_profile
- /etc/profile設置命令歷史 HISTSIZE 此文件爲系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行. 並從/etc/profile.d目錄的配置文件中搜集shell的設置
- /etc/bashrc爲每一個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取
- ~username/.bashrc每個用戶都可使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該文件僅僅執行一次!默認情況下,他設置一些環境變量,執行用戶的.bashrc文件
- ~username/.bash_profile該文件包含專用於你的bash shell的bash信息,當登錄時以及每次打開新的shell時,該該文件被讀取。
- /etc/profile.d/*
- profile類的文件:
- 設定環境變量
- 運行命令或腳本
- bashrc類文件:
- 設定本地變量
- 定義命令別名
- profile類的文件:
讀取配置文件過程: /etc/profile –>/etc/profile.d/*.sh –>~/.bash_profile –>~/.bashrc –>/etc/bashrc
4.批量建立用戶
- 按照passwd格式編輯好用戶名文件,編輯好用戶名密碼對應文件
- 導入用戶數據:newusers < user.txt
- 將/etc/shashow產生的shadow密碼解碼:pwunconv
- 將密碼寫入發哦passwd密碼欄中:chpasswd < passwd.txt
- 同部到/etc/shadow:pwconv
5.權限(R W X)
- 文件權限
- r:可讀,w:可寫,x:可執行
- 單獨權限的意義:
- r單獨存在,可查看文件內容
- w:單獨存在,看不到內容,但是可以強制修改文件內容,會覆蓋源文件內容,單獨存在的意義不大
- x單獨存在毫無意義.
- 常用組合權限:
- rx:文件可讀,可執行不可修改,不可刪除
- rw:可讀,可寫,不可執行
- wx:不可讀,不可執行,可以覆蓋
- 目錄權限
- r:可列出ls,w:可建立文件,x:可進入文件夾
- 單獨權限存在意義:
- r:可以讀,不能寫,也不能進入目錄
- w:毫無意義
- x:只能進入,不能讀,不能寫
- 常用組合權限:
- rw:可查看內容(ls),不可以進入目錄,不能刪除目錄或者裏面的文件
- rx:可以查看內容,可以進入目錄,不可以修改目錄的內容
- wx:不可以查看目錄的內容,可以進入目錄,可以刪除目錄下的文件但是前提是要知道目錄下有什麼文件.
- 權限管理
- chmod:修改文件或目錄的權限
- chown:修改文件的所有者:
- chown xiaoming abc將abc的所有者都改爲xiaoming
- chown -R root /abc將此目錄下所有子文件改變其所有者有root
- chgrp:修改文件所有組
6.鏈接
- 軟連接(快捷方式):ln -s <別名> <舊名>
- 硬鏈接 : ln <別名> <old_name>
7.suid:4,guid:2,sbit:1
- suid
- 以文件所有者來運行此文件,而與用戶無關
- chmod u+s file
- find / -perm -u=s
- guid
- 運行某程序是,相應的程序所屬組是程序文件所屬組,而不是用戶本身所屬組
- chmod g+ file
- sbit
- 只針對目錄設置有效,當目錄設置爲粘滯位時,其下的文件只能所有者和root可以刪除,但是其他人不可刪除文件
8.umask
- 默認爲022
- 新建文件夾:666-umask
- 新建文件默認權限:777-umask
9.文件系統訪問控制列表
- 文件的擴展權限
- 查看擴展權限:getfacl
- 設置擴展權限:setfacl [-bkRd] [-m|x acl 參數] user:rw 目標文件夾
- -b:刪除所有的acl參數
- -k:刪除默認的acl參數
- -R:遞歸設置ACL參數
- -設置默認ACL參數,只對目錄有效
10.sudo提權
11.visudo(終端中直接輸入visudo即可打開配置界面)
- 設置了一個普通用戶可執行root的命令
基本配置格式:user <host list > = <operator list > <tag list > <command list>