1. 系统与Jenkins基础安全加固
sudo apt update && sudo apt upgrade
更新Debian系统及Jenkins至最新版本,及时修补已知安全漏洞。/etc/ssh/sshd_config
文件,设置PermitRootLogin no
(禁用root远程登录)、PermitEmptyPasswords no
(禁止空密码登录);使用SSH密钥对认证(客户端生成密钥对,将公钥添加至服务器~/.ssh/authorized_keys
文件),替代密码登录。2. Jenkins权限精细化管控
Manage Jenkins > Configure Global Security
,勾选“Enable security”,强制用户登录后操作。Manage Jenkins > Manage Plugins
),进入Manage Jenkins > Manage and Assign Roles
,创建全局角色(如“Admin”拥有系统管理权限、“Developer”拥有项目构建权限)和项目角色(如“Frontend_Team”仅能访问前端项目),将角色分配给对应用户,实现权限最小化。3. 网络与通信安全防护
ufw
工具开放Jenkins默认端口(8080)及Agent通信端口(50000),限制仅允许信任IP访问,例如:sudo ufw allow from 192.168.1.0/24 to any port 8080
,然后启用防火墙:sudo ufw enable
。certbot
安装证书后,在Manage Jenkins > Configure Global Security
中指定证书路径(如/etc/letsencrypt/live/yourdomain.com/fullchain.pem
和/etc/letsencrypt/live/yourdomain.com/privkey.pem
),强制使用HTTPS访问,防止数据传输被窃取。4. 插件与依赖安全管理
Manage Jenkins > Manage Plugins
,检查插件更新,优先更新安全补丁版本,避免使用已知漏洞的插件。5. 日志与监控机制
/var/log/jenkins/jenkins.log
),定期检查日志中的异常操作(如未授权登录、敏感命令执行),及时响应安全事件。6. 构建环境隔离