权限整理案例

权限的作用:通过不同的权限的添加实现对同一个文件或目录不同的用户有着不同的操作权限

一般来说任何用户都有着可读、可写、可执行的访问权限,分别是r、w、x 用数字表示为4、2、1

归属:对于一个目录或文件分别拥有这个文件或目录的拥有者(u)、所属组(g)、和其他用户(o)的归属关系,统称用a表示

默认创建文件的最大权限为:644   最大为666

默认创建目录的组大权限为:755   最大为777

权限位  硬链接数  属主  属组  大小  最后修改时间  文件/目录名称

案例:

公司技术部有一台Linux开发服务器,根据部门内项目组的构成情况,需要建立相应的用户账号,并对开发数据相关目录配置访问权限。

1.文件夹/tech/nsdhome、/tech/jsdhome,分别归属于nsd组、jsd组,禁止其他用户进入。

2.创建部门公共目录/public,技术部的所有员工(tech组)对其拥有可读、可写、可执行,其他用户禁止访问此目录。

3、为了防止员工对公共目录的恶意删除破坏,对公共目录设置t位权限,该目录下的文件或子目录只有root与文件所有者拥有能够删除权限,其他人只有可读的权限。(创建用户haha、xixi添加到tech组)

4、ACL权限设置创建账户:mike  john  kaka 创建文件:/data/file1.txt

mike对文件有读写权限,john只有读权限。其他用户没有任何权限,kaka具有与john相同权限,创建lily,lily对file1.txt具有读执行权限,其他用户没有任何权限。

1、

[[email protected] ~]# mkdir -p /tech/{nsdhome,jsdhome}  ##创建目录

[[email protected] ~]# ls /tech/

jsdhome  nsdhome

[[email protected] ~]# groupadd nsd    ##创建用户组

[[email protected] ~]# groupadd jsd

[[email protected] ~]# ll /tech/

总用量 8

drwxr-xr-x. 2 root root 4096 11月  8 02:23 jsdhome

drwxr-xr-x. 2 root root 4096 11月  8 02:23 nsdhome

[[email protected] ~]# chown :nsd /tech/nsdhome/    ##将目录nsdhome的所属组改为nsd

[[email protected] ~]# chown :jsd /tech/jsdhome/

[[email protected] ~]# ll /tech/

总用量 8

drwxr-xr-x. 2 root jsd 4096 11月  8 02:23 jsdhome

drwxr-xr-x. 2 root nsd 4096 11月  8 02:23 nsdhome

[[email protected] ~]# chmod g+w,o=- /tech/{jsdhome,nsdhome}  ##将目录jsdhome、nsdhome的权限修改为770

[[email protected] ~]# ll /tech/

总用量 8

drwxrwx---. 2 root jsd 4096 11月  8 02:23 jsdhome

drwxrwx---. 2 root nsd 4096 11月  8 02:23 nsdhome

2、

[[email protected] ~]# mkdir /public

[[email protected] ~]# ls -ld /public/

drwxr-xr-x. 2 root root 4096 11月  8 02:30 /public/

[[email protected] ~]# groupadd tech

[[email protected] ~]# chown :tech /public

[[email protected] ~]# ls -ld /public/

drwxr-xr-x. 2 root tech 4096 11月  8 02:30 /public/

[[email protected] ~]# chmod g+w,o=- /public

[[email protected] ~]# ls -ld /public/

drwxrwx---. 2 root tech 4096 11月  8 02:30 /public/

3 、

[[email protected] ~]# useradd -G  tech haha ##创建用户的同时给用户添加附加组(还可用usermod -G修改用户的附加组)

[[email protected] ~]# useradd -G  tech xixi

[[email protected] ~]# id haha    ##显示用户haha真实和有效的UID和GID

uid=500(haha) gid=503(haha) 组=503(haha),502(tech)

[[email protected] ~]# id xixi

uid=501(xixi) gid=504(xixi) 组=504(xixi),502(tech)

[[email protected] ~]# passwd haha   ##修改密码

更改用户 haha 的密码 。

新的 密码:

无效的密码: 过于简单化/系统化   ##一般来说用户的密码应满足复杂性即数字、字母大小写、特殊符号其中的三种

无效的密码: 过于简单

重新输入新的 密码:

passwd: 所有的身份验证令牌已经成功更新。

