1.用户管理 2.用户组 3.权限分配

一、查看与用户相关文件命令: 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 #直接打印文件内容并且显示行号

Root : X :0 :0 :root :/root :/bin/bash

用户名:用户名不要太长。Niejunzhong -》 njz X: 密码位 保留,以前的linux存放密码 Uid 用户的标识符 Gid 缺省组标识号 系统默认创建同名组 描述信息 注释性描述 宿主目录 用户登录后的缺省目录 命令解释器 用户使用的shell 默认 bash

密码文件shadow Etc/passwd 每个用户都有读权限。早些密码放置在密码位。 Man -5 shadow

登录名:加密密码:最后一次修改的时间:最小时间间隔:最大时间间隔:警告时间:账号闲置时间:失效时间:标志。

时间:1969年肯.汤玛斯开发出unix雏形 业界认为linux诞生1970 1月1日 Root 超级用户 缺省没有写权限,照样可以进行修改或删除。

Pwconv 密码回写 密码先写入passwd 再转换到shadow中

Passwd命令 ls -l /usr/bin/passwd 为什么普通用户可以更改密码?

SetUID的定义:当一个可执行程序具有SetUID权限,用户执行这个程序时,将以这个程序的所有者的身份执行。 Passwd的所有者是root 所有普通用户在更改密码时是变成root所有者来执行这个命令的。

修改用户配置文件添加用户(原理) Username /etc/passwd Password /etc/shadow 1、vi /etc/passwd 用户名 密码 uid gid 描述 宿主目录 shell

2、Mkdir 创建宿主目录 给予权限 chown 用户 目录

3、Vi /etc/shadow

此时 可以登录 命令提示符不同

4、cd /etc/skel 里面全是隐藏文件 ls -a

5、Cp skel里的文件到 新用户的宿主目录

linux(centos)用户与权限

用户配置文件 /etc/ Login.defs 配置邮件 最大时间间隔 最小时间间隔(root不限定) 自动创建目录 Umask Etc/default/useradd 宿主目录缺省目录 账号是否被禁用 账号失效时间

登录信息 登录前:etc/issue 避免暴露系统版本信息

登录后:/etc/motd 内部信息 wall广播

用户类别: Linux 用户分为三种 超级用户 root uid=0 普通用户 uid 500-60000 伪用户: uid 1-499

Uid为0的用户叫做超级用户,命令提示符前 []# ls

伪用户 1、伪用户与系统和程序服务相关 Bin、baemon、shutdown、halt等,任何linux系统默认都有这些伪用户 Mail、news、games、apache、ftp、mysql及sshd等,与linux系统的进程相关。 2、伪用户通常不需要或无法登陆系统 3、可以没有宿主目录

二、用户管理: 1.新建用户 useradd user1 2.删除用户 userdel -r user1 3.修改密码 1)passwd user1 2)echo 123|passwd --stdin user1 4.查看用户 id user1

三、用户影响文件 如果用户用userdel删除,可以通过删除下面影响文件来删除、来新建。 1)/etc/passwd 2)/etc/shadow 3)/etc/group 4)/var/spool/mail 5)/home

1)/etc/passwd用户属性 user1:x:500:500::/home/user1:/bin/bash 1-1)用户名 1-2)用户密码所在的文件/etc/shadow 1-3)用户uid 1-4)用户所属组的gid 1-5)用户描述 1-6)用户家目录 1-7)用户登录shell 用户分类 1-1)超级用户 1-2)系统用户 1-3)普通用户 2./etc/shadow 1)加密方法:grub-md5-crypt 2)!! 说明该用户没有密码 3)! 说明该用户被锁定

3./etc/group user1:x:500: 组名:组密码位:

4./home 1)user1的家目录 /home/user1 2)删除用户 userdel -r user1 #如果userdel user1删除,会留下用户家目录和用户邮箱

5.管理用户命令-usermod 1)锁定一个用户 usermod -L user1 2)解锁一个用户 usermod -U user1 3)锁定用户后/etc/shadow !$1$Ttyif4Oi$piuprg8yV9.FGc4MzA4EP0 #密码前面会出现一个!

四、组管理: 1.新建组 groupadd grp1 2.删除组 groupdel grp1 3.用户与组管理: 1.把用户加入组 1).usermod -g grp1 user1 2).usermod -G grp1 user1 3).gpasswd -a user1 grp1 #把用户user1加入组grp1 2.把用户从组删除 1).gpasswd -d user1 grp1 #把用户user1从grp1组中删除

其他用户命令: Finger 用户 那台主机登录、什么时间登录、有没有邮件和计划任务 Su 用户 切换用户 Passwd -S 用户 查看用户的密码状态。 Who、w 查看当前用户 批量添用户命令 循环+ echo ‘12345’ |passwd --stdin user Gpasswd -a user1 grap1 Gpasswd -d user1 grp1

五、用户与文件的关系-权限:

1.chmod 2.chown 3.setuid 4.setgid 5.sudo 6.acl

1.chmod授权方法 1)chmod 755 /mnt 2)chmod a+x file 3)umask 文件权限掩码,由它决定文件夹权限是755,文件权限是 644 4)查看单个目录本身的权限 ls -ld mnt/ 5)在当前终端切换用户 su - user1

2.chown改变所有者和所属组 chown user4 test #改变所有者为user4 chown :user4 test #改变所属组为user4 chown user4:user4 test #同时改变所有者和所属组

3.SetUID 操作对象:执行程序 -rwxr-xr-x root root file -rwsr-xr-x root root file 查找setuid程序 find / -perm -4000 -o -perm -2000 作用:一个执行命令一旦加了s位,其他所有人执行时都是以该命令的所有者的身份在执行. 如何加s位: 1) chmod u+s /bin/touch 2) chmod 4755 /bin/touch 4 2 1 setuid setgid t位

4.setgid 操作对象:文件夹 作用:对目录设置setgid,目录下的子文件夹也继承父文件夹的gid 权限 chmod g+s test chmod 2755 test

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 -r user5,/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 -m d:u:user1:rwx test #当前目录的以后子目录会继承目录的acl权限