当前位置: 代码网 > 服务器>服务器>Linux > linux-系统安全与应用

linux-系统安全与应用

2024年08月03日 Linux 我要评论
PAM(Pluggable Authentication Modules)可拔插式认证模块允许系统管理员通过配置文件来定义系统的认证策略,从而实现灵活的用户认证方式。使PAM成为一种高效而且灵活便利的用户级别的认证方式也是当前Linux服务器普遍使用的认证方式。

目录

一、账号安全基本措施

1.系统账号清理

2.密码安全控制 

3.历史命令安全管理

4.限制su切换用户

二、linux中的pam安全认证

1.pam简介

2.pam认证原理

 3.pam的配置文件

三、使用sudo提权

四、使用别名进行授权

五、开关机安全控制

1.grub限制 

2 禁止普通用户登录


一、账号安全基本措施

1.系统账号清理

将非登录用户的 shell 设为 /sbin/nologin,有效地防止这些用户登录到系统。

锁定长期不使用的账号

删除无用的账号 

锁定账号文件passwd、shadow  

查看账号文件的锁定状态 

解锁账号文件 passwdshadow 

2.密码安全控制 

设置密码有效期

[root@localhost ~]# useradd laoliu
[root@localhost ~]# echo 123456 | passwd --stdin laoliu
更改用户 laoliu 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# chage -m 60 laoliu       #密码有效期为60天
[root@localhost ~]# 
[root@localhost ~]# chage -m 99999 laoliu     #99999代表密码永不过期
[root@localhost ~]# 
[root@localhost ~]# chage -d 0 laoliu         #用户下次登录修改密码

3.历史命令安全管理

也可以自己在下面手动添加 👆

 最后用这条 source /etc/profile 进行刷新👆

4.限制su切换用户

将信任的用户加入到wheel组中    

gpasswd wheel -a 用户名

用于将指定用户添加到 wheel 组中,从而赋予该用户sudo权限 👆

[root@localhost ~]# useradd laoliu
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# gpasswd wheel -a laoliu
正在将用户“laoliu”加入到“wheel”组中
[root@localhost ~]# su laoliu
[laoliu@localhost root]$ su root
密码:
[root@localhost ~]# 

修改su的pam认证配置文件

二、linux中的pam安全认证

1.pam简介

2.pam认证原理

 3.pam的配置文件

pam的配置文件中的每一行都是一个独立的认证过程,它们按从上往下顺序依次由pam模块调用

第一列代表pam认证模块类型
auth:认证模块接口,如验证用户身份、检查密码是否可以通过,并设置用户凭据
account:账户模块接口,检查指定账户是否满足当前验证条件,如用户是否有权访问所请求的服务,检查账户是否到期
password:密码模块接口,用于更改用户密码,以及强制使用强密码配置
session:会话模块接口,用于管理和配置用户会话。会话在用户成功认证之后启动生效

第二列代表pam控制标记
required:模块结果必须成功才能继续认证,如果在此处测试失败,则继续测试引用在该模块接口的下一个模块,直到所有的模块测试完成,才将结果通知给用户。
requisite:模块结果必须成功才能继续认证,如果在此处测试失败,则会立即将失败结果通知给用户。
sufficient:模块结果如果测试失败,将被忽略。如果sufficient模块测试成功,并且之前的required模块没有发生故障,pam会向应用程序返回通过的结果,不会再调用堆栈中其他模块。
optional:该模块返回的通过/失败结果被忽略。一般不用于验证,只是显示信息(通常用于 session 类型)。
include:与其他控制标志不同,include与模块结果的处理方式无关。该标志用于直接引用其他pam模块的配置参数

第三列代表pam模块

默认是在/lib64/security/目录下,如果不在此默认路径下,要填写绝对路径。
同一个模块,可以出现在不同的模块类型中,它在不同的类型中所执行的操作都不相同,这是由于每个模块针对不同的模块类型编制了不同的执行函数。

第四列代表pam模块的参数

这个需要根据所使用的模块来添加。
传递给模块的参数。参数可以有多个,之间用空格分隔开
 

三、使用sudo提权

1.使用sudo

用途:以其他用户身份(通常是超级用户,如 root)执行授权的命令

用法:sudo 授权命令

2.配置之sudo授权
visudo或者vi /etc/sudoersc
记录格式:用户主机名=命令程序列表
输入vim /etc/sudoers 

四、使用别名进行授权

别名设置👇

user_alias  大写别名=用户1, 用户2, ...
host_alias  大写别名=主机名1, 主机名2, ...
cmnd_alias  大写别名=命令路径1, 命令路径2, ...
用户别名  主机别名=命令别名

补充知识:
#设置sudo日志路径
defaults logfile = "/var/log/sudo.log"
sudo -l           #普通用户查看有哪些sudo权限    
 

五、开关机安全控制

1.grub限制 

grub限制
使用grub2-mkpasswd-pbkdf2生成密钥

修改/etc/grub.d/00_header文件中,添加密码记录

生成新的grub.cfg配置文件

为了增加系统的安全性,可以为grub菜单设置密码,以防止未经授权的访问者修改引导参数

使用grub2-mkpasswd-pbkdf2生成密钥👇

修改/etc/grub.d/00_header文件中,添加密码记录👇

1.使用vim编辑器打开00_header文件

2.在末尾添加密码记录

3.生成新的grub.cfg配置文件 

重启完最后输入用户名和密码即可👇

2 禁止普通用户登录

 

👆禁止普通用户登录👆
建立/etc/nologin文件
删除nologin文件或重启后即恢复正常(rm -rf /etc/nologin)

touch /etc/nologin(禁止普通用户登录)
rm -rf /etc/nologin(取消上述登录限制)

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com