Linux系统中基本的用户管理方法
用户管理的配置文件
用户信息文件:/etc/passwd
密码文件:/etc/shadow
用户组文件:/etc/group
用户组密码文件:/etc/gshadow
用户配置文件:
/etc/login.defs
/etc/default/useradd
新用户信息文件:/etc/ske1
登陆信息:/etc/motd /etc/issue
/etc/passwd文件格式
用户类型
linux用户分为三种:
超级用户(root uid=0)
普通用户(uid 500-60000)
伪用户(uid 1-499)
注意:root不一定是超级用户,但是uid=0的用户一定是超级用户。
伪用户
伪用户与系统和程序服务相关
bin daemon shutdown halt等,任何linux系统默认都有这些伪用户
mail news games apache ftp mysql及sshd等,与linux系统的进程相关
伪用户通常不需要或无法登陆系统
可以没有宿主目录
用户组
每个用户都至少属于一个用户组
每个用户组可以包括多个用户
同一个用户组的用户享有该组共有的权限
/etc/shadow文件格式
/etc/group文件格式
手工添加用户
分别在/etc/passwd 、/etc/group 和/etc/shadow文件中添加一笔记录
创建用户宿主目录
在用户宿主目录中设置默认的配置文件
设置用户初始密码
setuid
思考:为什么普通用户可以更改密码?
setuid的定义:当一个可执行程序具有setuid权限,用户执行这个程序时,将以这个程序所有者的身份执行。
范例:1.将touch命令授予setuid权限
2.当vi命令呗授予setuid权限
3.查找setuid程序:
添加用户
useradd设置选项 用户名 -d 查看缺省参数
u:uid
g:缺省所属用户组gid
g:指定用户所属多个组
d:宿主目录
s:命令解释器shell
c:描述信息
e:指定用户失效时间
或者熟悉系统文件的,可以直接手动添加用户
用户组管理命令
添加用户组groupadd
创建用户组webadmin ,其gid为 888
删除用户组:groupdel 组名
修改用户组星系 :groupmod
修改webadmin组名为apache
用户组管理命令
gpasswd设置组密码及管理组内成员
-a添加用户到用户组
-d 从用户组中删除用户
-a设置用户组管理员
-r删除用户组密码
-r禁止用户切换为该组
修改用户信息
usermod
将用户ksharpdabu添加到softgroup用户组中
将用户tom的登陆用户名改为ksharpdabu,加入wenadmin组中,用户目录改为/home/ ksharpdabu
用户管理命令
pwk 检测/etc/passwd文件(锁定文件)
vipw 编辑/etc/passwd文件
id 查看用户id和组信息
finger 查看用户详细信息
su 切换用户(su –环境变量切换)
passwd –s 查看用户密码状态
who、w 查看当前登录用户信息
用户组管理命令
groups 查看用户隶属于哪些用户组
newgrp 切换用户组
grpck 用户组配置文件检测
chgrp 修改文件所属组
vigr 编辑/etc/group文件(锁定文件
用户组授权实例
授权用户jack和mary对目录/software有写权限
禁用和恢复用户
禁用
恢复
删除用户
userdel –r 用户名
-r:删除用户目录
手工删除:
使用find命令查找属于某个用户或者用户组的文件
find选项-user、-uid、-group、-gid
对需要保留的文件进行移动和备份
对不需要的文件进行删除
清除用户文件中的相关表项
清除用户宿主目录
用户管理命令
change设定密码
-l 查看用户密码设置
-m 密码修改最小天数
-m 密码修改最大天数
-d 密码最后修改的日期
-l 密码过期后,锁定账户的天数
-e 设置密码的过期日期,如果为0,代表密码立即过期;如果为-1,代表密码永不过期
-w 设置密码过期前,开始警告的天数
启动或停用shadow功能
pwconv/pwunconv
grpconv/grpunconv
system-config-users
authconfig /etc/sysconfig/authconfig
批量添加用户
newusers命令 导入用户信息文件
pwunconv命令 取消shadow password功能
chpasswd命令 导入密码文件(密码文件格式: 用户名:密码)
pwconv命令 将密码写入shadow文件
实例:一次批量添加10个用户
限制用户su为root:
设定后,只有sugroup组中的用户可以使用su切换为root
用sudo替代su:
在执行sudo命令时,临时成为root
不会泄露root口令
仅向用户提供有限的命令使用权限
配置文件:/etc/sudoers,编辑配置文件命令visudo
普通用户使用命令sudo。
格式:用户名(组名) 主机地址=命令(绝对路径)
系统弱密码测试工具john the ripper的使用方法;
破解用户ksharpdabu密码
下一篇: iptables建立规则和链的基本方法