[[email protected] ~]# passwd xixi

更改用户 xixi 的密码 。

新的 密码:

无效的密码: 过于简单化/系统化

无效的密码: 过于简单

重新输入新的 密码:

passwd: 所有的身份验证令牌已经成功更新。

[[email protected] ~]# ls -ld /public

drwxrwx---. 2 root tech 4096 11月  8 02:30 /public

[[email protected] ~]# su - haha   ##通过su命令登陆haha用户

[[email protected] ~]$ cd /public/

[[email protected] public]$ ls

[[email protected] public]$ touch haha.txt    ##进入公共文件夹创建一个文件

[[email protected] public]$ ls

haha.txt

[[email protected] public]$ exit

logout

[[email protected] ~]# su - xixi   ##登陆xixi用户

[[email protected] ~]$ cd /public/

[[email protected] public]$ ls

haha.txt

[[email protected] public]$ rm -rf haha.txt/   ##删除其他用户在公共文件夹所创建的文件

[[email protected] public]$ ls

[[email protected] public]$ exit

[[email protected] ~]# su - haha

[[email protected] ~]$ cd /public/

[[email protected] public]$ ls   ##再次登陆haha用户,查看自己在公共文件夹所创建的文件

[[email protected] public]$ exit

logout

[[email protected] ~]# chmod o+t /public   ##通过给其他用户权限添加粘贴位的方式,禁止他人修改或删除非本人在公共文件夹所创建的文件或目录

[[email protected] ~]# ls -ld /public

drwxrwx--T. 2 root tech 4096 11月  8 02:56 /public

[[email protected] ~]# su - haha

[[email protected] ~]$ cd /public/

[[email protected] public]$ ls

[[email protected] public]$ vim haha.txt   ##重新登录haha用户编辑一个文件

[[email protected] public]$ cat haha.txt

hahahahahahahahaha

[[email protected] public]$ exit

logout

[[email protected] ~]# su - xixi

[[email protected] ~]$ cd /public/

[[email protected] public]$ ls

haha.txt

[[email protected] public]$ rm -rf haha.txt   ##登陆xixi用户,在公共文件夹删除其他人创建的文件

rm: 无法删除"haha.txt": 不允许的操作   ##粘贴位生效!非本人无法修改在公共文件夹下的文件或目录

[[email protected] public]$ cat haha.txt    ##只有查看的权限

hahahahahahahahaha

4、

[[email protected] ~]# useradd mike

[[email protected] ~]# useradd john

[[email protected] ~]# useradd kaka    ##创建用户

[[email protected] ~]# mkdir /data

[[email protected] ~]# vim /data/fil1.txt

[[email protected] ~]# cat /data/fil1.txt   ##编辑一个文件放在/data下,内容如下

123456789

[[email protected] ~]# ls -ld /data/fil1.txt   ##查看文件的权限位

-rw-r--r--. 1 root root 10 11月  8 03:10 /data/fil1.txt

[[email protected] ~]# chown mike:john /data/fil1.txt   ##将fill.txt文件的拥有者改为mike,所属组改为john

[[email protected] ~]# ls -ld /data/fil1.txt   ##再次查看文件的权限位

-rw-r--r--. 1 mike john 10 11月  8 03:10 /data/fil1.txt

[[email protected] ~]# chmod u=rw,g=r,o=- /data/fil1.txt    ##将文件的拥有者权限修改为可读、可写,所属组修改为只读,其他用户没有任何权限

[[email protected] ~]# ls -ld /data/fil1.txt

-rw-r-----. 1 mike john 10 11月  8 03:10 /data/fil1.txt

[[email protected] ~]# gpasswd -M  kaka john   ##通过组成员管理(gpasswd -M)将用户添加到组

[[email protected] ~]# id kaka

uid=504(kaka) gid=507(kaka) 组=507(kaka),506(john)

[[email protected] ~]# setfacl -m u:lily:rx /data/fil1.txt   ##给文件fil1.txt定义一条关于用户Lily可读、可写的ACL的策略

[[email protected] ~]# getfacl /data/fil1.txt   ##查看定义的ACL策略

getfacl: Removing leading ‘/‘ from absolute path names

# file: data/fil1.txt    ##绝对文件来源路径

# owner: mike     ##拥有者

# group: john   ##所有组

user::rw-     ##所有者的权限

