温馨提示×

如何在centos上配置jellyfin的SSL证书

小樊
44
2025-06-04 04:05:21
栏目: 云计算

在CentOS上配置Jellyfin的SSL证书,通常意味着你需要为Jellyfin设置一个HTTPS连接。这可以通过几种方式完成:使用Let’s Encrypt免费证书、购买SSL证书或使用自签名证书。以下是使用Let’s Encrypt和Certbot来配置SSL证书的步骤:

  1. 安装Certbot: Certbot是一个自动化的工具,用于获取和更新Let’s Encrypt SSL/TLS证书。首先,你需要安装它。在CentOS上,你可以使用以下命令安装Certbot和它的Nginx插件(如果你使用Nginx作为Web服务器):

    sudo yum install epel-release sudo yum install certbot python2-certbot-nginx 
  2. 获取SSL证书: 一旦Certbot安装完成,你可以使用它来获取SSL证书。运行以下命令并按照提示操作:

    sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com 

    yourdomain.comwww.yourdomain.com替换为你的实际域名。Certbot将自动配置Nginx并启用HTTPS。

  3. 配置Jellyfin: Jellyfin通常Docker容器运行。你需要确保Jellyfin容器能够通过HTTPS访问。这通常意味着你需要在Nginx配置中设置一个反向代理,将流量从443端口(HTTPS)转发到Jellyfin容器的HTTP端口(通常是8096)。

    在Nginx配置文件中添加以下内容(通常位于/etc/nginx/conf.d/yourdomain.com.conf):

    server { listen 443 ssl; server_name yourdomain.com www.yourdomain.com; ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { proxy_pass http://localhost:8096; 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 $scheme; } } server { listen 80; server_name yourdomain.com www.yourdomain.com; return 301 https://$host$request_uri; } 

    确保将yourdomain.com替换为你的实际域名,并根据需要调整端口号。

  4. 重启Nginx: 保存配置文件后,重启Nginx以应用更改:

    sudo systemctl restart nginx 
  5. 更新Jellyfin: 如果你的Jellyfin是通过Docker运行的,确保更新你的docker-compose.yml文件或启动命令,以便它知道通过Nginx代理接收流量。

  6. 测试配置: 在浏览器中访问你的域名,确保SSL证书已正确安装,并且Jellyfin可以通过HTTPS访问。

请注意,这些步骤假设你使用的是Nginx作为Web服务器。如果你使用的是其他类型的服务器,如Apache或直接使用Jellyfin的嵌入式Web服务器,配置步骤将有所不同。此外,Certbot和Nginx的版本可能会影响具体的命令和配置文件的位置。始终确保你的软件是最新的,并参考最新的官方文档。

0