RDP Monster

Serveur Xtream : installer Xtream UI sur Ubuntu

Serveur Xtream : installer Xtream UI sur Ubuntu

Ce qu'est réellement un serveur Xtream

Un serveur Xtream est une machine Linux exécutant un panel de gestion IPTV qui parle l'API Xtream Codes. Le panel remplit trois rôles : il ingère les flux live et les sources vidéo, il gère les lignes (comptes utilisateurs avec identifiant, mot de passe, date d'expiration et limite de connexions), et il rediffuse le tout en HTTP via une poignée de points d'accès bien connus (player_api.php pour les métadonnées, get.php pour les playlists M3U, xmltv.php pour les données EPG). Comme presque toutes les applications clientes IPTV implémentent cette API, « serveur Xtream » est devenu un raccourci pour désigner n'importe quel panel qui l'expose, quel que soit le logiciel qui tourne réellement en dessous.

Une phrase de cadrage avant la partie technique : ce guide couvre uniquement l'infrastructure et l'administration du panel, et l'opérateur est responsable de la détention des droits de diffusion de chaque flux distribué via le panel. Si ces concepts sont nouveaux pour vous, commencez par notre introduction sur le fonctionnement de l'IPTV au niveau protocolaire. La terminologie du panel prendra beaucoup plus de sens ensuite.

De Xtream Codes à Xtream UI et XUI.one

Xtream Codes était le panel commercial qui a défini la catégorie. En septembre 2019, une opération judiciaire coordonnée par les autorités italiennes et Europol a saisi l'infrastructure de l'entreprise, et le logiciel n'a plus jamais été vendu ni mis à jour. L'API côté client, en revanche, était déjà le standard du secteur : l'écosystème a donc survécu à l'entreprise.

Deux projets ont comblé le vide. Xtream UI est un fork communautaire gratuit bâti sur la dernière base de code publique 2.9 ; il a maintenu le panel en vie pendant des années, mais son développement public est largement à l'arrêt. XUI.one est un panel commercial à code fermé écrit par un ancien développeur d'Xtream UI, et c'est le successeur maintenu de facto aujourd'hui. Les deux conservent la même API, le même modèle de lignes et les mêmes ports par défaut, ce qui explique pourquoi les guides d'installation de l'un s'appliquent en grande partie à l'autre, et pourquoi cet article reste agnostique quant au fork.

Prérequis serveur : CPU, RAM et bande passante

Chaque fork exige une installation Ubuntu LTS neuve et minimale, et la plupart ciblent une version précise. Vérifiez la documentation du fork avant de commander le serveur, car installer sur la mauvaise version d'Ubuntu est la cause la plus fréquente d'une installation cassée. L'installeur déploie sa propre pile nginx, PHP et MariaDB sous /home/xtreamcodes/ : ne le posez donc jamais sur une machine qui fait déjà tourner une pile web ou un panneau d'hébergement, car ils se disputeraient les ports et les paquets.

Le dimensionnement se résume à une question : faites-vous du restreaming (transmission des flux tels quels) ou du transcodage (réencodage avec ffmpeg) ? Le restreaming sollicite à peine le CPU : le serveur ne fait pour l'essentiel que copier des octets entre des sockets. Le transcodage logiciel coûte environ un cœur moderne par chaîne 1080p, et c'est là que les budgets explosent. Côté RAM, 4 Go suffisent pour un petit panel de test ; 8 Go ou plus est raisonnable en production dès que le cache MariaDB et quelques processus ffmpeg s'accumulent. Gardez la base de données sur du stockage SSD.

La bande passante, c'est de l'arithmétique pure : spectateurs simultanés en pic multipliés par le débit du flux, plus une marge. Aucun réglage du panel ne change ce calcul.

Spectateurs simultanés en picCPU (restreaming seul)RAMBande passante à 8 Mbps par spectateur
252 cœurs4 Go~200 Mbps
1004 cœurs8 Go~800 Mbps
2506-8 cœurs16 Go~2 Gbps

Ces chiffres supposent du restreaming uniquement et un débit 1080p typique de 8 Mbps ; le transcodage multiplie la colonne CPU, pas celle de la bande passante. Le débit soutenu compte bien plus que la vitesse de port annoncée : testez donc sous charge réelle. Si vous préférez éviter ce travail de dimensionnement, nos serveurs conçus pour les charges de streaming sont dimensionnés exactement pour ce type d'usage à débit soutenu.

Installer un panel de type Xtream UI sur Ubuntu

