提升 CentOS 上 Dolphin 安全性的实用方案
一 基础加固 系统与桌面环境
- 保持系统与软件包为最新,及时修补漏洞:执行sudo yum update或sudo dnf update。
- 启用并维持SELinux 为 enforcing模式,必要时仅设为permissive做排错,故障恢复后改回 enforcing。
- 启用并配置firewalld,仅放行必要服务端口(如仅开放80/443对外服务,SSH 端口按需限制来源)。
- 远程管理加固:在**/etc/ssh/sshd_config中设置PermitRootLogin no**、优先使用密钥认证、可修改默认端口并限制登录尝试次数。
- 账户与权限:遵循最小权限原则,仅为必要用户授予sudo;清理不必要的系统账户与组;设置强密码策略并定期更换。
- 服务最小化:关闭不需要的端口与服务,减少攻击面。
- 备份与审计:定期备份关键数据;启用auditd进行关键文件与命令审计;使用Lynis做基线安全扫描。
以上措施能显著降低通过桌面会话、共享服务与弱配置带来的风险,为 Dolphin 的文件操作提供坚实的系统底座。
二 Dolphin 文件与权限配置
- 图形界面设置权限:在目标文件/目录的属性 → 权限中,按“所有者/所属组/其他人”配置读/写/执行;必要时在属性中变更所有者/所属组。对系统关键目录避免给“其他人”赋予过多权限。
- 命令行加固(通用且可脚本化):
- 查看权限:ls -l
- 设置权限:如chmod 750 /path(所有者 rwx,组 rx,其他人无权限),避免chmod 777。
- 变更属主/属组:如sudo chown user:group /path。
- 默认权限与登录会话:设置umask 027降低新建文件/目录的默认暴露面;在**/etc/profile中设置TMOUT**实现会话超时自动注销,减少无人值守风险。
- 环境确认:Dolphin 是KDE Plasma默认文件管理器;若系统为GNOME(默认 Nautilus),需先安装 KDE 组件再使用 Dolphin。
以上做法确保仅授权用户与进程能访问敏感目录,降低通过图形文件管理器误操作或恶意篡改的可能。
三 限制脚本执行与扩展面
- 移除脚本执行位:对不需要直接执行的脚本,使用chmod -x /path/to/script.py禁止执行。
- 精细化 ACL:对特定用户/组限制执行权限,例如setfacl -m u:username:— /path/to/script.py。
- 桌面侧限制:在 Dolphin 配置中禁用外部脚本执行。编辑**~/.config/dolphinrc**,添加或设置NoExternalScriptExecution=true,随后执行kquitapp5 dolphin并重启 Dolphin 生效。
- 强制访问控制:在启用SELinux的系统上,可通过自定义策略限制 Dolphin 对解释器(如**/usr/bin/python3**)的exec能力;在启用AppArmor的系统上,为 Dolphin 编写策略以deny /usr/bin/python3 ix。以上方法需按系统与安全需求谨慎实施与测试。
这些措施可有效降低通过 Dolphin 触发的脚本执行风险,特别适合多用户桌面与共享主目录场景。
四 完整性校验与持续运维
- 文件完整性监控:部署AIDE或Tripwire,对关键系统与应用目录建立基线并定期校验,及时发现未授权变更。
- 持续更新与基线核查:保持系统与软件持续更新;定期使用Lynis进行安全基线审计并整改薄弱项。
- 变更留痕与回溯:结合auditd记录对敏感目录与关键命令的访问与执行,便于事后取证与责任界定。
通过完整性校验与持续审计,可在文件被通过图形界面或脚本篡改时快速发现并响应。