centos cobbler怎样配置安全
小樊
37
2025-11-29 20:40:32
CentOS 上 Cobbler 的安全加固清单
一 基础加固与网络边界
- 启用并正确配置防火墙,仅开放必要端口;最小化暴露面。示例(生产环境请按网段收敛):
- DHCP:UDP 67/68
- TFTP:UDP 69
- HTTP/HTTPS:TCP 80/443
- 命令示例:firewall-cmd --permanent --add-port={67,68}/udp --add-port={80,443}/tcp && firewall-cmd --reload
- 不建议直接关闭 SELinux;如确需排障可临时设为 Permissive 并尽快恢复 Enforcing,同时为目标服务设置正确的布尔值与策略模块。
- 将服务绑定到管理网段或回环地址,避免公网直连;在 /etc/cobbler/settings 中正确设置 server 与 next_server 为本机管理地址,减少误用与外泄风险。
二 身份与访问控制
- Web 管理认证
- 使用基于摘要的 htdigest 认证管理用户与口令:htdigest /etc/cobbler/users.digest “Cobbler” <用户名>,并定期轮换口令。
- 默认凭据(如用户 cobbler 与默认口令)必须第一时间修改,且仅限内网使用。
- 认证与授权模块
- 文件认证:/etc/cobbler/modules.conf 中 [authentication] 使用 authn_configfile,[authorization] 使用 authz_allowall(仅测试环境)。
- 生产建议接入企业目录(如 LDAP/AD)或启用更强的授权策略模块,细化到用户/组/动作的访问控制。
- 默认安装 root 口令
- 在 /etc/cobbler/settings 设置 default_password_crypted,使用 openssl passwd -1 生成强口令哈希,避免明文或弱口令流入装机流程。
三 传输加密与 Web 防护
- 强制 HTTPS 访问 WebUI
- 在 /etc/httpd/conf.d/ssl.conf 或虚拟主机中对 /cobbler/web/ 做 80→443 强制跳转,仅暴露 443;证书建议使用受信任 CA 签发或企业内网 CA。
- 证书管理
- 自签名证书仅用于测试;生产可用 CFSSL 或 OpenSSL 自建 CA 与服务器证书,确保证书链完整、域名/IP 匹配、定期轮换与撤销检查。
- 仅限必要方法与会话安全
- 在 Apache 配置中限制 WebUI 仅允许 GET/POST,启用 HttpOnly/Secure 等会话 Cookie 属性,关闭目录浏览与默认欢迎页。
四 服务组件与引导安全
- 服务最小化与隔离
- 仅启用必需服务:httpd、cobblerd、tftp、rsync、dhcpd;为 TFTP 与 DHCP 配置最小权限与专用运行账户(如适用),并限制可写目录。
- 引导与装机控制
- 在 /etc/cobbler/settings 启用 pxe_just_once: 1,避免客户端重复自动重装;装机完成后引导菜单自动降级,减少被滥用风险。
- 使用 cobbler check 例行自检,核查配置、证书、引导文件与服务等健康状态,及时修复告警。
五 审计、日志与合规
- 集中与长期留存日志
- Web 层日志:/var/log/httpd/error_log;Cobbler 业务日志:/var/log/cobbler/cobbler.log。配置 logrotate 按日/大小滚动,保留不少于 90 天。
- 变更与合规
- 对 /etc/cobbler/、/etc/httpd/conf.d/、/var/lib/cobbler/ 等关键目录设置版本化备份与变更审计(如 auditd 或文件完整性监控)。
- 定期审查 cobbler users.digest、modules.conf、settings 与 dhcp.template 的变更记录,确保最小权限与合规配置落地。