Chaque fork livre son propre installeur, mais ils suivent tous la même structure en trois étapes. Les commandes ci-dessous sont volontairement génériques : téléchargez l'installeur uniquement depuis la page de release officielle de votre fork, jamais depuis un ré-upload quelconque, et lisez le script avant de l'exécuter en root.

Étape 1 : Préparer un système propre

apt update && apt upgrade -y
apt install -y wget unzip python3 net-tools
timedatectl set-timezone UTC

Redémarrez si un nouveau noyau a été installé, et réglez le fuseau horaire avec soin : la planification de l'EPG dépend de l'horloge système, et une dérive produit des guides de programmes décalés de plusieurs heures.

Étape 2 : Lancer l'installeur du fork

cd /root
wget "$INSTALLER_URL" -O install.py   # from your fork's official release page
python3 install.py

Le script installe la pile embarquée, crée la base de données (Xtream UI, par exemple, fait tourner son propre MariaDB sur 127.0.0.1:7999 avec une base nommée xtream_iptvpro) et affiche l'URL d'administration, le port et les identifiants à la fin. Notez-les immédiatement : certains forks génèrent un chemin ou un port d'administration aléatoire et ne l'afficheront pas une seconde fois.

Étape 3 : Première connexion et vérifications

Ouvrez http://your-server-ip:25500 dans un navigateur, connectez-vous avec les identifiants générés et changez le mot de passe administrateur avant toute autre chose. Confirmez ensuite que les services écoutent bien :

ss -tlnp | grep -E '25500|25461'

Vous devriez voir le nginx embarqué du panel attaché aux deux ports. À partir de là, le travail côté panel (définir le serveur principal, créer des catégories et une ligne de test) se fait entièrement dans l'interface web.

Ports, reverse proxy et TLS

Les valeurs par défaut héritées de Xtream Codes sont 25500 pour le panel d'administration et 25461 pour la sortie HTTP côté client, c'est-à-dire le port auquel les lignes se connectent pour les playlists et les flux. N'ouvrez que ce qui est nécessaire et filtrez le reste ; si votre IP d'administration est fixe, restreignez-lui le port du panel :

ufw allow 22/tcp
ufw allow 25461/tcp
ufw allow from YOUR_ADMIN_IP to any port 25500 proto tcp
ufw enable

Vérifiez ensuite ce que voit réellement l'extérieur : notre guide sur la vérification des ports ouverts sous Linux couvre ss, nmap et la différence entre un port en écoute et un port joignable.

De nombreux opérateurs placent nginx ou HAProxy devant le port client sur 80, 443 ou 8080, car certains réseaux bloquent purement et simplement les ports non standard ; le proxy peut aussi terminer le TLS pour le panel d'administration. Une réserve honnête : beaucoup de box TV et d'applications IPTV anciennes se comportent encore mieux en HTTP simple, testez donc votre parc client réel avant d'imposer HTTPS sur le port de streaming. Et ne confondez rien de tout cela avec de la sécurité : déplacer le panel d'administration sur un port inhabituel ne réduit que le bruit des scanners dans vos journaux. Le vrai durcissement, c'est un pare-feu strict, des mots de passe uniques et solides, du TLS sur l'interface d'administration et un OS à jour.

Sauvegardes, supervision et mises à jour

La base de données est le panel : flux, lignes, bouquets et configuration EPG vivent tous dans MariaDB. Faites-en un dump quotidien et copiez-le hors du serveur :

mysqldump -h 127.0.0.1 -P 7999 -u user_iptvpro -p xtream_iptvpro | gzip > /root/xtream-db-$(date +%F).sql.gz
tar czf /root/xtream-config-$(date +%F).tar.gz /home/xtreamcodes/iptv_xtream_codes/config

Pour la supervision, le tableau de bord du panel affiche déjà les connexions en direct par flux ; ajoutez vnstat pour la tendance de bande passante et htop pour repérer un processus ffmpeg parti en vrille. Un grand nombre de connexions signifie aussi des milliers de sockets ouverts : vérifiez que l'installeur a bien relevé les limites de descripteurs de fichiers. La plupart le font, via des ajustements sysctl et limits.conf, mais contrôlez-le. Enfin, soyez réaliste sur le logiciel que vous exécutez : un fork qui ne reçoit plus de correctifs doit être traité comme une application PHP legacy exposée sur Internet. Gardez-le sur un serveur dédié qui ne fait rien d'autre, exposez le minimum et appliquez régulièrement les correctifs de l'OS en dessous.

