温馨提示×

jenkins在centos如何ssl

小樊
42
2026-10-09 06:05:09
栏目: 云计算

在 CentOS 上给 Jenkins 配置 SSL(HTTPS) 常见有 两种方式:


方式一:使用 Nginx 反向代理(推荐 ✅)

优点:简单、安全、易维护,支持 Let’s Encrypt 免费证书

1. 安装 Nginx

sudo yum install -y nginx
sudo systemctl enable --now nginx

2. 配置 Jenkins 监听本地端口

编辑 Jenkins 配置:

sudo vi /etc/sysconfig/jenkins

修改:

JENKINS_PORT="8080"
JENKINS_LISTEN_ADDRESS="127.0.0.1"

重启 Jenkins:

sudo systemctl restart jenkins

3. 配置 Nginx SSL

sudo vi /etc/nginx/conf.d/jenkins.conf

示例(自签或正式证书):

server {
    listen 443 ssl;
    server_name jenkins.example.com;

    ssl_certificate     /etc/nginx/ssl/jenkins.crt;
    ssl_certificate_key /etc/nginx/ssl/jenkins.key;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

server {
    listen 80;
    server_name jenkins.example.com;
    return 301 https://$host$request_uri;
}

4. 开放防火墙

sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

方式二:Jenkins 直接使用 SSL(不推荐 ❌)

1. 生成证书

openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -keyout /var/lib/jenkins/jenkins.key \
  -out /var/lib/jenkins/jenkins.crt

2. 修改 Jenkins 启动参数

sudo vi /etc/sysconfig/jenkins

添加:

JENKINS_ARGS="--httpsPort=8443 --httpsCertificate=/var/lib/jenkins/jenkins.crt --httpsPrivateKey=/var/lib/jenkins/jenkins.key"

3. 重启

sudo systemctl restart jenkins

访问:

https://服务器IP:8443

✅ 推荐方案总结

方式 推荐度
Nginx + SSL ⭐⭐⭐⭐⭐
Jenkins 原生 SSL ⭐⭐

如果你是 内网 / 测试环境 还是 公网生产,我可以给你更具体方案(比如 Let’s Encrypt 自动续期)。

0 踩