Jellyfin пусна версия 12.0 на своя медиен сървър. Някои от корекциите за сигурност в нея блокират заявки, създадени за достъп до файлове извън директориите, които сървърът трябва да предоставя. Останалата част от работата по сигурността засяга първоначалната настройка, инсталирането на приставки, родителския контрол и уеб интерфейса.

Jellyfin 12

При погрешно конфигуриран сървър потребител, който не е влязъл в профила си, би могъл да задейства повторно съветника за настройка — страниците за първоначално стартиране, които създават администраторския акаунт и насочват Jellyfin към вашите библиотеки.

Пакетните приставки с небезопасни имена вече се отхвърлят. Родителският контрол вече се прилага на места, където преди това не е действал, а уеб клиентът разполага с корекции за междинен скриптинг (cross-site scripting) — клас грешки, при които съдържание, предоставено от атакуващ, се изпълнява като скрипт в браузърната сесия на друг потребител.

Проектът не посочва отделните проблеми, не съпоставя CVE идентификатори и не оценява тяхната сериозност, така че администраторът, който решава колко бързо да инсталира корекциите за сигурност, разполага единствено с думата „сигурност“ и изречението около нея.

Старите клиенти и остарелите входове спират да работят

Поддръжката за остарелите адреси /emby/ и /mediabrowser/ е премахната, а методът за вход, който Jellyfin вече беше отбелязал като остарял, е изключен по подразбиране както на съществуващи сървъри, така и при нови инсталации. Клиентите, които не са обновявани от години, са тези, които ще спрат да се свързват.

Jellyfin също така премахна POST /Users/{userId}/EasyPassword, един от петте маршрута, отстранени в тази версия, които вече бяха редуцирани до празни операции (no-ops), и отбеляза UserDto.HasPassword като остарял с мотива, че отговорът му вече не е полезен.

Потребителските имена вече не са чувствителни към главни и малки букви в 12.0 и два акаунта вече не могат да носят имена, които се различават само по главните букви. Сървър, съдържащ такава двойка, ще се провали напълно при миграцията на базата данни, затова е добре списъкът с потребители да бъде прегледан преди започване на обновяването.

Вграденият TLS все още е наличен, засега

В бележките към версия 10.11.0 Jellyfin посочи, че ще премахне собствената поддръжка на TLS на сървъра в тази версия. Това премахване е отложено за бъдеща версия. Проектът продължава да препоръчва стартирането на сървъра зад обратно прокси (reverse proxy).

Всеки, който използва достъпен от интернет сървър с вградения TLS на Jellyfin, ще продължи да го използва без прекъсване при обновяването, което е практическият ефект от отлагането.

Какво да направите преди обновяването

Приставки от трети страни, разработени за 10.11, няма да се зареждат във версия 12.0. Сървърът вече е насочен към .NET 10 и няколко интерфейса за приставки са променени, така че тези приставки се нуждаят от актуализирани версии от техните автори; Jellyfin съветва те да бъдат премахнати от сървъра преди обновяването и да бъдат добавени отново, когато се появят нови версии. Официалните приставки вече са актуализирани. Деактивираните приставки вече остават деактивирани и след рестартиране, което не беше така при 10.11.

Пътят за обновяване започва от 10.10.7 или която и да е версия 10.11.x, като по-старите версии първо трябва да бъдат обновени до 10.10.7. След това е необходимо пълно сканиране на библиотеката, като първото сканиране отнема значително повече време от обикновено, тъй като Jellyfin вече проверява всеки елемент в библиотеката спрямо файловете на диска. Администраторите, които искат да извършат миграцията като самостоятелна стъпка, могат да стартират сървъра с --mode MigrateSystem, което извършва обновяването и приключва работа, без да стартира останалата част от Jellyfin.

Схемата на базата данни се променя и данните се презаписват при първоначалното зареждане, а резервното копие, направено преди това, е единственият начин за връщане към предишната версия.