1.用户管理
2.用户组
3.权限分配
/etc/login.defs
/etc/default/useradd 两个都是用户密码配置文件
/etc/motd etc/issue 登录信息
/etc/passwd 用户信息文件
/etc/shadow 用户密码文件极其登录的限制 在密码栏前面加『 * 』『 !』禁止使用某账户登录
/etc/group 用户组信息文件
/etc/gshadow 用户组密码文件
/etc/passwod 用户信息文件
例:root:x:0:0:root:/root:/bin/bash
用户名 密码 UID GID 描述信息 宿主目录 命令解释器
UID (用户)
0 超级用户 自己添加的从500开始
1-499 伪用户 程序服务相关的 不需要登录 可以没有宿主目录
500-65535 普通用户
GID(组)
每个用户都至少有一个用户组(可以有多个)
每个用户组包括多个用户
同一个组用户享有改组的共有的权限
/etc/shadow 用户密码文件
例:root:$1#nWOaF1QQ$CPW.A/AYKJHJQDKU7CO:15551:0:99999:7:::
用户名 加密过后的密码最后一次修改密码时间 最小时间天数 最大时间天数 账户闲职时间 失效时间 标志
/etc/grup 用户组信息文件
例:root:x:0:root
组名 密码 GID 组内用户
useradd //添加用户名 -g指定所属组 -d宿主目录-c描述信息
passwd //添加用户密码
userdel //删除用户
finger //查询用户详细信息
groupadd //添加用户组
gpasswd //设置用户组密码
newgrp //切换当前所属用户组 (没有组密码并且当前用户是组的成员,则可切换成功)
usermod //修改用户信息
例://修改用户名 usermod -l 新用户名 原用户名
//添加用户到组 usermod -G 组名 用户名
// 添加用户到组 gpasswd -a 用户名 组名
//从组删除用户 gpasswd -d 用户名 组名
1.添加0xls这个用户 添加到test管理组 在当前目录把dir目录所有者改成test
groupadd test //添加管理组
useradd -g test 0xls //创建用户并且添加test组 -g是指定组 不指定的画 默认创建
passwd oxls //给用户创建密码
id 0xls //查看下用户信息
chgrp test dir //改变dir目录的所有者
--------------------------------------------------------------------------------------
2.附加0xls账户到root组
gpasswd -a 0xls root 或 usermod -G root ls
3.删除用户0xls,删除组test
userdel -r user1
#如果userdel user1删除,会留下用户家目录和用户邮箱
groupdel test //删除组
一、查看与用户相关文件命令:
1.cat
2.more
3.head /etc/passwd #查看文件的前十行
4.head -2 /etc/passwd #查看文件的前两行
5.tail /etc/passwd #查看文件的后十行
6.tail -f /etc/passwd #实时跟踪文件的后十行
6.tail -2 /etc/passwd #查看文件的后两行
7.wc -l /etc/passwd #显示文件的行数
8.nl /etc/passwd #直接打印文件内容并且显示行号
用户配置文件 /etc/
Login.defs
Etc/default/useradd
用户类别:
Linux用户分为三种
超级用户 root uid=0
普通用户 uid500-60000
伪用户: uid1-499
Uid为0的用户叫做超级用户,命令提示符前 []# ls
伪用户
1、伪用户与系统和程序服务相关
Bin、baemon、shutdown、halt等,任何linux系统默认都有这些伪用户
Mail、news、games、apache、ftp、mysql及sshd等,与linux系统的进程相关。
2、伪用户通常不需要或无法登陆系统
3、可以没有宿主目录
二、用户管理:
1.新建用户
useradduser1
2.删除用户
userdel -ruser1
3.修改密码
1)passwduser1
2)echo 123|passwd--stdin user1
4.查看用户
id user1
5.管理用户命令-usermod
1)锁定一个用户
usermod -L user1
2)解锁一个用户
usermod -U user1
3)锁定用户后/etc/shadow
!$1$Ttyif4Oi$piuprg8yV9.FGc4MzA4EP0
#密码前面会出现一个!
四、组管理:
1.新建组
groupaddgrp1
2.删除组
groupdelgrp1
3.用户与组管理:
1.把用户加入组
1).usermod -g grp1user1
2).usermod -G grp1user1
3).gpasswd-a user1 grp1
#把用户user1加入组grp1
2.把用户从组删除
1).gpasswd -d user1grp1
#把用户user1从grp1组中删除
其他用户命令:
Finger用户 那台主机登录、什么时间登录、有没有邮件和计划任务
Su用户 切换用户
Passwd -S用户 查看用户的密码状态。
Who、w查看当前用户
批量添用户命令 循环+echo ‘12345’ |passwd --stdin user
Gpasswd -a user1grap1
Gpasswd -d user1grp1
五、用户与文件的关系-权限:
1.chmod
2.chown
3.setuid
4.setgid
5.sudo
6.acl
1.chmod授权方法
1)chmod 755/mnt
2)chmod a+xfile
3)umask文件权限掩码,由它决定文件夹权限是755,文件权限是 644
4)查看单个目录本身的权限
ls -ldmnt/
5)在当前终端切换用户
su - user1
2.chown改变所有者和所属组
chown user4test
#改变所有者为user4
chown :user4test
#改变所属组为user4
chown user4:user4test
#同时改变所有者和所属组
3.SetUID
操作对象:执行程序
-rwxr-xr-x root rootfile
-rwsr-xr-x root rootfile
查找setuid程序 find / -perm -4000 -o -perm -2000
作用:一个执行命令一旦加了s位,其他所有人执行时都是以该命令的所有者的身份在执行.
如何加s位:
1) chmod u+s/bin/touch
2) chmod 4755/bin/touch
4 2 1 setuid setgidt位
4.setgid
操作对象:文件夹
作用:对目录设置setgid,目录下的子文件夹也继承父文件夹的gid 权限
chmod g+stest
chmod 2755test
5.t位粘作位
操作对象:目录的权限是777
作用:在一个公共的文件夹内自己只能删除自己的东西
chmod o+t/tmp
chmod 1777/tmp
6.sudo授权
1)echo$PATH
#这个环境变量决定了你能在哪些路径下直接找到执行程序
2)设置sudo
2-1)visudo
2-2)vi /etc/sudoers
#不推荐第二种方法
user1 localhost=/usr/sbin/useradd user5,/usr/sbin/userdel -ruser5,/sbin/service httpd restart
3)!str#执行历史中离你最近一次以str开头的命令
7.acl授权
1)设置权限
setfacl -m u:user1:rwx/test
2)查看权限
getfacl/test
3)删除user1在/test上的权限
setfacl -x u:user1/test
4)删除/test上的所有acl权限
setfacl -b/test
5)设置acl的默认权限
setfacl -md:u:user1:rwx test
#当前目录的以后子目录会继承目录的acl权限