账号安全基本措施

笛里谁知壮士心,沙头空照征人骨。这篇文章主要讲述账号安全基本措施相关的知识,希望能为你提供帮助。
账号安全基本措施
系统账号清理
【账号安全基本措施】非登录用户的shell设为/sbin/nologin
usermod -s /sbin/nologin 用户名
锁定长期不用的账号
方法1
方法2
删除无用的账号
userdel -r 用户名(r代表一并删除家目录)
锁定账号文件passwd、shadow
chattr -i /etc/passwd /etc/shadow(解锁文件)
密码安全控制

  • 设置密码有效期
  • 要求用户下次登陆时修改密码
[root@localhost~]#vi /etc/logindefs
修改密码配置文件,适用于新建用户
.....
pass_max_days 30
[root@localhost~]#chage -d 0 KY16(强制在下次登陆时更改密码)
[root@localhost~]#cat /etc/shadow|KY16(shadow文件中的第三个字段被修改为0)
命令历史限制
  • 减少登录的命令条数
  • 登陆时自动清空命令历史
[root@localhost ~]# vi /etc/profile
export HISTSIZE=200
[root@localhost ~]# source /etc/profile
[root@localhost ~]# vi ~/.bashrc
echo“ ”> ~/.bash_history
终端自动注销
  • 闲置600秒后自动注销
[root@localhost ~]# vi /etc/profile
.....
export TMOUT=600
[root@localhost ~]# source /etc/profile
使用su命令切换用户
  • 用途:Substitute User,切换用户
  • 格式:su -目标用户
密码验证
  • root--> 任意用户,不验证密码
  • 普通用户--> 其他用户,验证目标用户的密码
[jerr@localhost~]$ su -root
口令
[jerr@localhost~]# whoami
root
带-选项表示将使用目标,用户的登录shell环境
限制使用su命令的用户
  • 将允许使用su命令的用户加入wheel组
  • 启用pa_wheel认证模块
[root@localhost ~]# gpasswd -a tsengyia wheel
tsengyia
正在将用户" tsengyia" 加入到" wheel”组中
[root@localhost~]# vi/etc/pam.d/su
#%PAM-1.0
authsufficient pam_rootok.so
authrequiredpam_wheel.so use_uid
.....
(a)以上两行是默认状态(及开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换
(b)两行都注释也是运行所有用户都能使用su命令,但root下使用su切换到其他普通用户需要输入密码:如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam_)
查看su操作记录
安全日志文件:/var/log/secure
Linux中的PAM安全认证
su命令的安全隐患
  • 默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登陆密码,带来安全风险
  • 为了加强su命令的使用控制,可借助PAM认证模块,只允许极个别用户使用su命令进行切换
IPAM(Pluggable Authentication Modules)可插拔式认证模块
  • 是一种高效而且灵活便利的用户级别的认证方式
  • 也是当前Linux服务器普遍使用的认证方式
PAM认证原理
般遵循的顺序
  • Service (服务)→PAM (配置文件)→pam_ *.so
首先要确定哪一项服务,然后加载相应的PAM的配置文
件(位于/etc/pam.d下),最后调用认证文件(位于
/lib64/security下)进行安全认证
用户访问服务器时,服务器的某- 个服务程序把用户的
请求发送到PAM模块进行认证
不同的应用程序所对应的PAM模块是不同的
查看某个程序是否支持PAM认证,可用ls命令
  • 示例:查看su是否支持PAM模块认证
?Is /etc/pam.dI grep su
查看su的PAM配置文件: cat /etc/pam.d/su
  • 每一行都是一个独立的认证过程
  • 每一行可以区分为三个字段
认证类型
控制类型
PAM模块及其参数
使用sudo机制提升权限
su命令的缺点
sudo命令的用途及用法
  • 用途:以其他用户身份(如root)执行授权的命令
  • 用法:sudo 授权命令
配置sudo授权
  • visudo或vi/etc/sudoers
  • 记录格式:用户 主机名=命令程序列表
调整BIOS引导设置
  • 将第一引导设备设为当前系统所在硬盘
  • 禁止从其他设备(光盘、U盘、网络)引导系统
  • 将安全级别设为setup,并设置管理员密码
GRUB限制
  • 使用grub2-makpasswd-pbkdf2生成密钥
  • 修改/etc/grub.d/00_header
  • 生成新的grub.cfg配置文件
限制root只在安全终端登陆
安全终端配置:/etc/securetty
[root@localhost~]# vi
禁止普通用户登陆
建立/etc/nologin文件
删除nologin文件或重启后即恢复正常

    推荐阅读