国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > 如何限制Linux用戶的訪問權(quán)限

    如何限制Linux用戶的訪問權(quán)限

    時間: 孫勝652 分享

    如何限制Linux用戶的訪問權(quán)限

      如果你不希望自己的文件被人讀取,又或者只是不想某個特定的用戶讀取修改文件,限制訪問權(quán)限是最好的處理方法,下面學(xué)習(xí)啦小編就給大家介紹下Linux下限制用戶訪問權(quán)限的方法,一起來學(xué)習(xí)下吧。

      現(xiàn)在需要限定某個用戶對特定目錄/文件的訪問權(quán)限,或者把某個用戶的訪問范圍限制在某個目錄/文件中?,F(xiàn)實情況下,還是能遇到這樣的需求的,比如說ubuntu下有多個可登錄用戶,默認(rèn)情況下,用戶A的工作目錄(一般為/home/A)對任何其他用戶來說都是可讀的,但是用戶A可能不希望其他用戶(或者某個特定用戶)讀取A的文件。

      這里提出三個解決方案。

      第一種:使用chmod更改特定目錄的權(quán)限。這能起到限制特定目錄被某些人訪問的作用,限定某個用戶的目的也能達到,但是會誤傷其他用戶。

      第二種:使用linux容器,例如lxc。耗費空間,設(shè)置稍顯麻煩。

      第三種:使用setfacl命令設(shè)定訪問控制。

      其中,第三個方案是最符合要求的。本文主要講該方案的具體實現(xiàn)并在我自己的本上測試。我的系統(tǒng)為Linux Mint 15 64位,根目錄/使用的是ext4文件系統(tǒng),/home使用的btrfs文件系統(tǒng)。

      安裝acl

      代碼如下:

      sudo apt-get install acl

      有資料說是要重啟系統(tǒng),但是測試的時候我發(fā)現(xiàn)這個在以前就已經(jīng)安裝好了(不知道是Mint自帶了還是我胡亂裝的),沒有重啟依舊有效。

      使用setfacl

      以root的身份執(zhí)行下面的命令:

      代碼如下:

      # mkdir /home/test

      # touch /home/test/foo.txt

      # vim /home/test/foo.txt

      # ls -ld /home/test/

      drwxr-xr-x 1 root root 14 Jan 16 09:46 /home/test/

      # ls -ld /home/test/foo.txt

      -rw-r--r-- 1 root root 6 Jan 16 09:46 /home/test/foo.txt

      上面的命令在/home目錄下創(chuàng)建目錄test,在test目錄下創(chuàng)建文件foo.txt,并在foo.txt下隨便加了些內(nèi)容。然后以普通用戶letian的身份訪問foo.txt,可以讀foo.txt。

      現(xiàn)在以root身份運行setfacl,使得/home/test目錄及其里面的文件和目錄不能被letian訪問。

      代碼如下:

      # setfacl -R -m u:letian:- /home/test/

      -R表示遞歸,-m表示修改,u:letian:-表示用戶(user)letian對/home/test沒有任何權(quán)限??梢愿鶕?jù)需要添加r、w、x及其組合。 我們查看一下test目錄的詳細(xì)信息:

      代碼如下:

      # ls -ld /home/test/

      drwxr-xr-x+ 1 root root 14 Jan 16 09:46 /home/test/

      文件權(quán)限后面出現(xiàn)了一個+號,這說明該文件或者目錄設(shè)置了ACL。foo.txt的權(quán)限信息后面也會有+號。 然后,以letian的身份訪問該目錄:

      代碼如下:

      $ ls /home/test

      ls: cannot open directory /home/test: Permission denied

      使用getfacl

      getfacl用來查看對某個目錄/文件設(shè)置的acl。

      代碼如下:

      $ getfacl /home/test

      # file: /home/test

      # owner: root

      # group: root

      user::rwx

      user:letian:---

      group::r-x

      mask::r-x

      other::r-x

      刪除設(shè)置的acl

      代碼如下:

      # setfacl -b /home/test/

      # getfacl /home/test

      # file: /home/test

      # owner: root

      # group: root

      user::rwx

      group::r-x

      other::r-x

      上面就是Linux限制用戶訪問權(quán)限的介紹了,本文一共提供了三個解決方案,每個方案都能解決你的問題,其中以第三方案為佳,希望對你有所幫助。

    312197