CentOS 与 Jellyfin 远程访问设置
一、前置准备与基础连通
sudo yum install -y openssh-server && sudo systemctl start sshd && sudo systemctl enable sshdsudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reloadssh 用户名@服务器IP -p 22二、方式一 直接端口映射访问 Jellyfin
sudo yum install -y epel-release 后按官方仓库指引安装 Jellyfin(或下载对应 RPM 包本地安装)。sudo firewall-cmd --permanent --add-port=8096/tcpsudo firewall-cmd --permanent --add-port=8920/tcpsudo firewall-cmd --reloadsudo systemctl start jellyfin && sudo systemctl enable jellyfinhttp://公网IP:8888 或 http://域名:8096。/etc/jellyfin/config/config.yaml 中设置 server.host: "0.0.0.0" 并重启服务。三、方式二 反向代理与 HTTPS(推荐)
sudo dnf install nginx && sudo systemctl start nginx && sudo systemctl enable nginxserver {
listen 80;
server_name your_domain_or_ip;
location / {
proxy_pass http://127.0.0.1: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 nginxsudo yum install -y certbot python3-certbot-nginxsudo certbot --nginx -d your_domainhttps://your_domain 直达 Jellyfin(端口 443)。四、方式三 Docker 部署与端口规划
sudo mkdir -p /srv/jellyfin/{config,cache}(媒体目录按需挂载,如 /media)。sudo docker run -d --name=jellyfin \
-p 8096:8096 -p 8920:8920 \
-p 7359:7359/udp -p 1900:1900/udp \
-v /srv/jellyfin/config:/config \
-v /srv/jellyfin/cache:/cache \
-v /media:/media \
-e TZ=Asia/Shanghai \
--restart unless-stopped \
nyanmisaka/jellyfin:latest
sudo firewall-cmd --permanent --add-port={8096,8920}/tcp --add-port={1900,7359}/udp && sudo firewall-cmd --reload--device=/dev/dri:/dev/dri 并确保宿主机已安装相应驱动。五、无公网 IP 与常见排障
sudo setenforce 0 验证,若恢复则按需配置 SELinux 布尔值或策略。/var/log/jellyfin/jellyfin.log 查看启动、访问与插件报错。X-Forwarded-For/Proto,WebSocket 路径(如 /socket)按需代理。