在 Linux 上指定目錄的讀寫權限賦予用戶,有兩種方法可以實現這個目標:第一種是使用 ACL (訪問控制列表),第二種是創建用戶組來管理文件權限,下面會一一介紹。為了完成這個教程,我們將使用以下設置:
創新互聯公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網站設計、做網站、企業官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯網時代的子洲網站設計、移動媒體設計的需求,幫助企業找到有效的互聯網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!
請確認所有的命令都是使用 root 用戶執行的,或者使用 sudo 命令來享受與之同樣的權限。讓我們開始吧!下面,先使用 mkdir 命令來創建一個名為 share 的目錄。
1. 使用 ACL 來為用戶賦予目錄的讀寫權限
重要提示: 打算使用此方法的話,您需要確認您的 Linux 文件系統類型(如 ext3 和 ext4, NTFS, BTRFS)支持 ACL。
1.1. 首先, 依照以下命令在您的系統中檢查當前文件系統類型,并且查看內核是否支持 ACL:
從下方的截屏可以看到,文件系統類型是 ext4,并且從 CONFIG_EXT4_FS_POSIX_ACL=y 選項可以發現內核是支持 POSIX ACL 的。
[圖片上傳失敗...(image-c85622-1574572716190)]
1.2. 查看文件系統(分區)掛載時是否使用了 ACL 選項。
[圖片上傳失敗...(image-bdb4d9-1574572716190)]
通過上邊的輸出可以發現,默認的掛載項目中已經對 ACL 進行了支持。如果發現結果不如所愿,你可以通過以下命令對指定分區(此例中使用 /dev/sda3)開啟 ACL 的支持)。
1.3. 指定目錄 share 的讀寫權限分配給名為 shenweiyan 的用戶了,依照以下命令執行即可。
[圖片上傳失敗...(image-dfb909-1574572716190)]
在上方的截屏中,通過輸出結果的第二行 getfacl 命令可以發現,用戶 shenweiyan 已經成功的被賦予了 /data/share 目錄的讀寫權限。
如果想要獲取 ACL 列表的更多信息。請參考:
2. 使用用戶組來為用戶賦予指定目錄的讀寫權限
2.1. 如果用戶已經擁有了默認的用戶組(通常組名與用戶名相同),就可以簡單的通過變更文件夾的所屬用戶組來完成。
另外,我們也可以通過以下方法為多個用戶(需要賦予指定目錄讀寫權限的)新建一個用戶組。如此一來,也就創建了一個共享目錄。
2.2. 接下來將用戶 shenweiyan 添加到 dbshare 組中:
2.3. 將目錄的所屬用戶組變更為 dbshare:
2.4. 現在,給組成員設置讀寫權限。
ok,在 Linux 上給用戶賦予指定目錄的讀寫權限就介紹到這里 !
參考資料:
在 Linux 系統中,賦與一個(或者是多個)文件的命令是 chmod。如下所示:
$chmod 754 *.c
其中:7代表文件所有者本人的權限為:可讀(4)、可寫(2)、可執行(1); 5 代表同組用戶的權限為:可讀(4)、可執行(1);4 代表其它用戶的權限為可讀。
chown -R keesail:keesail ./local
賦予local目錄給keesail權限
chmod 760 ./local
賦予local目錄讀寫權限給keesail,別的用戶對這個目錄沒有任何權限。
注:chmod 777 文件夾名稱,可以把文件夾設置成所有用戶都有完全的權限。
不過更改系統文件夾下的默認權限,會導致安全問題。
擴展資料:
linux 用戶權限
1、賦予root權限
usermod -g root test
2、建立用戶
useradd –d /usr/test -m test
此命令創建了一個用戶test,用戶主目錄為/usr/test
3、設置用戶密碼
修改自己的密碼 passwd ,需要輸入舊密碼
超級用戶修改其他用戶密碼:(無需修改密碼)
passwd test
4、chgrp命令
功能:改變文件或目錄所屬的組。
例1:$ chgrp - R book /opt/local /book
改變/opt/local /book/及其子目錄下的所有文件的屬組為book。
5、chown
功能:更改某個文件或目錄的屬主和屬組。這個命令也很常用。例如root用戶把自己的一個文件拷貝給用戶xu,為了讓用戶xu能夠存取這個文件,root用戶應該把這個文件的屬主設為xu,否則,用戶xu無法存取這個文件。
例1:把文件shiyan.c的所有者改為wang。
$ chown wang shiyan.c
例2:把目錄/his及其下的所有文件和子目錄的屬主改成wang,屬組改成users。
$ chown - R wang.users /his
最近想著學習linux提權的一些姿勢,這里簡單分享學習SUID提權的一些知識點。
先來父復習一下linux文件的權限分配。
ls命令用來查看系統上面的文件、目錄的權限。
字段的第一個字符表示對象的類型。
之后是每三個字符為一組,每一組定義了3種訪問權限。
這三組分別表示文件所有者(Owner)、用戶組(Group)、其它用戶(Other Users)。
然后規定用數字4、2和1表示讀、寫、執行權限。即r=4,w=2,x=1。
所以
chmod改變權限
chown用來更改某個目錄或文件的用戶名和用戶組
該命令需要root權限運行
而文件權限除了r、w、x外還有s、t、i、a權限。
SUID
當執行的文件被賦予了s權限,就被稱為Set UID,簡稱為SUID的特殊權限。八進制數為4000。
舉個例子:
linux修改密碼的passwd就是個設置了SUID的程序。因為如果普通賬號cseroad需要修改密碼,就要訪問/etc/shadow,但是該文件只有root能訪問。那他是怎么修改的呢?原理:
查看該程序,發現被賦予了s權限。當cseroad需要修改自己的密碼時,passwd程序的所有者為root,cseroad用戶執行passwd 程序的過程中會暫時獲得root權限,所以可以修改/etc/shadow文件。
SGID
而當s標志出現在用戶組的x權限時則稱為SGID。八進制數為2000。
當用戶對某一目錄有寫和執行權限時,該用戶就可以在該目錄下建立文件,如果該目錄用SGID修飾,則該用戶在這個目錄下建立的文件都是屬于這個目錄所屬的組。(父目錄跟隨)
SBIT
就是Sticky Bit,出現在目錄的其他用戶執行權限X上,標記為T,八進制數為1000。對目錄有效,使用者只能對自己創建的文件或目錄進行刪除/更名/移動等動作,而無法刪除他人文件(除非ROOT)
賦予s權限:chmod 4755 filename 或者 chmod u+s /usr/bin/find
取消s權限:chmod 755 filename 或者 chmod u-s /usr/bin/find
以centos為例。
還有額外的幾個命令
我們就可以通過覆蓋/etc/passwd文件,提權為root
默認該命令沒有s權限
find命令
假如find命令被賦予s權限。
創建a.txt文件,執行 /usr/bin/find a.txt -exec /bin/bash -p \; ,成功提權。
這里注意的是新版Linux系統對子進程的suid權限進行了限制,不同的操作系統結果也會不一樣。
具體細節參考
利用python可反彈得到root權限的shell
python命令
根據 查找python利用姿勢。
條件是sudo安裝時需要輸入當前用戶密碼。
在實戰過程中,多查看 是否存在SUID提權,以及使用searchsploit命令查看某程序是否存在本地提權漏洞。
分享文章:關于linux分配某命令權限的信息
當前網址:http://vcdvsql.cn/article46/hpipeg.html
成都網站建設公司_創新互聯,為您提供響應式網站、網站設計公司、網站策劃、網站建設、服務器托管、企業網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