linux用戶組及權限

我們要想訪問到系統資源,就需要以某個user身份登錄進系統,這個user身份在系統中具有唯一標識符(UID),在訪問某個文件資源的時候,會首先檢測這個用戶是否具有訪問的權限,然後再檢測這個文件是否對這個用戶開放了訪問權限。

一、用戶

    什麼是用戶?用戶在系統中是能夠訪問資源的標識符。一個用戶可以屬於多個組。

    用戶分類:
            管理員root,UID爲0
            普通用戶:UID範圍1-65536
                    系統用戶:UID範圍1-499
                    一般用戶:UID範圍500-65535
            (如果用戶的數量超過65535,就使用32進製做標識符)

二、組

    什麼是組?組是一個容器,用來存放用戶的容器,一個組可以有多個用戶。
    用戶組類別,可以分爲:系統組和一般組,也可以分爲:私有組,基本組和附加組;私有組:創建用戶時,如果沒有指定用戶所屬組,那麼系統會自動爲其出創建一個與用戶名相同的組;一般組:用戶的默認組;附加組:默認組以外的其它組。

三、權限

決定用戶是否能夠訪問資源。

    使用ls  -l /etc/passwd對列出的內容分析:
    [root@localhost ~]# ls -l /etc/passwd
    -rw-r--r--. 1 root root 856 Jun 12 10:45 /etc/passwd
            第一個 - :表示文件的類型
            rw- :表示用戶的權限,r表示用戶具有讀權限,w表示用戶具有寫權限,- 表示用戶沒有執行權限。
            r-- :表示所屬組的用戶具有的權限,r表示所屬組的用戶具有讀權限,-表示所屬組的用戶沒有寫權限,- 表示組的用戶沒有執行權限。
            r-- :表示其他用戶具有的權限,r表示其他用戶具有讀權限,-表示其他用戶沒有寫權限,- 表示其他用戶沒有執行權限。
            root  root :表示/etc/passwd文件所屬的用戶和組。
            856 :文件大小,單位字節。
            Jun 12 10:45 :文件最近一次修改(modify)時間。
            /etc/passwd :文件名。
            (以上只是示例,不同文件信息不同)
    權限的詳細介紹:
            權限      二進制表示    八進制表示    
            ---               000               0                   無權限
            --x               001              1                    執行權限
            -w-              010               2                   寫權限
            -wx              011              3                   寫和執行權限
            r--               100               4                   讀權限
            r-x               101               5                   讀和執行權限
            rw-              110               6                   讀寫權限
            rwx              111              7                   讀寫執行權限

    對於文件來說,如755表示rwxr-xr-x權限,表示文件所屬的用戶具有讀寫執行權限,所屬組的用戶具有讀和執行權限,其他用戶具有讀和執行權限,其中的x表示此文件具有運行的權限;對於目錄來說x表示能夠進入到此目錄,可以使用ls等命令來列舉查看文件,對文件來說寫w權限表示可以刪除、修改文件內容,r讀權限可以使用cat等命令查看文件內容。
    對用戶student來說,如果想要使用cat等命令查看file文件的內容,首先查看用戶是否具有執行cat命令的權限,如果有,再查看file文件的所屬用戶和組,如果file文件屬於student用戶且具有r權限,那麼就可以查看文件內容,如果不屬於student用戶,但是這個student用戶在file文件的所屬組裏,且這個組有r權限,那麼student也可以查看文件內容,除此之外,如果file文件具有其他用戶可讀權限,也可以查看文件內容。
    需要注意的是root用戶不受權限的約束。

四、/etc/passwd,/etc/group,/etc/shadow文件詳解

1./etc/passwd存放用戶相關信息的文件

    如 root:x:0:0:root:/root:/bin/bash 冒號作爲分隔符
    root表示用戶名
    x表示密碼佔位符
    0用戶uid
    0用戶組gid
    root註釋信息
    /root家目錄
    /bin/bash登陸後運行的bash程序
    (查看哪些是系統中的合法shell,可以查看/etc/shells)

2./etc/group組相關信息

    查看內容如:bin:x:1:bin,daemon 冒號分隔符
    bin組名稱
    x密碼佔位符
    1組gid
    bin,daemon屬於bin組的用戶

3./etc/shadow

    部分內容:student:$6$XeP2QJOX$Po/4iCJKdoWX4tTytGCG4022pFZ5oK53vzdW7Gt7AsiAh1mtyKm1xnAwdw/7B6517D02anKwZmToQR04L87n41:17698:0:99999:7::: ,冒號分隔
    第一段student表示用戶名
    第二段中$6$XeP2QJOX$,XeP2QJOX這個密碼標識,6表示加密算法;Po/4iCJKdoWX4tTytGCG4022pFZ5oK53vzdW7Gt7AsiAh1mtyKm1xnAwdw/7B6517D02anKwZmToQR04L87n41這段表示加密後的密碼
    第三段17698表示從1970-1-1開始到最近一次修改密碼的時間
    第四段0表示密碼最短使用期限,0表示不做限定
    第五99999段表示密碼最長使用期限,99999表示不做限制
    第六段7表示密碼快失效的警告時間,7意味着距離密碼失效還剩7天就發出警告
    第七段表示密碼非活躍時間,也就是說你可以登陸,但必須更改密碼
    第八段密碼失效時間
    第九段保留字段,沒其他作用
    (在第二段中有些是!!或者 * 號,這表示禁止此用戶登錄)

五、總結

root管理員用戶不受任何權限的約束,需要注意。
加密方法:
        對稱加密:加密和解密使用同一個密碼
        公鑰加密:每個密碼都成對兒出現,一個爲私鑰(secret key),一個爲公鑰(public key)
        單向加密,散列加密:提取數據特徵碼,常用於數據完整性校驗
                    1、雪崩效應
                    2、定長輸出
                            MD5:Message Digest, 128位定長輸出
                            SHA1:Secure Hash Algorithm, 160位定長輸出
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章