mageedu_20160802

 用戶的管理權限設置與更改以及ACL的存在及其實用意義

    

一.用戶的管理權限如何設置與更改以及umask值的含義

   由于linux系統是一個多用戶使用的系統,對于各個用戶指定的文件或目錄必須存在一套管理系統,以防止多用戶對相同文件的混淆使用。于是催生出了linux系統文件的用戶權限設置。其存在的意義就是每一個文件或目錄對于不同的用戶區分讀取,寫入,執行三種權限,即:r,w,x。下面將詳細介紹如何定義文件或目錄的權限以及相關命令

    1.文件的長格式內容意義

  當用戶在某一個文件目錄的時候,輸入“ls -l”命令,則可以顯示當前目錄下所有文件的長格式,舉例說明:在/目錄下輸入ll(ls -l的別名),以/etc行為例,顯示結果為:

  drwxr-xr-x 129 root root 8192 Aug  3 10:21 etc

  其對應意義分別為d:文件類型為目錄文件。rwxr-xr-x就表示此文件的權限,前三位表示屬主權限,中三位表示屬組權限,后三位表示其他不相關用戶權限。129表示/etc的硬鏈接數量。前一個root表示文件屬主,后一個root表示文件屬組。最后為最近查看日期和文件名etc。


    2.更改權限指令:chmod

  對于一個文件來說有三種登錄用戶:文件所有者,即屬主,使用u表示。文件所屬組,使用g表示,還有其他不相關用戶,使用o來表示。chmod指令的作用就是更改u,g,o的使用權限,它的使用方法大致有三種:賦值法,授權法,八進制表示法。下面舉出示例:

  賦值法:~]# chmod u=rw,g=r,o= /testdir    

  此命令表示更改/testdir的屬主權限為rw-,屬組權限為r–,其他權限為—。所以/testdir的使用權限為:drw-r—–。需要注意的是,賦值表示法的結果完全覆蓋之前的使用權限,如果只想更改u,g,o的某一種權限,使用授權表示法會更簡單。

  授權法:~]# chmod u+rw,g+r  /testdir

  如果原/testdir的權限為:d———,則輸出指令后會變為:drw-r—–。也就是說在原來的權限基礎上做出改變。在某些情況下,如果u,g,o需要的權限相同,可以使用a代替,比如

  ~]# chmod u+x,g+x,o+x /testdir  等于 ~]# chmod a+x /testdir 

  a的用法同樣適用于賦值法。

  八進制表示法:此方法我們可以將rwx rwx rwx看做為3個八進制數字,rwx代表7,—代表0,組合使用即為八進制表示法,舉例如下:

  ~]# chmod 755 /testdir 

  此命令表示將/testdir權限改為:drwxr-xr-x 

  

    3.更改屬主、屬組指令:chown,chgrp

  chown指令作用為更改文件的屬主和屬組,用法如下:

  ~]# chown wangcai:natasha /testdir/file1

  表示定義 /testdir/file1 文件屬主為wangcai,屬組為natasha,如果將上述命令:natasha去掉的話,就只定義屬主wangcai。

  chgrp指令只能定義文件的屬組,用法如下:

  ~]# chgrp natasha /testdir/file1

  表示定義 /testdir/file1 文件的屬組為natasha

    4.umask值的表示含義

  umask表示文件權限的反向編碼。新文件的創建默認權限是指定的,其指定權限與umask值相關。其權限八進制的計算方式為:

  對于目錄:777-umask值=默認權限八進制

  對于文件:666-umask值=默認權限八進制(注意:為了安全,文件創建默認不應該擁有x權限,所以得出值如果為奇數,需要每個奇數+1)。舉例:

  umask:033

  權限:666-033=633

  所以在這里需要將633后兩位分別+1,得出的權限結果為:644,即:-rw–wx-wx

二.用戶及組密碼的更改以及相關配置文件

  用戶和組密碼更改的指令有如下:passwd,gpasswd。分別修改用戶密碼以及用戶組密碼,其相關配置文件存放在/etc/passwd,/etc/shadow,/etc/gpasswd,/etc/gshadow文件中。其中文件內容格式以及其代表意義如下:

    1.用戶以及用戶密碼信息的配置文件

  用戶配置文件/etc/passwd內容格式:

  login:passwd:UID:GID:COMMENT:/home:/bin/bash

  按順序內容分別表述為:用戶名:密碼(實際存放在/etc/shadow中,此處用x表現):用戶UID:用戶GID:用戶注釋信息:用戶文件存放的家目錄路徑:用戶所使用的shell腳本類型。

  用戶密碼配置文件/etc/shadow內容格式:

  login:encrpted_passwd(加密):最近修改passwd日期:passwd最短持續時間:passwd最長持續時間:提示更改passwd警告時間:用戶過期時間:保留位

    2.passwd命令的使用:

  ~]# passwd username

  輸入新密碼

  確認新密碼

  gpasswd的修改與之相同,但是配置文件格式不同:

  /etc/group:

  wangcai:x:3001:user1,user2,wangcai

  信息表示為順序為,groupname:gpasswd:GID:user_list(user1,user2,wangcai)。

    3.getent命令的使用

  用戶可以使用cat,head,tail命令查看用戶配置文件信息,但是如果文件信息量龐大,從中找尋指定用戶就會變得困難,getent命令可以快速查找配置文件指定內容,如下使用:

   ~]# getent passwd wangcai

  輸入此命令后直接顯示/etc/passwd 內的wangcai用戶信息。passwd可替換為其他配置文件

