目录
4.chattr锁定配置文件(重要文件passwd、shadow、fstab等加 i 权限,不让删除)
5.设置密码复杂性规则(长度、特殊字符、失效时间等)密码策略
6.修改history,记录历史命令,尽量缩短记录历史命令的条数
10.只允许BIOS从硬盘启动,关闭除了硬盘启动外的(光驱、udisk 、网络)
usermod -s nologin 用户名 ? ? ? ?#禁止登录
usermod -L lisi?? ??? ??? ?#锁定账户
usermod -U lisi?? ??? ??? ?#解锁账户
?
passwd -l lisi?? ??? ??? ?#锁定账户方
passwd -u lisi?? ??? ??? ?#解锁账户
userdel 用户名?? ??? ??? ?#删除用户
lsattr /etc/passwd /etc/shadow?? ??? ??? ??? ?#查看文件的状态
chattr +i /etc/passwd /etc/shadow?? ??? ??? ?#锁定文件
chattr -i /etc/passwd /etc/shadow?? ??? ??? ?#解锁文件
对于新建用户
可以修改 /etc/login.defs 文件里的内容来设置密码规
对于已有用户可以使用chage命令
chage
1.适用于新建用户
vim /etc/login.defs #修改配置文件
-----此处省略部分注释及配置-------
PASS_MAX_DAYS 30 #修改密码有效期为30天
2.适用于已有用户
chage -M 30 zhangsan #修改密码有效期
3.强制在下次登录成功时修改密码(/etc/shadow第三个字段被修改为0)
chage -d 0 zhangsan #设置下次登录强制修改密码
export HISTSIZE=200
#临时修改历史命令条数为200条
vim /etc/profile
#进入配置文件
export HISTSIZE=200
#将全局历史命令条数由1000改为200
source /etc/profile
#刷新配置文件,使文件立即生效
vim .bash_logout
echo " " > ~/.bash_history
vim .bashrc
echo " " > ~/.bash_history
vim /etc/profile
#进入配置文件
export TMOUT=600
#设置全局自动注销时间,声明600s没有操作就登出
source /etc/profile
#更新配置文件
可以切换用户身份,并且以指定用户的身份执行命令
二进制语言,两个不同的应用证明队对接
type:指模块类型,即功能 control :PAM库该如何处理与该服务相关的PAM模块的成功或失败情况,一个关健词实现 module-path: 用来指明本模块对应的程序文件的路径名 Arguments: 用来传递给该模块的参数
模块类型(module-type)
Auth 账号的认证和授权
Account 帐户的有效性,与账号管理相关的非认证类的功能,如:用来限制/允许用户对某个服务的访问时间,限制用户的位置(例如:root用户只能从控制台登录)
Password 用户修改密码时密码复杂度检查机制等功能
Session 用户会话期间的控制,如:最多打开的文件数,最多的进程数等
-type 表示因为缺失而不能加载的模块将不记录到系统日志,对于那些不总是安装在系统上的模块有用
Control: ( 控制位)
required :一票否决,表示本模块必须返回成功才能通过认证,但是如果该模块返回失败,失败结果也不会立即通知用户,而是要等到同一type中的所有模块全部执行完毕,再将失败结果返回给应用程序,即为必要条件
requisite :一票否决,该模块必须返回成功才能通过认证,但是一旦该模块返回失败,将不再执行同一type内的任何模块,而是直接将控制权返回给应用程序。是一个必要条件
sufficient :一票通过,表明本模块返回成功则通过身份认证的要求,不必再执行同一type内的其它模块,但如果本模块返回失败可忽略,即为充分条件,优先于前面的
equired和requisiteoptional :表明本模块是可选的,它的成功与否不会对身份认证起关键作用,其返回值一般被忽略include: 调用其他的配置文件中定义的配置
optional 可选项
rpm -qi pam #查看pam详细信息
rpm -ql pam #查看pam所有文件
第一步:先确定你要使用什么服务程序
第二步
功能:在用户级别实现对其可使用的资源的限制,例如:可打开的文件数量,可运行的进程数量,可用内存空间
用户 主机名=命令程序列表
用户 主机名=(用户)命令程序列表
?
kk ALL=(root) /sbin/ifconfig?? ??? ??? ??? ?#举例
root:需要使用命令的用户
ALL=(ALL):主机列表=代表谁去执行(不写默认root)
ALL:可以执行什么命令
启用sudo操作日志
/etc/sudoers
末尾添加Defaults logfile="/var/log/sudo"
查询授权的sudo操作