linux用户管理
linux 下有三类用户
1.超级用户:root 具有操作系统的一切权限 UID 值为 0 (只要用户的UID为0 权限和管理员一模一样)
2.普通用户: 普通用户具有操作系统的有限的权限 UID值为 500-6000
3.伪用户: 是为了方便系统管理,满足相应的系统进程文件属主的要求,UID 不能登录 1-499(apache ftp)
passwd /etc/passwd 只定义账号 不定义口令
在改文件中一行定义一个用户,分七部分
账号名称: root
用户密码: x (说明有密码 把x删掉登录时就不需要密码了)
用户标识码(用户id)
组标识码
用户相关信息
用户家目录
用户环境 (shell) (echo $SHELL) sh命令 进入sh exit(退出) (一般好像是bin shell)
编辑用户信息
baiwenzhao:x:501:501::/home/baiwenzhao:/bin/bash
baiwenzhao:x:505:501::/home/baiwenzhao:/bin/sh
重新登录
echo $SHELL
/bin/sh
id baiwenzhao
uid=505(baiwenzhao) gid=501(baiwenzhao) groups=501(baiwenzhao)
/etc/shadow 这个文件只有root用户可以读 这个文件用冒号间隔9个字段组成
用户名:root
口令:存放加密口令 如果这个口令的第一个字符时!则这个用户不能登录
最后一个修改时间 用户最后一次修改的天数
最小时间间隔 两次修改密码之间的最小天数
最大时间间隔 密码保持有效的最多天数
警告时间 从系统开始警告到密码失效的天数
账号闲置时间 账号闲置时间
失效时间 密码失效的绝对天数
标志 一般不使用
pwconv 把/etc/passwd 中的密码移动到/etc/shadow
pwunconv 同pwconv相反
用户账号管理
创建账号
1.在/etc/passwd中添加一条记录
2.创建用户主目录
3.在用户主目录中设置默认的配置文件
4.设置用户初始口令
useradd 或 adduser 命令创建
useradd -u 600 -g 500 -G 501 -d /home/www -s /bin/sh -c mynet userlib
-u -g -G -d -s -c
userdel user 删除用户 (家目录不能删除)
userdel -r user (可以删除家目录及所有信息)
更改用户名
usermod -l thisuser(new) myuser
usermod -L thisuser (锁定用户)
usermod -U thisuser (解锁)
在配置文件最前面加# 禁用账号
查看密码信息
passwd -S thisuser
passwd -l thisuser (加锁)
[root@localhost home]# passwd -S thisuser
thisuser LK 2011-12-19 0 99999 7 -1 (Password locked.)
passwd -u thisuser (解锁) (用passwd -l 加的锁 用usermod -U 也可以解锁 但要执行两次)
在/etc/skel的文件在创建用户的时候 用户的家目录的文件就是/etc/skel下的文件 存放了用户最基本的配置信息文件 环境变量
/etc/login.defs 里面定义了添加用户的配置信息
/etc/default/useradd 里面定义了添加用户的配置信息
/etc/motd 登录成功显示给用户的信息
/etc/issue 尝试登录显示给用户的信息
shell
/bin/sh
/bin/bash
/sbin/nologin 伪用户用的shell
复习
man 5 /etc/passwd 5表示查看配置文件的信息
wc -l /etc/passwd //查看配置文件有多少行
echo "1343" | md5sum md5加密
man 5 /etc/shadow
grep root /etc/passwd /etc/shadow
chown xiaobai xiaobai 分配权限给小白
为什么普通用户可以修改密码
/etc/passwd 对普通用户是只读的
ls -l /usr/bin/passwd
-rwsr-xr-x. 1 root root 27000 Aug 22 2010 /usr/bin/passwd
s(SetUID)
SetUID的定义:当一个可执行程序具有SetUID权限,用户执行这个程序时,将以这个程序
所有者的身份执行
umask 0002 第一位若为4表示SetUID
#chmod 4755 /bin/touch
#ls -l /bin/touch
-rwsr-xr-x. 1 root root 50644 May 31 2011 /bin/touch
#su - xiaobai
#touch file04
-rw-rw-r--. 1 root xiaobai 0 Jan 10 20:42 file04
chmod u+s u-s
4755 755
chmod g+s g-s
2755 755
既是用户 又是用户组
chmod 6755
查找所有具有SetUID权限的命令
find / -perm -4000 -o -perm -2000
-o表示或得意思
umask
0002
第一位为1表示粘着位
SetUID 所有者
SetUID 所属组
粘着为1 其他人 用t表示
如果用户对目录有写的权限 就可以在这个目录下创建删除文件
如果一个权限为777目录具有粘着位,每个用户都可以在这个目录下创建文件,但是只能
删除自己创建的文件
chmod o+t abc
ls -ld /tmp
drwxrwxrwt. 27 root root 4096 Jan 10 20:37 /tmp