三.SUID,SGID與sticky

  SUID,SGID,sticky的意義為分別對文件屬主,屬組,其他用戶所設置的特殊權限。


    1.SUID

  SUID只對二進制可執行程序有效,設定命令為:

  chmod u+s file      

  其中file文件的執行權限為-rwxr–r–,屬主屬組為root,命令執行后會變為-rwsr–r–

  這時如果非屬主用戶mcgee執行此文件,就會有執行權限。所以SUID權限是十分危險的。

  取消file的SUID權限命令為:

  chmod u-s file

    2.SGID

  SGID常常作用于目錄上,設定命令為如下:

  chmod g+s dir

  如果dir目錄原權限為:drwxr-xrw-,屬主為root,屬組為root。執行命令后權限變為:drwxr-srw-

  如果切換其他用戶mcgee(擁有w權限)在dir內創建文件,如果dir沒加SGID,默認新建文件屬主,屬組為用戶mcgee的屬主和屬組。但是在加SUID的dir目錄內,創建的新文件屬主為mcgee,但是屬組一定時dir目錄的屬組root。

 取消dir的SGID權限命令為:

  chmod g-s dir

    3.sticky

  sticky權限的作用是保護文件被非屬主的其他用戶刪除,設定命令為:

  chmod 0+t file2

   如果file2權限為-rwxr-xrwx,執行后會變為-rwxr-xrwt。此時對于文件file2,只有file2屬主與root可以對file2目錄有執行權限。

  取消file2的sticky權限

  chmod -o-t file2

四.ACL的意義與使用命令

  ACL:access control list.訪問控制列表。存在的意義為對特定的其他用戶設置權限。其相關命令有setfacl,getfacl兩種。

  setfacl:對特定文件或目錄設置acl,用法如下:

  ~]# setfacl -m u:wang:rwx file3

  表示文件file3對用戶wang設置了rwx的權限

  ~]# setfacl -Rm g:sales:rwx dir2

  表示dir2目錄以及其遞歸文件對組sales內的用戶設置rwx的權限

  其中option可以查詢幫助文件

  getfacl:顯示file/directory的acl設置,如下:

  ~]# getfacl file3

  其中會多出顯示file3對wang的權限。

原創文章,作者:mcgeewang,如若轉載,請注明出處:http://www.www58058.com/27955

(0)
mcgeewangmcgeewang
上一篇 2016-08-03
下一篇 2016-08-03

相關推薦

  • Linux下裝載軟Raid

    步驟1.創建磁盤,并轉換為fd #fdisk /dev/sdb //這里使用新的磁盤sdb 然后輸入n ,創建分區 使用默認的起始點 輸入大小為+100M 然后重復剛才的操作4次,創建4個分區,創建完4個分區后 我們還要改變分區的ID 在分區的主菜單輸入T 然后輸入要改變ID的分區號,也就是最后4個分區 然后輸入分區的ID:fd 四個分區都改成FD 完成后,…

    Linux干貨 2017-08-12
  • 15磁盤管理

    在系統中,常見的硬盤接口有分兩類:并行的和串行的 并行: IDE: 133MB/s SCSI: 640MB/s 串行: SATA: 6Gbps SAS: 6Gbps USB: 480MB/s 存儲設備的設備文件命名方式大致為:/dev/DEV_FILE IDE: /dev/hd#  #–>0,1,2,3 SCSI,SATA,SAS…

    Linux干貨 2016-12-02
  • 8月8日作業

    4、如何設置tab縮進為4個字符?    編輯用戶工作目錄下.vimrc文件,使vim基礎設置對個人用戶生效,或者編輯/etc/vimrc文件,使配置對系統全部    用戶生效。    set tabstop=4 5、復制/etc/rc.d/init.d/functions文件至/tmp目錄;替換/…

    Linux干貨 2016-08-12
  • Linux系統中的防火墻iptables

    iptables/netfilter——Linux系統下的防火墻 基本原理 防火墻主要功能 工作于主機或者網絡邊緣,對進出本主機或本網絡的報文進行匹配檢測,對匹配到規則的報文進行于規則相對應的處理。 防火墻主要分類 按功能分類 主機防火墻網絡防火墻 按構成分類 軟件防火墻硬件防火墻 Linux防火墻軟件iptables/netfilter(以后簡稱iptab…

    Linux干貨 2017-06-13
  • rsync+inotify實時同步備份數據

    rsync同步 rsync+inotify實時同步備份數據 軟件簡介: rsync命令簡介: rsync命令是一個遠程數據同步工具,可通過LAN/WAN快速同步多臺主機間的文件。rsync使用所謂的“rsync算法”來使本地和遠程兩個主機之間的文件達到同步,這個算法只傳送兩個文件的不同部分,而不是每次都整份傳送,因此速度相當快。 rsync是一個功能非常強大…

    Linux干貨 2016-10-28
  • apache編譯安裝

    apache是什么:     Apache是世界使用排名第一的Web服務器軟件。它可以運行在幾乎所有廣泛使用的計算機平臺上,由于其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。它快速、可靠并且可通過簡單的API擴充,將Perl/Python等解釋器編譯到服務器中。同時Apache音譯為阿帕奇,是北美印第安…

    Linux干貨 2016-08-24

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-08 14:05

    文章整體思路清晰,對用戶,權限管理命令總結很詳細,建議能結合實際操作可加深自己對權限模型的理解。

欧美性久久久久