linux系統(tǒng)下用戶管理相關(guān)介紹
一、用戶及用戶組存在的意義
1)用戶存在的意義
系統(tǒng)的資源是有限的,如何合理分配系統(tǒng)資源?
1.身份 account
2.授權(quán) author
3.認(rèn)證 auth
以上3個(gè) 'a' 稱為3A機(jī)制,3A機(jī)制組成系統(tǒng)中最底層的安全架構(gòu)。
2)用戶組存在的意義
用戶組是一個(gè)邏輯容器,對(duì)用戶進(jìn)行歸類和統(tǒng)一授權(quán)。
簡(jiǎn)單說用戶組就像是我們?cè)趯W(xué)校的時(shí)候的班級(jí)或者社團(tuán)組織一樣,你在的班級(jí)被賦予了什么權(quán)利,你在社團(tuán)中的部門有什么權(quán)力,那你就有什么權(quán)利。這樣做方便了權(quán)力的統(tǒng)一下放。
二、用戶及用戶組在系統(tǒng)中存在的方式
因?yàn)橛?jì)算機(jī)對(duì)數(shù)字敏感,而我們?nèi)藢?duì)名稱比較敏感,利用這個(gè)特性我們?cè)谟?jì)算機(jī)內(nèi)部可以用數(shù)字和字符串相關(guān)聯(lián)的形式存儲(chǔ)用戶。
我們知道,在Linux中一切都是文件,所以用戶也不例外,我們所說的用戶和用戶組其實(shí)也就是文件中的一條字符串。
用戶是在/etc/passwd文件中的一行字符 用戶組是在/etc/group文件中的一行字符 vim /etc/passwd 用此命令可以查看passwd文件內(nèi)容,進(jìn)而得知用戶信息 vim /etc/group 用此命令可以查看group文件內(nèi)容,進(jìn)而得知用戶組信息
但是在文件中查看用戶或用戶組的id信息終究有些麻煩,Linux給我們提供了這樣的命令方便我們查看用戶的相關(guān)信息:
whoami 查看當(dāng)前用戶名稱 id [參數(shù)][用戶名] 查看用戶的id信息,用戶名缺省則查看當(dāng)前用戶 -u查看用戶的用戶id -g查看用戶的主組id -G查看用戶所有組id -n顯示名稱,不能單獨(dú)使用,需要和上面的命令連用來顯示信息 用戶id范圍: 0:超級(jí)用戶id 1-999:Linux系統(tǒng)自用id 1000-65535:用戶級(jí)id 以上id信息都被記錄在/etc/login.defs
三、用戶涉及到的系統(tǒng)配置文件
/etc/passwd????????用戶身份信息文件
passwd中的字符串意義 用戶名稱:用戶密碼:用戶id:用戶主組id:用戶說明:用戶家目錄:用戶默認(rèn)shell
/etc/group? ? ? ? 組身份信息文件
組名稱:組密碼:組id:組的附加成員
/etc/skel/.*? ? ? ? 用戶環(huán)境配置文件模板
/etc/shadow? ? ? ? 用戶認(rèn)證信息文件
/home/username? ? ? ? 用戶家目錄
/var/spool/mail/username? ? ? ? 用戶郵箱文件
四、用戶相關(guān)操作
1)用戶和用戶組建立及刪除
我們可以用watch命令來監(jiān)控用戶的創(chuàng)建和刪除
watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo =======;ls -l /home"
用戶建立命令useradd:
useradd username ##用戶建立 -u id username ##指定用戶uid -g id username ##指定主組id -G id username ##指定附加組id -d dir username ##指定用戶的家目錄 -M username ##創(chuàng)建用戶時(shí)不自動(dòng)創(chuàng)建家目錄 -c word username ##創(chuàng)建用戶時(shí)指定用戶說明 -s shell username ##指定shell userdel username ##用戶刪除 -r username ##刪除用戶同時(shí)刪除家目錄和系統(tǒng)配置文件 groupadd groupname ##組建立 -g id groupname ##指定組id groupdel groupname ##組刪除
2)用戶和用戶組的信息管理
有時(shí)候我們?cè)诜?wù)器的使用過程中需要更改用戶的相關(guān)屬性,雖然我們知道在/etc/passwd文件中用戶是以字符串的形式存儲(chǔ),并且知道字符串的意義:
用戶名稱:用戶密碼:用戶id:用戶主組id:用戶說明:用戶家目錄:用戶默認(rèn)shell
那么理所當(dāng)然我們就可以用root用戶修改這些字段達(dá)到更改用戶信息的目的,但是在實(shí)際應(yīng)用中我們并不會(huì)這么做,而是使用一些相關(guān)命令:
usermod [選項(xiàng)] [參數(shù)] [username] [選項(xiàng)] -l #修改用戶名稱 -u #修改用戶的uid -g #修改用戶主組id -G #修改用戶附加組身份 -aG #添加用戶附加組身份 -c #更改用戶說明文字 -d #更改用戶家目錄指向 -md #同時(shí)更改家目錄指向和家目錄名稱 -s #更改默認(rèn)shell -L #凍結(jié)賬號(hào) -U #解鎖賬號(hào)
我們的密碼信息存儲(chǔ)在shadow文件中,shadow內(nèi)容:
用戶名:加密密碼:最后一次修改時(shí)間:最小修改時(shí)間間隔:密碼有效期:密碼需要變更前的警告天數(shù):密碼過期后的寬限時(shí)間:賬號(hào)失效時(shí)間:保留字段
我們可以用passwd命令來修改密碼相關(guān)屬性信息
passwd [選項(xiàng)] [參數(shù)] [username] 如果選項(xiàng)和參數(shù)缺省則修改'username'的密碼 [選項(xiàng)] -S #查看密碼狀態(tài) -l #凍結(jié)賬號(hào)認(rèn)證 -u #解鎖賬號(hào)認(rèn)證 -d #刪除用戶密碼 -e #修改默認(rèn)使用時(shí)間為0 -n #設(shè)置最短使用時(shí)間 -x #設(shè)置密碼過期時(shí)間 -w #設(shè)置過期警告時(shí)間 -l #設(shè)置非活躍天數(shù) change -d 0 [username] #必須修改密碼才能登陸 change -E "xxxx-xx-xx" [username] #設(shè)置凍結(jié)日期
五、用戶權(quán)力下放
我們?cè)趯?shí)際中使用服務(wù)器,經(jīng)常使用到權(quán)力下放,這可以讓我們以更高的權(quán)限執(zhí)行一些命令,例如我們可以用權(quán)力下放使普通用戶以root身份運(yùn)行一些命令,這樣我們不用登錄root賬號(hào),在保證了系統(tǒng)安全的同時(shí)也達(dá)到了我們的目的。
授權(quán)方法:
我們可以用visudo命令來修改/etc/sudoers文件(當(dāng)然我們也可以用vi或者vim修改,但是vi和vim不提供語(yǔ)法檢測(cè),當(dāng)我們錯(cuò)誤修改文件之后不方便錯(cuò)誤查找)
為了方便,我們約定俗成的在文件的100行左右添加權(quán)力下放:
username hostname=(newusername) [NOPASSWD:] /command, /command1
六、文件權(quán)限查看和讀取
1)權(quán)限查看
ls -l file #查看文件權(quán)限 ls -ld dir #查看目錄權(quán)限
文件權(quán)限的信息分為三大類ugo
u代表user也就是文件的所有者 g代表group也就是文件的擁有組 o代表other也就是其他人,和文件的歸屬?zèng)]有關(guān)系的人 每個(gè)大類型中擁有權(quán)力的標(biāo)志位,也就是rwx r代表read也就是讀權(quán)限 w代表write也就是寫權(quán)限 x代表執(zhí)行權(quán)限
我們可以用chmod命令來修改文件相關(guān)權(quán)限信息
chmod [ugo][+-=][rwx] [filename/dirname] #通過表達(dá)式來賦予權(quán)限 chmod [xxx] [filename/dirname] #通過數(shù)字來賦予權(quán)限 通過對(duì)布爾量的理解我們可以對(duì)rwx三位進(jìn)行二進(jìn)制轉(zhuǎn)8進(jìn)制的轉(zhuǎn)換 分別 r-4 w-2 x-1
S權(quán)限
可以用字符串表達(dá)式的方式設(shè)置S權(quán)限,S權(quán)限的作用:
當(dāng)對(duì)文件的u位設(shè)置s權(quán)限的時(shí)候,表示文件執(zhí)行者在執(zhí)行時(shí)會(huì)獲得文件的所有者身份,它只能用在二進(jìn)制文件上 當(dāng)對(duì)文件的g位設(shè)置s權(quán)限的時(shí)候,表示文件的執(zhí)行者會(huì)獲得文件所屬組身份,如果用在目錄上那么在目錄下創(chuàng)建的文件的所屬組將會(huì)變成此目錄 Sticky Bit的作用只對(duì)目錄生效,效果是在當(dāng)前目錄下只有文件的所有者可以刪除自己的文件
到此這篇關(guān)于linux系統(tǒng)下用戶管理相關(guān)介紹的文章就介紹到這了,更多相關(guān)linux系統(tǒng)用戶管理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Ubuntu18.04.2下安裝 RTX2080 Nvidia顯卡驅(qū)動(dòng)的方法
這篇文章主要介紹了Ubuntu18.04.2下安裝 RTX2080 Nvidia顯卡驅(qū)動(dòng)的方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-07-07CentOS使用本地yum源搭建LAMP環(huán)境圖文教程
這篇文章主要介紹了CentOS使用本地yum源搭建LAMP環(huán)境,詳細(xì)分析了CentOS使用本地yum源搭建LAMP的具體步驟、相關(guān)命令及操作注意事項(xiàng),需要的朋友可以參考下2019-06-06Linux定時(shí)任務(wù)Crontab命令使用詳解與總結(jié)
本為大家介紹了Linux定時(shí)任務(wù)Crontab命令使用詳解并總結(jié)Crontab命令的一些使用技巧以及工作中遇到的一些問題解決方法2018-10-10Tomcat無法加載css和js等靜態(tài)資源文件的解決思路
Tomcat無法加載css和js等靜態(tài)資源文件的情況想必從事相關(guān)行業(yè)的工作人員都有遇到過吧,接下來為大家介紹下詳細(xì)的解決方法,感興趣的朋友可以參考下2013-10-10淺談Linux環(huán)境下gcc優(yōu)化級(jí)別
這篇文章主要介紹了Linux環(huán)境下gcc優(yōu)化級(jí)別,涉及gcc系列的相關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以了解下。2017-09-09Apache Shiro 使用手冊(cè)(四) Realm 實(shí)現(xiàn)
在認(rèn)證、授權(quán)內(nèi)部實(shí)現(xiàn)機(jī)制中都有提到,最終處理都將交給Real進(jìn)行處理。因?yàn)樵赟hiro中,最終是通過Realm來獲取應(yīng)用程序中的用戶、角色及權(quán)限信息的2014-06-06Ubuntu 17.04系統(tǒng)下源碼編譯安裝opencv的步驟詳解
這篇文章主要給大家介紹了在Ubuntu 17.04系統(tǒng)下源碼編譯安裝opencv的相關(guān)資料,文中將一步步的步驟介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08