user:lily:r-x   ##通过ACL添加的权限

group::r--    ##所有组的权限

mask::r-x     

other::---    ##其他用户的权限

时间: 2025-01-04 10:54:18

权限整理案例的相关文章

【CentOS】Linux sudo权限集中管理案例

目的 使得公司的Linux系统权限管理更规范,让每个用户拥有自己所该有的权限,防止因为某些用户的权限过大后的一些误操作,导致服务器的不正常运行. 操作 1.编辑Linux系统中的sudoers文件 [[email protected] ~]# vim /etc/sudoers #Edit by root User_Alias NETMAN = net01, net02 #用户别名 User_Alias ADMIN = admin01, admin02 User_Alias SA = %sa #定

java访问权限整理

类实例化成对象之后,可以通过对象加上"."操作符访问和操纵该对象的域和方法,但是这种访问是有限制的,通过public.protected.default(啥都不写).private来控制. 先看一个实验的例子:(不注释表示可以访问,注释掉表示无法访问) package packageA; import packageB.SubB; public class Base { public String publicStr = "publicString"; protec

NTFS权限设置案例分享

在培训过程中,NTFS权限一直是微软系统类课程中的重点之一,特别是如何更好的运用在企业的文件服务器上. NTFS的基本概念不必多说,特点等,包括以下的NTFS权限规则: A.继承,阻止继承 B.强制生效 C.累加 D.拒绝优先 E.取得所有权 有的学员可能会说,就这么简单呀,我已经会了. 下面分享一个企业需求案例: 现在呢,有一个用户test,隶属于RT-sales组.文件服务器D盘上有一个共享文件夹Sales. 想实现test用户对share文件夹可以进行读写操作,但是不能删除share文件夹

Android 权限整理

抽空整理,以备以后查看 android权限大全 android.permission.WRITE_APN_SETTINGS:允许程序写入APN设置(4.0后已经被禁用) android.permission.WRITE_CALENDAR:允许一个程序写入但不读取用户日历数据 android.permission.WRITE_CONTACTS:允许程序写入但不读取用户联系人数据 android.permission.WRITE_GSERVICES:允许程序修改google地图服务 android.

linux文件权限整理

网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh [email protected]:~/桌面/remote_cmd$ ls -lha 总用量 20K drwxrwxr-x 2 xzc xzc 4.0K 12月 28 15:27 . drwxr-xr-x 3 xzc xzc 4.0K 12月 28 13:43 .. -rwxr----- 1 xzc xzc 2.7

RxPermissions 动态权限 简介 案例

基本使用步骤 GitHub 1.配置 allprojects { repositories { maven { url 'https://jitpack.io' } } } 5 5 1 allprojects { 2    repositories { 3        maven { url 'https://jitpack.io' } 4   } 5 } implementation 'com.github.tbruyelle:rxpermissions:0.10.2' 1 1 1 impl

Samba服务权限配置案例

文件共享是在企业办公网络中经常用到的一项功能,如何设置并使用文件共享在技术上并不复杂,其中的问题主要集中在权限配置方面.本文以世界技能大赛网络系统管理赛项中的一道题目作为案例,详细分析了如何利用Samba服务结合系统权限来完成各种复杂的权限设置,本文所采用的系统版本为CentOS7. 1. 任务需求与分析 将/share/archive目录创建为samba共享,并完成下列要求:① 共享名为archive:② zhangsan,lisi,wangwu用户都能通过输入用户名和密码(Skills39)

ASP.MVC 基于AuthorizeAttribute权限设计案例

ASP.MVC上实现权限控制的方法很多,比如使用AuthorizeAttribute这个特性 1.创建自定义特性用于权限验证 public class AuthorizeDiy : AuthorizeAttribute { /// <summary> /// 提供一个入口用于自定义授权检查 /// </summary> /// <param name="httpContext"></param> /// <returns>&l

yii2搭建完美后台并实现rbac权限控制案例教程

作者:白狼 出处:www.manks.top/article/yii2_frame_rbac_template 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利. 1.安装yii2 未安装的请参考yii2史上最简单式安装教程,没有之一 已安装的请继续看下一步操作 2.配置数据库 2.1 配置数据库 修改common/config/main-local.php 实际项目中本地的数据库往往跟线上数据库不一致, 我们这里配置到mai