Hello,
@EVOTk , voilà une ébauche pour passer Jellyfin en https avec swag:
6/ Accès extérieur en HTTPS grâce au Reverse Proxy ( Optionnel )
A/ Mettre à jour la config Jellyfin dans swag
Aller dans votre dossier config pour swag. Mettons que le dossier config de votre container Swag soit:
/home/docker_user/swag/config
Il vous faudra donc faire:
Bash:
cd home/docker_user/swag/config
Si vous avez déjà utilisé Swag, vous devez savoir que toutes les configs des différents services que vous voulez mettre à dispo par le biais du reverse proxy swag se trouvent dans:
Il existe déjà un fichier exemple pour Jellyfin, nous allons donc en faire une copie que l'on modifiera pour notre besoin.
On se rend dans proxy-confs:
On copie colle le fichier exemple pour Jellyfin qui se nomme jellyfin.subdomain.conf.sample
Bash:
cp jellyfin.subdomain.conf.sample jellyfin.subdomain.conf
On édite le fichier tout fraichement crée:
Bash:
nano jellyfin.subdomain.conf
Voici à quoi ressemble ce fichier avant modif:
NGINX:
## Version 2021/05/18
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name jellyfin.*;
include /config/nginx/ssl.conf;
client_max_body_size 0;
location / {
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app jellyfin;
set $upstream_port 8096;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
}
location ~ (/jellyfin)?/socket {
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app jellyfin;
set $upstream_port 8096;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
}
On va donc donner à ce fichier le chemin complet avec notre nom de domaine.
Dans le présent tuto, le container name est 'jellyfin'.
Mettons que le nom de domaine que vous avez est 'ndd.fr'
Pour distinguer le nom du container du sous domaine que l'on va attribuer à Jellyfin, mettons que je veuille accéder à jellyfin par l'adresse suivante:
Ici le sous domaine serait donc
Il vous faudra donc modifier la ligne server_name par:
Code:
server_name superjellyfin.ndd.fr;
Ce qui donne le fichier suivant:
Code:
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name superjellyfin.ndd.fr;
include /config/nginx/ssl.conf;
client_max_body_size 0;
location / {
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app jellyfin;
set $upstream_port 8096;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
}
location ~ (/jellyfin)?/socket {
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app jellyfin;
set $upstream_port 8096;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
}
Sauvegardez et quittez l'éditeur nano
B/ Générer le certificat pour votre sous-domaine Jellyfin
Pour ceux qui ont suivi jusque là, le sous domaine dédié à Jellyfin est donc 'superjellyfin'. On va donc demander à Swag de générer un certificat Let's encrypt pour lui.
Si vous avez choisi une méthode wildcard duckdns/ovh pour configurer votre Swag, je laisse @EVOTk renseigner cet encart.
Si vous avez un container swag pour lequel vous devez préciser chaque sous domaine que vous souhaitez couvrir, il vous suffira d'ajouter superjellyfin à votre liste de SUB_DOMAINS et redémarrer le container swag afin de tenir compte des modifs.
Vérifiez bien dans vos logs qu'il n'y a pas d'erreur à la création des certificats.
C/ Paramétrer le serveur Jellyfin
J'ai un doute sur la nécessité de devoir modifier ces paramètres dans l'UI de Swag, quelqu'un peut il confirmer leur utilité ?
Pour conclure, connectez vous en admin à votre serveur Jellyfin, et allez dans la page des paramètres réseaux:
Code:
<adresse-ip-de-votre-nas>:8096/web/index.html#!/networking.html
Ici, cochez
Code:
Autoriser les connexions distantes à ce serveur
et modifiez votre numéro de port HTTPS public par 443 (ou le port https choisi pour votre instance Swag)
Croisez les doigts (ça c'est l'étape la plus importante), redémarrez votre container Jellyfin, et rendez vous sur
Job's done !