Linux_用户权限管理
目录
用户管理
Linux和Windows用户不能单独存在,必须属于一个或多个组。
用户信息存储位置:
1. Windows userInfo :c:\windows\system32\config\sam 数据库中
2. linux userInfo:
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
Linux user属性:
配置文件:/etc/login.defs (创建User的默认属性设定)
RHEL7:
管理员用户 0
系统用户 1-200 Linux管理用户
系统用户 201-999 Linux服务用户
普通用户 1000-60000
useradd创建用户
常用选项:
-u 指定UID
-s 指定登陆后默认的shell
-d 指定家目录
-g 指定主组(只有一个属组)
-G 指定附加组(有属组、附加组)
-M 不建立家目录
注意:Linux管理员组是wheel,并不是把用户加入到root组,用户就能成为管理员。
userdel删除用户
-r 删除用户家目录
usermod修改用户账号
-L 锁定用户 (不能login)
-U 解锁用户
passwd修改用户密码
echo xxx | passwd --stdin 用户名 设定passwd
设定用户密码使用策略:
chage -d 0 用户名 -- 下次登录强制修改密码
chage -d 2015-04-01 jmilk 在 2015-04-01 强制用户修改密码
chage -E 2015-12-31 jmilk 在 2015-12-31zhangsan 密码过期
chage -l zhangsan 查看用户的密码策略
用户权限设置
Example:
chmod ugoa+-/=/number fileName/directoryName #修改文件或目录的权限
chown userName:groupName fileName/directoryName #修改文件或目录的属主、属组
setuid:拥有者的强制位(u[+|-]s),一般指令设置setuid后,能够让普通用户在执行该指令的时候,使用root的权限来执行此指令。
setgid:组的强制位(g[+|-]s),为目录设置setgid后,此目录下的文件或目录继承上一级目录的属组,一般用于生产中的团队文件管理。
sticky:(冒险位,粘滞位o[+|-]t)谁创建的文件或目录就只有谁能够进行删除操作,一般用于共享目录。
用户组管理
groupadd:创建组
groupdel:删除组,前提此组不能是某个用户的主组
查看用户的属组
id userName
groups userName
修改用户组gpasswd
将一个user加入到group中:
gpasswd -a 一次加一个用户
gpasswd -M 一次加入多个用户
将一个user从组中删除:
gpasswd -d userName groupName
为没有家目录的用户建立家目录
mkdir /home/jmilk
chown jmilk:jmilk /home/jmilk
chmod 700 /home/jmilk
cp -av /etc/skel/.[!.]* /home/jmilk #/etc/skel建立用户家目录的模板目录,若想对将来新建用户进行统一个性化设定,可以现在模板目录内设定。
生产环境中隐藏root用户
使root成为普通用户,使普通用户成为超级管理员(系统只要识别UID=0,就认为是超级管理员)
直接编辑/etc/passwd文件:
root:x:1005:1005:root:/home/jmilk:/bin/bash
jmilk:x:0:0::/root:/bin?hask
umask控制文件或目录创建时的初始权限
文件的默认权限:666-umask(两者为偶数的可以相减得出,否则不能)
目录的默认权限:777-umask
改变umask并使之永久生效:编辑/etc/profile中的umask值
Linux的系统权限
系统权限是针对文件系统的权限,与用户权限无关
lsattr fileName #列出文件的系统权限
lsattr -d dirName #列出目录的系统权限
chattr +a fileName #文件可以追加,不可以删除、修改
chattr +i fileName #文件不可以追加、修改、删除
chattr +j fileName #立即存储
ACL
一般使用chmod、chown全局设置权限,再使用acl进行局部调整。
getfacl fileName #显示此文件是否设置了acl
设定用户对未来创建的文件或子目录的权限:
setfacl -m d:u:用户名:权限 文件|目录
setfacl -m g:组名:权限 文件|目录
setfacl -m d:u:jmilk:rw- /abc #d:default,用户在abc目录中建立文件或子目录,jmilk都有rw权限
setfacl -x 删除acl
setfacl -b 删除全部acl
注意:文件或目录的权限标识的意义
-rw——- test ⇒ 设置权限前
-rw-rwx—+ test ⇒ acl设置权限后
rw- 表示拥有者的权限
rwx 表示第一个acl用户的权限
— 表示第1个 acl 组的权限
+表示后面还有但没有显示
Linux_用户权限管理的更多相关文章
- 练习:python 操作Mysql 实现登录验证 用户权限管理
python 操作Mysql 实现登录验证 用户权限管理
- django 基于proxy实现用户权限管理
项目中经常会遇到用户权限管理的问题,django adminsite已经提供非常实用的用户权限管理机制.不过有些时候,我们希望根据相关用户属性来过滤adminsite中显示的内容.下文将结束如何实现: ...
- RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.8 用户权限管理 -Web部分 在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色.用 ...
- Python 学习 第十篇 CMDB用户权限管理
Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...
- Oracle 用户权限管理方法
Oracle 用户权限管理方法 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 sys;//系统管理员,拥有最 ...
- Oracle SQL 基本操作之 用户权限管理方法
Oracle SQL 基本操作之 用户权限管理方法 最近把有关用户操作和权限管理的东西整理了一下,虽然不少博客都有过类似的整理,但是自己发现他们的内容或多或少都有些错误.于是,本人亲自对每条语句进行 ...
- 如何对MongoDB 3.2.7进行用户权限管理配置
转自:https://www.jianshu.com/p/a4e94bb8a052 上次写了一篇在CentOS7上源码安装MongoDB 3.2.7,完成了MongoDB 3.2.7的安装,但需要应用 ...
- [原]Jenkins(十三)---jenkins用户权限管理
* 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/5337874.html 两种策略的比较
- linux 用户管理,用户权限管理,用户组管理
linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...
随机推荐
- 2019.9.16 linux安装软件lamp
2019/9/16 Linux软件安装 方式:yum/rpm/源码安装 yum安装: yum 是通过分析RPM的包头数据后,根据各软件的相关性制作出属性相对应的解决方案,然后可以自动处理软件的相依属性 ...
- Linux(Centos7)下redis5缓存服务集群分布式搭建
注意:可以查看Redis官网查看集群搭建方式,连接如下 https://redis.io/topics/cluster-tutorial 集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器 ...
- php:页面乱码的解决方法
在 <?php header("Content-Type:text/html;charset=utf-8"); ////设置页面显示的文字编码 头部就写header函数处理成 ...
- enums应用详解
枚举类: 获取枚举相关值:
- squid之------安装与基本配置
1.rpm安装squid yum -y install squid 2.squid主要组成部分 服务名:squid 主程序:/usr/sbin/squid 配置目录:/etc/squid 主配置文件: ...
- java课堂作业4
第一题 字符串加密问题 1.程序设计思想 读入字符串,然后获取其长度,利用charAt()获取每个位置字符并且对字符加3实现加密处理,并存入新字符串中.如果遇到xyz则减26存入. 2.程序流程图 3 ...
- 使用注解方式实现账户的CRUD
1 需求和技术要求 1.1 需求 实现账户的CRUD. 1.2 技术要求 使用Spring的IOC实现对象的管理. 使用QueryRunner作为持久层的解决方案. 使用C3p0作为数据源. 2 环境 ...
- safari兼容时间格式 NAN
问题: safari中不支持2018-08-01这种格式转为时间戳会显示NaN 方案: new Date('2018/08/01').getTime() 将-转化为/ // 正则替换 new Date ...
- 《Head First 软件开发》阅读五
结束开发循环:娟娟细流归大海 几乎完成了任务,而开发循环结束所要面对的问题是用户测试的安排.新的一轮重构和重新设计. 开发循环已经完成,但是还是有很多事情可以去做.系统测试必不可少,但是是由谁来做系统 ...
- linux常用基本命令不全
pwd 显示当前目录 ls -lh 显示文件列表,h表示会显示文件的大小 mkdir zhu 创建文件夹zhu rmdir zhu 移除文件夹zhu如果abc中含有其他文件,则不能删除 rm -r ...