一.账号安全
将非登录用户的shell设为/sbin/nologin
系统中用户有三种:超级管理员 普通用户 程序用户
前两种用户可以登录系统,程序用户不给登录 所以称为非登录用户
命令格式: usermod -s /sbin/nologin(改已有用户)
锁定长期不使用的账号
passwd -l 用户 或者 usrmod -L 用户
解锁:passwd -u 用户 或者usrmod -U 用户
删除无用的账号
userdel 用户
锁定账号文件 passwd shadow
passwd 存账户信息 shadow存账户密码
锁定这两个文件安全
命令格式:chattr +i 文件
lsattr 查看特殊权限
操作如下
没设置chattr之前,vim a 文件时是可以进去编辑的
当编辑a文件时 wq要保存时,显示保存不了
然后再进入vim a 文件中 文件内容不变
解锁文件 :chattr - i
操作如下:
解锁完可以编辑文件内容
密码安全控制
设置密码规则、修改密码配置文件
对新建用户密码规则:
对于已有用户修改密码规则
命令:chage 参数 用户名
修改密码的有效期 chage - M 数字 用户
如果不知道参数 可以chage 用户名 直接回车 会自动回显
chage - d 0 用户名 用户在下次登录时必须修改密码
命令历史的限制
默认的历史命令为1000条
如果要临时删除时 命令格式:history -c 之前的命令就看不见了
永久清除历史命令
历史命令都存储在bash.history中 如果要清除 就要把里面的命令清空
有三种方式
1.退出后清除 ~/.bash_logout
2.开机后清除 ~/.bashrc (对自己有效、对当前用户生效)
3.对所有用户有效,不仅仅是root下的用户 /etc/profile
操作如下:
表明将history都写成空格
终端自助注销 设置闲置多少秒之后 会登出系统
设置所有用户闲置10秒自动退出 进入/etc/profile中
使用su命令切换用户
su 不加— 代表不完整的切换 意思就是下一个用户会继承上一用户的所有东西 什么都没变
su 加— 代表完整切换 意思就是说下一个用户不会继承上一用户的东西,两者不一样
两者变量一模一样
当 su - 时
root与张三的变量改变
密码验证
root 切换到普通用户不需要验证密码
普通用户互相切换 验证需要密码
linux中的PAM认证
pam模块类似于一个插件,别人吧功能写好,放这。如果需要用 则把模块调过来即可。
查看pam 详细信息
查看pam的目录
点so结尾 代表功能模块
当用户来访问某一程序,如果这一程序启用了pam模块,它会先去读取配置文件,然后按照配置文件调用模块进行操作 !!!
进入到配置文件中:
tcp中 auth:账号的认证与授权 看此账号是否存在
accout :看此账号的有效性(限制或允许用户对某个服务的访问时间 在什么时间段可以访问或拒绝访问)
passwd :看密码对不对跟复杂性
session:用户会话期间的控制,可在以使用多少资源
control中
shell模块
进入到shell的组 把/bin/sch删除
当/bin/sch被删除时,就不在shell列表里,就不能通过
总结:当设置shell模块(pam_shells.so)时,只有shell类型里面的内容才可以通过,不在shell类型(/etc/shell)里面的 通过不了