centos

centos如何配置jellyfin的SSL证书

小樊
47
2025-10-07 00:30:10
栏目: 云计算

在CentOS上配置Jellyfin的SSL证书,通常需要以下几个步骤:

  1. 获取SSL证书

    • 你可以从Let’s Encrypt免费获取SSL证书。
    • 使用Certbot工具来自动化这个过程。
  2. 安装Certbot: 如果你还没有安装Certbot,可以使用以下命令来安装它:

    sudo yum install epel-release
    sudo yum install certbot python3-certbot-nginx
    
  3. 获取并安装SSL证书: 使用Certbot获取SSL证书,并自动配置Nginx(假设你使用Nginx作为Web服务器):

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

    按照提示操作,Certbot会自动配置Nginx并重启服务。

  4. 配置Jellyfin使用SSL: Jellyfin可以通过多种方式配置SSL,包括直接在Jellyfin的配置文件中设置或者通过反向代理(如Nginx)来处理SSL。

    • 直接在Jellyfin配置文件中设置: 编辑Jellyfin的配置文件/opt/jellyfin/config/config.xml,找到<httpPort>标签,将其值改为8096(或其他非标准HTTP端口),然后添加或修改<httpsPort>标签,将其值设为8443(或其他非标准HTTPS端口)。保存文件后,重启Jellyfin服务:

      sudo systemctl restart jellyfin
      
    • 通过Nginx反向代理设置: 如果你希望通过Nginx来处理SSL,可以编辑Nginx的配置文件(例如/etc/nginx/conf.d/yourdomain.conf),添加如下配置:

      server {
          listen 80;
          server_name yourdomain.com www.yourdomain.com;
          return 301 https://$host$request_uri;
      }
      
      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;
          }
      }
      

      保存文件后,重启Nginx服务:

      sudo systemctl restart nginx
      
  5. 更新Jellyfin配置: 如果你更改了Jellyfin的HTTP端口,需要在Jellyfin的Web界面中更新设置,确保它使用新的HTTPS端口。

完成以上步骤后,你的Jellyfin实例应该已经通过SSL证书安全地运行了。记得定期更新你的SSL证书,因为Let’s Encrypt的免费证书通常有效期为90天。

0
看了该问题的人还看了