温馨提示×

jellyfin在centos上如何实现多用户访问

小樊
44
2025-09-28 12:29:26
栏目: 智能运维

1. 安装Jellyfin
在CentOS上安装Jellyfin是实现多用户访问的基础。首先添加EPEL仓库,再通过YUM包管理器安装:

sudo yum install -y epel-release sudo yum install -y jellyfin 

安装完成后,启动Jellyfin服务并设置开机自启:

sudo systemctl start jellyfin sudo systemctl enable jellyfin 

2. 配置数据库(可选但推荐)
默认情况下,Jellyfin使用SQLite数据库,适合单用户场景。若需支持多用户并发访问,建议切换至MySQL或PostgreSQL:

  • 安装MySQL
    sudo yum install -y mysql-server sudo systemctl start mysqld sudo systemctl enable mysqld 
    登录MySQL并创建专用数据库及用户:
    CREATE DATABASE jellyfin; CREATE USER 'jellyfin'@'localhost' IDENTIFIED BY 'your_secure_password'; GRANT ALL PRIVILEGES ON jellyfin.* TO 'jellyfin'@'localhost'; FLUSH PRIVILEGES; 
  • 配置Jellyfin使用MySQL
    编辑配置文件/etc/jellyfin/config/config.db.json,修改数据库设置:
    { "Database": { "Engine": "mysql", "Host": "localhost", "Port": 3306, "DatabaseName": "jellyfin", "Username": "jellyfin", "Password": "your_secure_password" } } 
  • PostgreSQL配置:流程类似,安装PostgreSQL后创建数据库和用户,修改配置文件中的Enginepostgresql即可。

3. 启用多用户会话
Jellyfin默认允许单用户会话,需修改配置文件开启多用户同时登录:
编辑/etc/jellyfin/config/system.config,找到[General]部分,将allow_multiple_sessions设置为true

[General] allow_multiple_sessions = true 

保存后重启Jellyfin服务使配置生效:

sudo systemctl restart jellyfin 

4. 通过Web界面创建用户
最便捷的方式是通过Jellyfin Web界面管理用户:

  • 打开浏览器,访问http://your_server_ip:8096(若配置了反向代理则用域名)。
  • 使用管理员账户登录(首次安装时设置的账号)。
  • 点击右上角头像→“用户管理”→“创建用户”,填写用户名、密码、邮箱等信息,点击“保存”。

5. 配置用户权限与共享
创建用户后,需为其分配权限以控制媒体访问范围:

  • 进入“用户管理”,选择目标用户,点击“编辑”。
  • 权限设置:在“权限”选项卡中,可配置用户对媒体库的访问权限(如播放、下载、上传)、设备限制等。
  • 共享设置:在“共享”选项卡中,可设置用户是否有权分享媒体内容给其他用户或外部设备。

6. 配置反向代理(可选但推荐)
为提升安全性与访问便利性,建议使用Nginx作为反向代理并绑定域名:

  • 安装Nginx
    sudo yum install -y nginx sudo systemctl start nginx sudo systemctl enable nginx 
  • 配置Nginx代理
    编辑/etc/nginx/conf.d/jellyfin.conf,添加以下内容(替换your_domain.com为你的域名):
    server { listen 80; server_name your_domain.com; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name your_domain.com; ssl_certificate /etc/letsencrypt/live/your_domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your_domain.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; } } 
  • 获取SSL证书:使用Certbot获取免费Let’s Encrypt证书:
    sudo yum install -y certbot python3-certbot-nginx sudo certbot --nginx -d your_domain.com 
  • 重启Nginx
    sudo systemctl restart nginx 

完成后,用户可通过https://your_domain.com访问Jellyfin,享受更安全的HTTPS连接。

7. 安全加固

  • 防火墙配置:允许HTTP(80)和HTTPS(443)流量通过:
    sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload 
  • 定期更新:保持Jellyfin及相关依赖(如Nginx、数据库)为最新版本,修复安全漏洞。

0