系统安全加固生成器
为不同场景生成标准化加固脚本
账户与认证
风险账户处理
锁定空口令账户,检查 UID 重复。
背景:空口令账户是系统最薄弱的环节,黑客无需密码即可登录;UID 重复则会导致文件权限归属混乱。
动作:1. 扫描 shadow 文件定位空口令账户并强制锁定。 2. 检查 passwd 文件发现重复 UID 并报告。
动作:1. 扫描 shadow 文件定位空口令账户并强制锁定。 2. 检查 passwd 文件发现重复 UID 并报告。
强制密码历史
记录历史密码,禁止重用。
背景:用户习惯在密码过期后改回旧密码,导致密码失效机制形同虚设。
动作:1. 修改 /etc/pam.d/common-auth。 2. 设置 remember 参数。 3. 在 /etc/security/opasswd 中记录历史散列值,防止前 N 次密码重复。
动作:1. 修改 /etc/pam.d/common-auth。 2. 设置 remember 参数。 3. 在 /etc/security/opasswd 中记录历史散列值,防止前 N 次密码重复。
防暴力破解锁定
登录失败多次后临时锁定账户。
背景:等保三级强制要求防爆破。
动作:1. 在 /etc/pam.d/common-auth 顶部插入 pam_tally2 模块。 2. 设置 deny (尝试次数) 和 unlock_time (锁定时间)。 3. 默认开启 even_deny_root 防止针对 root 的爆破。
动作:1. 在 /etc/pam.d/common-auth 顶部插入 pam_tally2 模块。 2. 设置 deny (尝试次数) 和 unlock_time (锁定时间)。 3. 默认开启 even_deny_root 防止针对 root 的爆破。
密码策略增强
设置密码复杂度和有效期要求。
背景:等保核心要求。弱密码是系统被入侵的首要原因。
动作:1. 修改 /etc/security/pwquality.conf 强制包含数字/大小写/特殊字符。 2. 修改 /etc/login.defs 设置 PASS_MAX_DAYS 生命周期。 3. 确保最小长度不低于 10 位。
动作:1. 修改 /etc/security/pwquality.conf 强制包含数字/大小写/特殊字符。 2. 修改 /etc/login.defs 设置 PASS_MAX_DAYS 生命周期。 3. 确保最小长度不低于 10 位。
UID 唯一性检查
确保所有用户UID唯一,无重复。
背景:UID重复导致权限混乱。
动作:检查并报告重复UID。
动作:检查并报告重复UID。
文件与权限
关键文件权限
强制修改 passwd, shadow, grub.cfg, aliases 等文件权限。
背景:敏感配置文件权限过大可能导致普通用户提权或获取加密 Hash。
动作:1. 修正 /etc/passwd (644) 防止篡改。 2. 锁定 /etc/shadow (400) 防止 Hash 泄露。 3. 保护 Grub 引导配置 (600) 防止非法进入救援模式。
动作:1. 修正 /etc/passwd (644) 防止篡改。 2. 锁定 /etc/shadow (400) 防止 Hash 泄露。 3. 保护 Grub 引导配置 (600) 防止非法进入救援模式。
清理危险文件/别名
删除 .rhosts/netrc, 注释 root 邮件别名。
背景:历史遗留后门或错误的别名转发可能导致绕过认证。
动作:1. 扫描并删除 .rhosts/.netrc/.shosts。 2. 删除 hosts.equiv 系统级信任。 3. 修改 /etc/aliases 移除 root 转发,防止邮件监听。
动作:1. 扫描并删除 .rhosts/.netrc/.shosts。 2. 删除 hosts.equiv 系统级信任。 3. 修改 /etc/aliases 移除 root 转发,防止邮件监听。
默认权限 (Umask)
设置系统默认文件创建权限屏蔽码。
背景:默认 022 权限允许其他用户读取新文件,等保要求 027 完全隔离。
动作:1. 在 /etc/profile 中追加/替换 umask 值。 2. 确保新创建的目录只有所有者有权访问。
动作:1. 在 /etc/profile 中追加/替换 umask 值。 2. 确保新创建的目录只有所有者有权访问。
网络与服务
开启防火墙
确保 Firewalld 服务处于运行状态。
背景:防火墙是系统的第一道防线。
动作:1. 启用并启动 firewalld.service。 2. 确保默认策略为丢弃或拒绝。
动作:1. 启用并启动 firewalld.service。 2. 确保默认策略为丢弃或拒绝。
禁用打印与发现
禁用 CUPS (打印) 和 Avahi (设备发现)。
背景:Avahi 等协议可能泄露内网主机资产信息。
动作:1. 禁用 cups 打印子系统。 2. 禁用 avahi-daemon 多播发现。
动作:1. 禁用 cups 打印子系统。 2. 禁用 avahi-daemon 多播发现。
内核网络参数优化
禁止 IP 转发/源路由/重定向,开启 SYN Cookie。
背景:通过内核参数层面防御拒绝服务(DoS)和中间人攻击。
动作:1. 修改 /etc/sysctl.conf。 2. 开启 SYN Cookies 防护。 3. 关闭 accept_redirects 源路由重定向。
动作:1. 修改 /etc/sysctl.conf。 2. 开启 SYN Cookies 防护。 3. 关闭 accept_redirects 源路由重定向。
系统与审计
禁用 USB存储设备
禁用 usb-storage 驱动模块,防止数据拷贝。
背景:防止内部人员通过 U 盘盗取机密或带入病毒。
动作:1. 在 /etc/modprobe.d/ 创建禁用配置。 2. 将 usb-storage 模块指向 /bin/true 彻底阻断加载。
动作:1. 在 /etc/modprobe.d/ 创建禁用配置。 2. 将 usb-storage 模块指向 /bin/true 彻底阻断加载。
强制 SELinux
开启 Enforcing 模式,提供强制访问控制。
背景:即便 root 权限被拿,SELinux 也能限制攻击者扩散破坏。
动作:1. 修改 /etc/selinux/config。 2. 切换模式 for enforcing。 3. 调用 setenforce 实时生效。
动作:1. 修改 /etc/selinux/config。 2. 切换模式 for enforcing。 3. 调用 setenforce 实时生效。
全面审计 (Auditd/Syslog)
启用 Auditd/Rsyslog 服务以符合等保要求。
背景:等保三级强制审计项。记录谁、在何时、做了什么。
动作:1. 启用 auditd。 2. 使用 auditctl 监控 /etc/shadow, sshd_config 等核心文件。
动作:1. 启用 auditd。 2. 使用 auditctl 监控 /etc/shadow, sshd_config 等核心文件。
sudo 强化
开启 sudo 日志与终端要求。
背景:防止恶意脚本在后台静默提权。
动作:1. 在 /etc/sudoers 中追加 Defaults logfile。 2. 开启 requiretty 强制交互。
动作:1. 在 /etc/sudoers 中追加 Defaults logfile。 2. 开启 requiretty 强制交互。
Kylin 安全机制 (Kysec)
开启原厂 Kysec 安全子系统。
背景:银河麒麟深度集成的内核级保护,防止敏感程序篡改。
动作:1. 调用 security-switch 系统指令。 2. 切换至 default 默认强制保护级。
动作:1. 调用 security-switch 系统指令。 2. 切换至 default 默认强制保护级。
时间同步 (Chrony)
开启 Chronyd 服务,并指定 NTP 服务器 IP。
背景:时钟漂移会导致证书失效或审计日志时间错乱。
动作:1. 安装/启动 chronyd。 2. 修改 /etc/chrony.conf。 3. 强制同步至指定的权威时钟源。
动作:1. 安装/启动 chronyd。 2. 修改 /etc/chrony.conf。 3. 强制同步至指定的权威时钟源。
空闲超时注销
无操作 30 分钟后自动注销。
背景:防止管理员离开工位后,他人利用现有的 Shell 权限进行操作。
动作:1. 在 /etc/profile 中设置 TMOUT 系统变量。 2. 设置 readonly TMOUT 防止用户绕过。
动作:1. 在 /etc/profile 中设置 TMOUT 系统变量。 2. 设置 readonly TMOUT 防止用户绕过。
关闭 Core Dump
禁止生成核心转储文件,防止敏感内存泄露。
背景:Core Dump可能包含密码、密钥等敏感信息。
动作:1. 修改 /etc/security/limits.conf。 2. 设置 soft/hard core 为 0。
动作:1. 修改 /etc/security/limits.conf。 2. 设置 soft/hard core 为 0。
限制并发会话数
限制同一用户的多重并发登录数。
背景:防止单一账户被多处同时使用,降低横向移动风险。
动作:1. 修改 /etc/security/limits.conf。 2. 设置 maxlogins 参数。
动作:1. 修改 /etc/security/limits.conf。 2. 设置 maxlogins 参数。
限制历史命令条数
限制输出和保留的历史命令条数。
背景:历史命令可能泄露敏感操作记录。
动作:1. 修改 /etc/profile。 2. 设置 HISTSIZE 和 HISTFILESIZE。
动作:1. 修改 /etc/profile。 2. 设置 HISTSIZE 和 HISTFILESIZE。
启用屏保与锁屏
空闲时自动启用屏保并锁定屏幕。
背景:防止用户离开后他人未授权使用。
动作:1. 使用 gsettings 配置屏保。 2. 设置空闲锁屏时间。
动作:1. 使用 gsettings 配置屏保。 2. 设置空闲锁屏时间。
禁止系统自动登录
禁用桌面环境的自动登录功能。
背景:自动登录绕过了身份验证,任何物理接触者都能直接进入系统。
动作:1. 修改 lightdm/gdm 配置。 2. 注释 autologin-user。
动作:1. 修改 lightdm/gdm 配置。 2. 注释 autologin-user。
🛡️ 脚本生成完毕
适用场景:桌面终端 (Desktop)
AI助理
加载中...