1. 系统与Jenkins基础安全配置
sudo apt update && sudo apt upgrade -y
),并安装OpenJDK 11及以上版本(sudo apt install openjdk-11-jdk
),Jenkins依赖Java环境运行。wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
;echo "deb http://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list
),更新包索引后安装Jenkins(sudo apt install jenkins
)。sudo systemctl start jenkins
)并设置为开机自动启动(sudo systemctl enable jenkins
),通过systemctl status jenkins
确认服务状态。2. 用户认证与权限管理(核心安全措施)
http://<服务器IP>:8080
),进入“Manage Jenkins”→“Configure Global Security”,勾选“Enable security”,开启安全防护。frontend-.*
),分配给对应角色的用户(如前端开发人员仅能访问frontend-*
项目)。dev_user1
、viewer_user1
),然后在“Manage and Assign Roles”→“Assign Roles”中,将用户添加到相应角色(如dev_user1
添加“Developer”全局角色和“Frontend_Project”项目角色)。3. 网络与访问安全
sudo ufw allow 8080
),若启用HTTPS则允许443端口(sudo ufw allow 443
),最后启用防火墙(sudo ufw enable
)。sudo apt install certbot python3-certbot-nginx
;sudo certbot --nginx -d your-jenkins-domain.com
),或在“Manage Jenkins”→“Configure Global Security”中上传自定义SSL证书,强制Jenkins通过HTTPS提供服务,加密数据传输。4. 系统与Jenkins服务加固
jenkins
系统用户运行(权限较低)。若需提升权限,可创建专用用户(如jenkins-admin
,sudo adduser jenkins-admin
),并将其添加到jenkins
组(sudo usermod -aG jenkins jenkins-admin
),然后修改/etc/default/jenkins
中的JENKINS_USER=jenkins-admin
,重启Jenkins服务(sudo systemctl restart jenkins
)。sudo nano /etc/ssh/sshd_config
),将PermitRootLogin yes
改为PermitRootLogin no
,禁止root用户通过SSH远程登录,降低服务器被攻击的风险。/etc/ssh/sshd_config
中设置PermitEmptyPasswords no
,禁止使用空密码登录SSH,增强SSH登录安全性。5. 插件与依赖安全管理
sudo apt update && sudo apt upgrade jenkins
更新Jenkins至最新稳定版。6. 日志与监控
/var/log/jenkins/jenkins.log
),可通过“Manage Jenkins”→“System Log”→“Add new log recorder”配置更详细的审计规则(如记录所有构建操作、配置变更)。