Linux下用户管理和特殊权限


Linux下用户管理
Linux有3类用户
A.超级用户:root 具有操作系统的一切权限,UID为0
B.普通用户:即非管理员用户,具有有限权限,UID:500-6000
C.伪用户:方便系统管理,满足相应的系统进程文件属主的要求,伪用户不能登陆系统,UID:1-499
管理用户通过/etc/passwd文件进行,只定义帐号,不定义口令。
passwd:
每行一个帐号,每行7个部分,分号隔开
用户名:密码(x,表示有密码):UID:GID:用户相关信息:/home/(用户家目录):/bin/bash(用户登陆环境)
shadow:
用户名:口令:最后一次修改密码的时间:最大时间间隔:最小时间间隔:警告时间:不活动时间:失效时间
口令:第一个字符是“!”表示用户不能登陆
密码时间:以秒计算
最大时间间隔:更改密码频率,0表示可以随时改变
最小时间间隔:在最小时间内必须改密码,"99999"表示永不过期
警告时间:提示过期前修改密码
不活动时间:延期时间
失效时间:有效期限

创建帐号:
原理(手动添加而不是使用useradd命令):
1./etc/passwd中添加一条记录
2.创建用户主目录以及权限
3.在用户主目录中设置默认的配置文件
4.设置用户初始口令
使用命令:useradd或者adduser
useradd username [-u uid] [-g gruop] [-s /bin/sh | /sbin/nologin] [-d /home/username]  ...
passwd username
userdel [-r] username    (删除用户,-r表示删除家目录)
usermod -l new_username old_username (不改变家目录)
usermod -L username  (锁定用户)
usermod -U username  (解锁用户)
停用帐号:注释/etc/passwd里用户所在行,即加“#”,类是删除,但是用户信息是没有删除的,这就是不同之处。
passwd -S username 锁定密码
passwd -U username 解锁密码
/etc/skel  如果该目录下有文件,则创建目录时用户家目录下就会有该文件夹的内容,相当于模版。
 
用户组管理
A.私有组:新建用户时若没有指定所属组会新建一个与用户名相同的组
B.标准租:可容纳多个用户,若使用标准组在创建新用户是就应该指定该用户所属于的组
配置文件:
/etc/group
group_name:x:GID:username_list(逗号隔开)
组口令(x)一般不用
groupadd group_name
groupmod -n new_name old_name
groupdel group_name  删除的组帐号必须存在且不能是私有组
gpasswd -a username group_name 添加已经存在的用户到组
gpasswd -d username group_name
groups username 查看某个用户所在组
id [opition] username  查看用户UID和GID信息
finger [opition] username 查看用户的相关信息,包括主目录、启动Shell和用户名等
 
 
Linux特殊权限
 
特殊权限   s
SetUID
当一个命令具有SetUID权限时,普通用户在执行此命令时,将以这个命令所有者的身份执行,,
ll /etc/passwd /etc/shadow
-rw-r--rxx 1 root root 1795 Sep 25 10:12 /etc/passwd
-r-------- 1 root root 1239 Sep 25 1:12 /etc/shadow   (存储密码)
ll /usr/bin/passwd
-rwsr-xr-x 1 root root 11960 Jul 17 2006 /urs/bin/passwd
这就是普通用户可以修改自己的密码的原因!

特殊权限   :  粘着位t
粘着位定义:当权限为777的目录被授予粘着位,那么每个用户只能在此目录下删除自己是所有者的文件。
例如:
ll /tmp
drwxrwxrwt 8 root root 4096 Sep 25 09:55 /tmp

特殊权限 chattr
管理员也无法删除的文件
加权限:  chattr +i 文件名   (执行后文件权限看起来没有变化)
i 是不可修改和删除
a 是只可以追加(例如日志文件)
还有一些其他权限,总共11个!
查看该特殊权限: lsattr filename
 
用户权限指派
配置sudo
编辑:visudo  (不能用VI编辑)
用户名 主机名(IP)=命令1,命令2,命令3,。。。(绝对路径)
执行,则
 sodu 被授权的密码
会提示密码,输入授权的密码,而不是root密码
查询   sudo -l
案例:授权用户zhangsan全权管理Apche
安装为源码版本,安装目录:/apache
visudo
zhangsan localhost.locadomain=/apche/bin/httpd,/bin/vi /apache/conf/httpd.conf
 
Linux复杂权限控制:ACL
负责权限分配管理
针对分区
mount -o remount,acl /home  或者修改配置文件  /etc/fstab  ,加在defaults,acl
设置:
setfacl -m u:username:rwx filename
getfcal /filename     
作者 “小K工作室”

相关内容

    暂无相关文章