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