格式說明:
操作
概念
命令
說明及舉例
六.用戶、權限
創建用戶、修改用戶、刪除用戶
useradd 創建一個用戶 useradd -r 創建系統用戶,系統用戶不創建家目錄 useradd -D /etc/default/useradd 默認設置配置文件 newusers +文件 批量創建用戶,按照正確格式寫到文件里 cat 文件 | chppasswd 批量修改密碼 文件有格式要求 用戶名:密碼 cp -r /etc/ske1/.[^.]* /testdir/user4 創建用戶后,必須把必要的配置文件拷貝到新用戶的家目錄。 cp -r /etc/ske1/. /testdir/user4 更好的復制方法 chpasswd mima.txt 導入剛才添加用戶的密碼 格式:用戶名:密碼 usermod +需要修改的屬性(-aG 多個輔助組逗號分開 -u 新屬性 -g 新屬性)最后+用戶名 修改用戶屬性 加-m 是把原來的家目錄中文件轉移到新指定的家目錄 usermod -G"" +用戶名 清空輔助組 userdel +用戶 userdel -r +用戶 家目錄和郵箱也刪掉
vim
非編輯模式下按yy是復制,按p是粘貼,按u是后退
創建用戶配置文件
/etc/default/useradd /etc/skel/* /etc/login.defs 新建賬號密碼策略
id
id -g wang 看用戶主組id id -G wang 輔組id
su 切換用戶
su +用戶名 不完全切換 su - wang 玩全切換 不能總切換,會出問題,切換完之后完事退出 su -root -c +命令 直接用root權限執行命令
passwd 設置密碼
passwd -l wang 鎖定wang用戶密碼 passwd -u wang -f 強制把wang用戶設置為空 passwd -e wang 下次登錄強制改口令 echo "PASSWORD" | passwd--stdin USERNAME 常用改密碼腳本 chage -l wang 顯示wang用戶密碼策略 chage wang 修改wang用戶密碼策略
groupmens
groupmens -l -g g1 groupmens -p -g g1 groupdel new1 刪除new1組 gpasswd g1 改g1組密碼
文件權限
r 讀
w 寫
x 執行
chown wang f1 改變f1文件的所有者 chown -R root. /testdir 把文件夾及里面的文件所有者都改成root chgrp wang f1 改變f1文件的所屬組 chmod who opt permission f1 f2 .. who:u,g,o,a opt:+,-,= per:r,w,x,X 數字:4,2,1(rwx,8進制,代表三個權限,賦予權限就是數字相加rwx=7)
chmod o-r,g+w f1 把f1文件權限修改為:其他人員減去讀權限,組成員加寫權限
文件能不能刪不是看文件的權限,而是看文件所在目錄的權限
chmod -R +x dir/ 給dir目錄及子目錄和文件都加x權限(給所有文件加執行權限是不安全的) chmod -R a+X dir/ 只給dir目錄及子目錄都加x權限不給里面的文件加執行權限(前提是文件本身沒有執行權限) chmod --reference f1 f2 f3復制f1的權限給f2 f3
chown 只有root能執行 chgrp root,文件所有者user改為
新建文件和目錄的默認權限
umask 從最大權限中屏蔽掉相應的權限為,從而得出默認權限
文件最大權限:666
目錄最大權限:777 默認權限=最大權限-umask—-如果是目錄,不用改;如果是文件,結果中有奇數權限+1,偶數權限不變
例umask=137 ,創建文件權限666-137=53-1,通過上面的公式奇數+1得出最后結果為640
umask(022) + default =dir777 / file666 umask 066 改默認為066 (臨時生效) umask u=rw,g=r,o= umask -p >>.bashrc 直接把umask寫到配置文件里
..bashrc 改配置文件后打此命令,修改立即生效
Linux文件系統上的特殊權限
suid
只能作用在二進制的程序上
chmod u+s /user/bin/nano 把/user/bin/nano所有者權限加s,運行此程序的用戶都擁有root權限,危險! chmod 4755 /user/bin/nano 4就是s 運行效果同上 suid=4
sgid
作用在二進制文件時,用戶運行該程序時自動繼承該程序所屬組的權限
chmod g+s /bin/cat sgid=2
作用在目錄時(目錄權限至少是770時) 目錄下新建的文件或目錄自動繼承該目錄的所有組,即使用戶不在目錄所屬組
chgrp 組名 dir 創建組
chmod g+s dir 分配權限
sticky 粘滯
只能作用在目錄上
chmod o+t dir dir目錄下普通用戶不能刪別人的文件 chmod 1777 dir dir目錄下普通用戶不能刪別人的文件
設定文件特定屬性
chattr +A a.txt 鎖定讀時間 chattr +i a.txt 不能對該文件改刪 (-i 取消) chttr +a a.txt 只能在文件里增加內容,不能刪除原有的
訪問控制列表
ACL實現靈活的權限管理
setfacl -m u:wang:000 f1 wang用戶對f1文件無任何權限 setfacl -x u:wang f1 刪除wang用戶acl權限 setfacl -b f1 清空f1文件acl權限 setfacl -m u:li:rw f1 li用戶對f1文件能讀能改 getfacl f1 看文件的acl權限 setfacl -Rm u:wang:000 /dir setfacl -M acl.txt 事先把權限寫到文檔中,里面可以寫組權限 setfacl -m d:wang:rw /dir 目錄下新建的文件或目錄王用戶默認有rw權限 setfacl -X acl.txt 刪除文檔中的權限(文檔中格式為不帶權限) setfacl -m mask::rw f1 最大權限為rw,
練習:
groupadd g1 g2 g3
chgrp g1 /date/testdir
chmod g+s /date/testdir
setfacl -m g:g2:rwx /date/testdir
setfacl -m g:g:rw /date/testdir
setfacl -m g:g3:r /date/testdir
chmod 0= /testdir
原創文章,作者:自己泡面,如若轉載,請注明出處:http://www.www58058.com/39187