安全设置

🚀 自动安全加固生成器

懒得手动修改配置文件?使用向导式工具,3 分钟生成专属加固脚本!

立即生成

1. 系统账户安全

密码安全要求

根据安全策略,系统密码必须包含以下四类字符:
1. 大写字母 | 2. 小写字母 | 3. 数字 | 4. 特殊符号

关键设置项:
- 计算机用户:修改为使用人真实姓名(昵称建议使用拼音或英文)。
- 登录安全:禁止开启“免密登录”和“开机自动登录”。若已开启,请参考本手册“1.7 安全策略”章节运行脚本进行强制禁用。

2. 违规端口封堵脚本 (iptables)

针对明确要求禁用的高危或非业务端口,可使用 diptabas.sh 脚本进行批量快速封堵:

推荐:可视化脚本生成器

只需选择端口和操作类型,即可一键生成定制脚本。

立即前往生成器 →

下载完整版脚本

操作流程:
1. 赋予执行权限:sudo chmod +x diptabas.sh
2. 执行脚本:sudo ./diptabas.sh
3. 按提示输入需要禁用的端口号(如:8080, 5900, 3389)。
4. 验证结果:执行 sudo iptables -L INPUT --line-numbers 查看规则。

脚本功能说明:
  • 交互模式:直接运行脚本,按提示操作
  • 命令行模式:支持 -b 封堵、-u 开放端口
  • 规则持久化:自动保存并配置开机加载
  • 协议支持:TCP / UDP / 全部

3. 登录失败锁定策略 (防爆破)

策略目标

为防止暴力破解密码,建议配置系统在连续多次登录失败后自动锁定该账户一段时间。

配置方法:
编辑 /etc/pam.d/common-auth 文件,在文件开头添加以下行:
auth required pam_tally2.so deny=5 unlock_time=900 even_deny_root root_unlock_time=900

  • deny=5:连续失败 5 次即锁定。
  • unlock_time=900:锁定时间为 900 秒 (15 分钟)。
  • even_deny_root:策略同样适用于 Root 账户。

解锁账户命令:
查看失败次数:sudo pam_tally2 --user [用户名]
手动解锁:sudo pam_tally2 --user [用户名] --reset

4. SSH 服务安全加固

编辑 SSH 配置文件 /etc/ssh/sshd_config 进行以下关键加固:

# 1. 禁止 Root 用户直接远程登录 (建议)
PermitRootLogin no

# 2. 修改默认端口 (可选,防止扫描)
Port 2222

# 3. 设置空闲超时自动断开 (单位:秒)
ClientAliveInterval 300
ClientAliveCountMax 0

# 4. 禁止空密码登录
PermitEmptyPasswords no

修改完成后,需重启服务生效:sudo systemctl restart sshd

5. 系统审计配置

开启审计服务可记录关键的系统操作和安全事件。

1. 开启服务:
sudo systemctl enable auditd
sudo systemctl start auditd

2. 关键日志路径:

  • 认证日志: /var/log/auth.log (包含登录成功/失败、sudo 操作等)
  • 系统内核日志: /var/log/kern.log
  • 审计详细日志: /var/log/audit/audit.log

6. 屏幕锁定与电源策略

终端防护

确保操作人员离开座位时,终端自动锁定,防止未授权访问。

图形化设置:
进入【控制面板】 -> 【电源管理】 / 【屏幕保护】。

推荐设置:
- 屏幕保护等待时间: 设置为 5-10 分钟。
- 在恢复时需要密码: 务必勾选。
- 显示器休眠: 建议设置为 15 分钟。

命令行强制锁定:
loginctl lock-session (立即锁定屏幕)