2018年03月27日 16:47:22 互聯網行者 閱讀數:2983算法
版權聲明:本文爲博主原創文章,未經博主容許不得轉載。 https://blog.csdn.net/learner198461/article/details/79714911shell
1、用戶組分類:管理員組和普通組
管理員組(root,gid爲0)
普通組:gid範圍:1-65535,分爲系統組和登陸組,
系統組(gid範圍:1-999)和登陸組(gid範圍:6000-10000)
2、用戶的分類:
用戶分爲:管理用戶和普通用戶。centos
(1)管理用戶root(uid爲0),權利最大的管理員,全部的權限對它來講幾乎是形同虛設的,它的存在就是爲了管理其它用戶的,因而普通用戶都得由它來建立。 (2)普通用戶分爲登陸用戶和系統用戶。uid的範圍也和group類似,uid範圍:1-65535,登陸用戶(uid範圍:1-999)能夠用來登陸,能夠經過不一樣驗證方式登陸,可是對於新手來講,剛開始接觸大多數都是密碼驗證登陸。系統用戶(6000-10000)。安全
3、用戶即用戶組的建立:
一個用戶從建立到使用,一般通過的流程爲:
建立用戶組——用戶組密碼——建立用戶——設定密碼。
翻譯成命令,即:
groupadd——gpasswd——useradd——passwd。app
若是對用戶組沒要求,能夠不用建立用戶組的,而直接建立user,會生成相應的組的。通常來講,gpasswd不是必須的,所以最簡單的useradd passwd,這裏操做要在root權限下。ui
id 用戶名,顯示當前帳號信息加密
指定附加組,一個用戶只能擁有一個基本組,也稱之有效組,或者說主組,可是卻能夠屬於多個附加組,而一個組能夠有多個用戶,是多對多的關係,若是有的命令還沒熟悉,不要緊,能夠往下面繼續查看,如何爲用戶指定附加組(useradd -G),以及後面追加附加組(usermod -aG)
chage命令:更改密碼的過時信息,主要是對應修改/etc/shadow裏面的數據
-l:列出密碼的詳細參數
-d :修改建立密碼的距離19700101那天的秒數,即將最近一次密碼設置時間設爲「最近日期」 chage -d "487208" centos
-E:修改過時時間
-W:指定警告時間
-m:密碼最短可修改天數
-M:密碼最長必須修改天數
userdel命令:刪除用戶
userdel [選項] username
-r:刪除用戶時一併刪除其家目錄
usermod命令;修改用戶屬性
usermod [option] username
-u,--uid UID:指定新的UID
-g:--gid GROUP:修改用戶所屬的基本組:
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]修改附加組,原來的附加組會被覆蓋
-a:--append,與-G一同使用,用於爲用戶追加新的附加組
-c, --comment COMMENT :指明註釋信息-d,--home HOME_DIR:修改用戶的家目錄,用戶原有的文件不會被移置新位置 默認修改是不建立新的文件位置的
-m,--move-home,只能與-d選項一同使用,用於將原來的家目錄移動爲新的家目錄
-l,--login NEW_LOGIN:修改用戶名
-s,--shell SHELL:修改用戶默認的shell
-L;--lock 鎖定用戶密碼
-U,--unlock;解鎖用戶的密碼
spa
eg2:修改用戶名(usermod -l)以及修改用戶家目錄並移除原來目錄(usermod -md)以下.net
2.用戶組的建立
涉及命令:groupadd,groupdel,groupmod,gpasswd
groupadd命令:添加組
groupadd [option] group_name
-g GID:指定GID,默認是上一個組的GID+1
-r:建立系統組
groupmod命令:修改組屬性
groupmod [option] groupname
-g GID:修改gid
-n newname:修改groupname
groupdel命令:
groupdel [option] group
gpasswd:修改組密碼,而且設置user
gpasswd [option] group
-a USERNAME:向組中添加用戶
-d USERNAME:從組中移除用戶
3.檢驗以及查看用戶即用戶組
系統關機後,內存裏面的數據是不會存在的,並且像帳號密碼這麼重要的數據固然是須要寫到磁盤上面去了,並且應該是寫到某個固定的文檔中去了,對吧。下面我想介紹兩種查看用戶及用戶組方法:經過命令查看和經過文檔查看
(1)經過命令查看:id
id命令:顯示用戶的真實和有效ID
id [option]... [user]
-u:僅顯示有效的UID
-g:僅顯示用戶的基本組
-G:僅顯示用戶全部的組
-n:顯示名字而非ID,和上面的參數能夠搭配使用
(2)經過文檔查看:tail -n /etc/passwd | /etc/shadow | /etc/group
這仨文檔有什麼關係呢:當咱們登陸到系統時,輸入帳號密碼後,系統會根據你輸入到帳戶到/etc/passwd搜尋看有沒有這個帳戶,即/etc/passwd裏面的name,沒有則退出,有的話,再去/etc/shadow裏面去核對密碼,當全部都無誤了
/etc/passwd:主要是存放user信息的庫
name:password:UID:GID:GECOS:directory:shell
/etc/shadow:單獨存放user的密碼
用戶名:加密的密碼:最近一次修改密碼的時間:最短使用期限:最長使用期限:警告期限:過時期限:保留字段
/etc/group:存放group信息的庫翻譯
group_name:password:GID:user_list
1.查看系統支持的shells: cat /etc/shells
2.用戶添加附加組有三種方法:第一:usermod -aG username ,第二: gpassword -a username groupname,第三:vi /etc/group,在最後一項添加username
刪除附加組: gpasswd -d USERNANME,vi /etc/group
3./etc/passwd,/etc/shadow,/etc/group的默認設置是在 /etc/login.defs
4.passwd的加密究竟用的哪一種加密算法,在/etc/shadow裏面的第二字段就有據可查,總共由3個$符隔開,第一和第二個$之間表示加密的算法,爲6表示sha512,第二個$和第三個$之間表示的是salt,最後一段就是真正的加密數據了。
passwd --status USERNAME ,或者 passwd -S USERNAME 能夠也能夠查看帳戶的屬性以及使用的什麼加密算法
加密算法 對稱和非對稱
公式:s={p,c,k,e,d}, p=Ek(c),c=Dk(p)
對稱 DES,3DES,RC2 RC4
非對稱 RSA DSA
單向加密 md5 sha base64 hmac
加密算法代號:
1 md5:message digest,128bits 消息摘要
2 sha:secure hash algorithm 安全的哈希算法,160bits
3 sha224
4 sha256
5 sha384
6 sha512
設置普通用戶也能執行yum等命令,等於root權限。
一、打開visudo文件,設置 serverdevops ALL=(ALL) ALL