账号安全基本措施

网友投稿 251 2022-10-01

账号安全基本措施

账号安全基本措施

系统账号清理

非登录用户的shell设为/sbin/nologin

usermod -s /sbin/nologin 用户名

锁定长期不用的账号

方法1

usermod -L 用户名(锁定后的账户shadow文件密码段全面有!) usermod -U 用户名(解锁)

方法2

passwd -l 用户名(锁定后的账户shadow文件密码段全面有!!,注意和usermod有区别,一个!或者两个!!的区别) passwd -u 用户名解锁) passwd -S 用户名 (检查锁定情况)

删除无用的账号

userdel -r 用户名(r代表一并删除家目录)

锁定账号文件passwd、shadow

chattr +i /etc/passwd /etc/shadow lsattr /etc/passwd /etc/shadow (所的文件查看状态)

chattr -i /etc/passwd /etc/shadow(解锁文件)

密码安全控制

设置密码有效期 要求用户下次登陆时修改密码

[root@localhost~]#vi /etc/logindefs

修改密码配置文件,适用于新建用户

.....

pass_max_days 30

[root@localhost~]#chage -M 30 lisi(适用于已有用户) [root@localhost~]#cat /etc/shadow|grep lisi

[root@localhost~]#chage -d 0 KY16(强制在下次登陆时更改密码)

[root@localhost~]#cat /etc/shadow KY16(shadow文件中的第三个字段被修改为0)

命令历史限制

减少登录的命令条数 登陆时自动清空命令历史

[root@localhost ~]# vi /etc/profileexport HISTSIZE=200[root@localhost ~]# source /etc/profile[root@localhost ~]# vi ~/.bashrcecho“ ” > ~/.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 wheeltsengyia正在将用户"tsengyia"加入到"wheel”组中

[root@localhost~]# vi/etc/pam.d/su

#%PAM-1.0

auth sufficient pam_rootok.so

auth required pam_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 记录格式:用户 主机名=命令程序列表

[root@localhost~]#visudo ...... %wheel ALL=NOPASSWD:ALL jerry localhost=/sbin/ifconfig syrianer localhost=/sbin/*,!/sbin/ifconfig,!/sbin/route Cmnd_Alias PKGTOOLS=/bin/rpm,/usr/bin/yum mile localgost=PKGTOOLS

调整BIOS引导设置

将第一引导设备设为当前系统所在硬盘 禁止从其他设备(光盘、U盘、网络)引导系统 将安全级别设为setup,并设置管理员密码

GRUB限制

使用grub2-makpasswd-pbkdf2生成密钥 修改/etc/grub.d/00_header 生成新的grub.cfg配置文件

限制root只在安全终端登陆

安全终端配置:/etc/securetty

[root@localhost~]# vi

禁止普通用户登陆

建立/etc/nologin文件

删除nologin文件或重启后即恢复正常

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决springcloud阿里云OSS文件访问跨域问题的实现
下一篇:IO流实现深克隆
相关文章

 发表评论

暂时没有评论,来抢沙发吧~