Jellyfin установка
Среди всех медиа серверов мне более приятен Jellyfin. Просто в установке, открытый исходный код, минимум логов, ну и можно еще видео смотреть.
Добавим репозиторий:
apt update && sudo apt install -y wget gnupg
wget -O - https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo tee /usr/share/keyrings/jellyfin.gpg.key
echo "deb [signed-by=/usr/share/keyrings/jellyfin.gpg.key] https://repo.jellyfin.org/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
Устанавливаем:
apt install -y jellyfin
Проверяем и запускаем:
systemctl status jellyfin
systemctl enable jellyfin
systemctl start jellyfin
Сервер теперь доступен:
http://ip:8096
После следуем указаниям установщика. Конфиги лежат:
/var/lib/jellyfin/
usr/share/jellyfin
/etc/jellyfin
Настроим реверс прокси через nginx. Пример конфига:
server {
listen 80;
server_name вашдомен;
if ($host != "вашдомен") {
return 444;
}
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name вашдомен;
ssl_certificate /etc/letsencrypt/live/вашдомен/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/вашдомен/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass http://127.0.0.1:8060;
proxy_ssl_verify off;
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;
}
}
Сгенерируем сертификат LetsEncrypt через проверку DNS-записей:
certbot certonly --preferred-challenges dns --manual -d вашдомен
Ну и сделаем так, чтобы http висел только на localhost:
nano /etc/jellyfin/network.xml
Включим https и добавим:
<string>127.0.0.1</string>
Все это в целом можно сделать через графическую админку. После создания папки, где будут лежать медиа, дадим на нее права:
chown -R jellyfin:jellyfin /путьдопапки chmod -R 755 /mnt/media /путьдопапки
Если напрягает, что существуют записи о событиях, то чистим таблицу в базе:
sqlite3 /var/lib/jellyfin/data/jellyfin.db "DELETE FROM ActivityLogs;"