Rien de tout cela n'exige du matériel exotique. Il faut une machine Ubuntu LTS propre avec accès root et un réseau qui reste stable quand une centaine de sockets tirent chacun 8 Mbps toute la soirée. C'est précisément pour cela que nos offres VPS Linux sont conçues : CPU et RAM dédiés, bande passante illimitée (fair-use), accès administrateur complet sans KYC, et livraison en environ 10 secondes après confirmation du paiement. Commandez, lancez l'installeur, et vous pouvez être sur l'écran de connexion du panel dans l'heure.

Foire aux questions

Xtream UI est-il encore maintenu ?

Le développement public d'Xtream UI est largement à l'arrêt ; XUI.one est le successeur activement maintenu.
Le fork gratuit Xtream UI a connu ses dernières versions publiques significatives il y a des années, et ses canaux communautaires d'origine se sont éteints. XUI.one, panel commercial à code fermé signé par un ancien développeur d'Xtream UI, est là où se fait le développement actif aujourd'hui. Si vous utilisez malgré tout Xtream UI, traitez-le comme un logiciel legacy : gardez-le sur un serveur dédié et protégé par pare-feu, restreignez le port d'administration à des IP connues, et sauvegardez la base de données chaque jour pour pouvoir migrer rapidement.

Quelle différence entre un serveur Xtream et un serveur Plex ou Jellyfin ?

Plex et Jellyfin sont des serveurs multimédias personnels ; un panel Xtream est un intergiciel de distribution de flux live multi-utilisateurs.
Plex et Jellyfin indexent une bibliothèque multimédia locale et la diffusent vers vos propres appareils. Un panel Xtream est construit autour des chaînes live et de la gestion des abonnés : il ingère des flux, crée des lignes (comptes utilisateurs) avec dates d'expiration et limites de connexions, et expose l'API Xtream Codes attendue par les applications IPTV. Si vous voulez seulement regarder vos propres fichiers à la maison, Plex ou Jellyfin est l'outil adapté : un panel Xtream serait une surcharge inutile.

Quelle bande passante consomme un flux IPTV ?

Environ 2-4 Mbps en SD, 5-10 Mbps en 1080p et 15-25 Mbps en 4K HEVC.
Cela dépend du débit de la source, pas du panel : les chaînes SD tournent généralement à 2-4 Mbps, le 1080p autour de 5-10 Mbps, et la 4K HEVC à 15-25 Mbps. Multipliez le débit par votre pic de spectateurs simultanés pour dimensionner le lien montant : 100 spectateurs sur des chaînes à 8 Mbps demandent environ 800 Mbps d'upload soutenu, plus une marge. Le débit soutenu compte plus que la vitesse de port annoncée : testez le serveur sous charge réelle avant la mise en production.

Puis-je installer un panel Xtream sur un hébergement mutualisé ou à côté de cPanel ?

Non. Le panel exige un serveur Linux dédié avec accès root et sa propre pile web embarquée.
Les installeurs de panel déploient leurs propres builds de nginx, PHP et MariaDB sous /home/xtreamcodes/ et s'attachent à des ports fixes comme 25500 et 25461. Un hébergement mutualisé ne vous donne ni accès root ni ports libres, et les panneaux de contrôle comme cPanel ou Plesk entrent directement en conflit avec la pile embarquée. La plateforme minimale viable est un VPS ou un serveur dédié Ubuntu LTS propre qui ne fait rien d'autre.

Adrien Roche, Rédacteur infrastructure & hébergement

Ingénieur systèmes avec plus de 10 ans d'exploitation de parcs Windows Server et Linux. Adrien gère la documentation infrastructure de rdp.monster et rédige nos guides sur le RDP, l'hébergement VPS, l'administration serveur, le réseau et les outils de confidentialité.

Inscrivez-vous à notre programme revendeur

Vos informations

Si vous avez une question, contact us by clicking here !
Nom(Obligatoire)
Indiquez votre adresse e-mail, vous devez avoir un compte sur manager.rdp.monster !

Votre entreprise

Indiquez l'adresse de votre site web si vous en avez un
Expliquez brièvement comment vous comptez vendre les services à vos clients. Par exemple, en discutant avec des gens sur des forums.

On utilise des cookies !

Nous utilisons des cookies pour améliorer votre expérience de navigation, proposer des publicités ou contenus personnalisés et analyser notre trafic. En cliquant sur « Accepter », vous consentez à notre utilisation des cookies.