12月12日linux学习
用户和用户组管理:
1./etc/passwd:
第1个字段表示用户名,可以代表用户账户的字符串
第2个字段存放的是该账户的口令
第3个字段为一个数字,这个数字代表用户标识号,也称uid
第4个字段也是数字,表示组表示号,gid
第5个字段为注释说明
第6个字段为用户的家目录,用户登录时就在这个目录下
第7个字段为用户的shell
2./etc/shadow:
第1个字段表示用户名,可以代表用户账户的字符串
第2个字段表示用户密码,是该用户的真正密码
第3个字段为上次更改密码的日期
第4个字段为要过多少天才可以更改密码,默认是0,即不受限制
第5个字段为密码多少天后过期
第6个字段为密码到期前警告期限
第7个字段为账目失效期限
第8个字段为账户的生命周期
第9个字段作为保留用的,没意义
3.groupadd命令:创建组
格式:groupadd 【-g gid】 groupname
-g:和uid一样,从1000开始
实例:
4.groupdel命令:删除组
当组里面有用户时不能删除组,只有把账户删除才能删除组
实例:
5.useradd命令:增加用户
格式:useradd 【-u uid】【-g gid】【-d home】
-u:自定义UID
-g:使新增用户属于自己已经存在的某个组,后面可以跟组id,也可以跟组名
跟一个不存在的gid,会报错,提示该组不存在
-d:自定义用户的家目录
-M:不建立家目录
-s:自定义shell
实例:
6.userdel命令:删除账户命令
格式:userdel 【-r】username
-r:删除用户时,一并删除用户的家目录
实例:
7.chfn命令:更改用户的finger(/etc/passwd 的第5个字符信息)
实例:
8.passwd命令:为用户设置密码
格式:passwd【username】(若命令后不加用户名字,则为为自己设密码)
只有root用户能修改其他用户密码,普通用户只能修改自己的密码
实例:
9.mkpasswd命令:生成密码
需要安装expect:yum install -y expect
mkpasswd
- l:修改长度密码
-s:指定特殊字符个数
-d:指定数字个数
实例:
10.用户身份切换:
1.su命令:切换用户
格式:su 【-】 username (加-切换到root账户时,当前目录为root账户家目录,不加-没变化)
实例:
2.sudo命令:
使用visudo命令编辑/etc/sudoers,如果没有visudo使用yum install -y sudo安装
让普通用户拥有sudo权限:在root ALL=(ALL) ALL 下面写入test ALL=(ALL) ALL
test:用户
ALL:所有主机
(ALL):获取哪个用户的身份
ALL:设定可以使用sudo的命令有哪些
实例:
# %wheel ALL=(ALL) ALL:wheel这个组的所有用户都有sudo的权利
实例:
只允许使用普通账户登录,普通用户登录后,可以不输入密码就能用sudo切换到root账户
实例:
3.不允许root远程登录linux(只适合ssh远程登录)
修改配置文件/etc/ssh/sshd_config,在文件中找#PermitRootLogin yes 改成 #PermitRootLogin no
重启sshd服务:systemctl restart sshd.service