SHOUTcast est un logiciel propriétaire utilisé pour diffuser des médias sur Internet, en particulier pour la diffusion de musique en direct par les stations de radio sur Internet, et est développé par Nullsoft avec des versions pour toutes les principales plates-formes, y compris Linux.
Ce tutoriel vous guidera sur la façon d’installer le serveur Audio Réseau distribué SHOUTcast dans CentOS 8, à l’aide duquel vous pouvez utiliser des lecteurs multimédias, comme Winamp ou Mixxx pour vous connecter aux services de streaming et diffuser vos listes de lecture audio aux auditeurs Internet.
Bien que ce tutoriel ne couvre que l’installation de SHOUTcast server sur une machine CentOS 8/7, la même procédure peut être appliquée à d’autres distributions Linux telles que RHEL, Fedora, Ubuntu, Debian, Linux Mint, etc. avec la remarque que vous devez adapter les commandes de pare-feu en fonction de votre distribution Linux.
Étape 1: Téléchargez et installez le serveur SHOUTcast
1. Avant de procéder à l’installation du serveur SHOUTcast, créez un utilisateur local à partir duquel vous exécuterez le serveur, car l’exécution du serveur à partir du compte racine peut imposer de graves problèmes de sécurité à votre système.
Alors, connectez-vous sur votre système avec le compte root, créez un nouvel utilisateur, appelé radio, une fois que vous avez terminé de vous déconnecter du compte root, puis connectez-vous avec votre utilisateur nouvellement créé. Voici les commandes requises suivantes qui doivent être exécutées sur le terminal.
# adduser radio# passwd radio# su - radio$ pwd
2. Une fois connecté sur votre système avec le compte radio, créez deux répertoires nommés download et server, puis basculez dans le dossier download.
$ mkdir download$ mkdir server# cd download
3. Ensuite, récupérez la dernière version de l’archive de serveur SHOUTcast pour Linux, en fonction de l’architecture de votre système, en visitant la page de téléchargement officielle de Nullsot.
- http://download.nullsoft.com/shoutcast/tools
Vous pouvez également utiliser l’utilitaire wget suivant pour télécharger l’archive à partir de la ligne de commande.
--------------- On 64-bit ---------------$ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_x64-latest.tar.gz--------------- On 32-bit --------------- $ wget http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux-latest.tar.gz
4. Une fois le téléchargement terminé, extrayez le fichier d’archive, répertoriez le répertoire pour localiser le fichier binaire exécutable sc_serv et copiez-le dans le répertoire d’installation, situé dans le dossier du serveur, puis accédez au chemin d’installation de SHOUTcast, en émettant les commandes suivantes.
$ tar xfz sc_serv2_linux_x64-latest.tar.gz$ ls$ cp sc_serv ../server/$ cd ../server/$ ls
5. Maintenant que vous vous trouvez dans le chemin d’installation du serveur, créez deux répertoires nommés control et logs et vous avez terminé le processus d’installation réel. Répertoriez le contenu de votre répertoire pour vérifier si tout est en place à l’aide de la commande ls.
$ mkdir control$ mkdir logs$ ls
Étape 2: Créez un fichier de configuration SHOUTcast
6. Pour exécuter et faire fonctionner le serveur, vous devez créer un fichier de configuration pour SHOUTcast. Ouvrez votre éditeur de texte préféré et créez un nouveau fichier, nommé sc_serv.conf.
Assurez-vous que ce fichier est créé dans le même chemin que vos fichiers binaires exécutables sc_serv e sont créés. L’utilisation de la commande pwd devrait vous montrer ce chemin absolu -/home/radio/ server).
$ cd /home/radio/server/$ pwd$ vi sc_serv.conf
Ajoutez les instructions suivantes à sc_serv.fichier de configuration (exemple de configuration).
adminpassword=passwordpassword=password1requirestreamconfigs=1streamadminpassword_1=password2streamid_1=1streampassword_1=password3streampath_1=http://radio-server.lan:8000logfile=logs/sc_serv.logw3clog=logs/sc_w3c.logbanfile=control/sc_serv.banripfile=control/sc_serv.rip
Certains paramètres importants que vous devez connaître dans ce fichier sont des instructions de mot de passe, que vous devez modifier en conséquence:
- adminpassword – Mot de passe administrateur requis pour effectuer l’administration à distance via l’interface Web vers le serveur.
- streampassword_1 – Mot de passe requis par le lecteur multimédia distant pour connecter et diffuser du contenu multimédia au serveur.
Alternativement, si vous souhaitez créer un fichier de configuration pour le serveur SHOUTcast, vous pouvez aller dans le répertoire de téléchargement et exécuter builder.sh ou setup.sh scripts.
$ cd ../download/$ bash setup.sh
qui vous permettra de configurer le serveur à partir d’une interface web accessible à partir de l’adresse suivante.
http://localhost:8000ORhttp://ipaddress:8000
Une fois la configuration créée, vous pouvez la copier dans le répertoire d’installation du serveur.
7. Pour démarrer le serveur, exécutez sc_serv
le fichier de votre répertoire de travail actuel, qui doit être le répertoire du serveur, placez-le en arrière-plan avec l’opérateur bash &
et dirigez votre navigateur vers http://localhost-or-IP:8000 URL.
Utilisez également la commande netstat pour voir si le serveur est en cours d’exécution et sur quels numéros de port il écoute.
$ chmod +x sc_serv$ ./sc_serv &$ netstat -tulpn | grep sc_serv
Étape 3 : Ouvrez les connexions du Pare-feu
8. Maintenant, le serveur SHOUTcast est opérationnel, mais il n’est pas encore accessible depuis le monde extérieur en raison des restrictions du pare-feu CentOS. Pour ouvrir le serveur à des connexions externes, connectez-vous avec le compte root et ajoutez la règle qui ouvrira le port 8000 TCP.
Une fois la règle ajoutée, rechargez le pare-feu pour appliquer les modifications et vous déconnecter de votre compte root.
$ su -# firewall-cmd --add-port=8000/tcp --permanent# firewall-cmd --reload# exit
9. Ouvrez ensuite un navigateur à partir d’une machine distante et tapez l’adresse IP de votre serveur sur le port 8000 sur l’URL déposée – http://192.168.1.80:8000 – et l’interface Web de SHOUTcast devrait apparaître comme dans la capture d’écran ci-dessous, sans flux en direct disponibles.
Étape 4: Gérer le serveur SHOUTcast et créer un script démon
10. La commande utilisée pour gérer le serveur radio SHOUTcast est le fichier binaire lui-même, qui doit être exécuté à partir de son emplacement de chemin d’installation pour pouvoir lire le fichier de configuration. Pour exécuter le serveur en tant que démon à l’aide de l’option de commande démon.
Vous pouvez également demander au serveur de lire ses configurations à partir d’un emplacement différent en indiquant où réside le fichier de configuration, mais sachez que l’utilisation de cette option nécessite la création de journaux et de répertoires de contrôle, ce qui peut être déroutant en pratique et peut entraîner une incapacité du serveur à démarrer.
$ pwd ## Assure that you are in the right installation directory - /home/radio/server$ ./sc_serv ## Start the server in foreground – Hit Ctrl + c to stop$ ./sc_serv daemon ## Start the server as a daemon$ ps aux | grep sc_serv ## Get Server PID$ killall sc_serv ## Stop server daemon
11. Si vous avez besoin d’une commande simplifiée pour démarrer ou arrêter le serveur radio SHOUTcast, connectez-vous à nouveau en tant que root et créez le script exécutable suivant sur /usr/local/bin/path comme dans l’exemple ci-dessous.
$ su -# vi /usr/local/bin/radio
Ajoutez maintenant l’extrait suivant au fichier radio.
#!/bin/bashcase in start)cd /home/radio/server/./sc_serv & ;; stop)killall sc_serv ;; start_daemon)cd /home/radio/server/./sc_serv daemon ;; *)echo "Usage radio start|stop" ;;esac
12. Une fois le fichier créé, rendez-le exécutable, quittez le compte root et une nouvelle commande shout sera disponible pour la gestion de votre serveur radio SHOUTcast.
# chmod +x /usr/local/bin/radio# exit
13. Pour gérer le serveur à partir de maintenant, utilisez la commande radio avec les commutateurs suivants.
$ radio start_daemon## Starts SHOUTcast server as a daemon$ radio start ## Starts SHOUTcast server in foreground$ radio stop ## Stops SHOUTcast server
14. Si vous souhaitez démarrer automatiquement le serveur après le redémarrage, mais uniquement lors de la connexion de l’utilisateur (dans ce cas, le serveur a été installé sur l’utilisateur local nommé radio), exécutez la commande suivante à partir du chemin d’accès du compte radio, puis déconnectez-vous et connectez-vous à nouveau pour vérifier la fonctionnalité, comme présenté dans la capture d’écran ci-dessous.
$ whoami $ echo "radio start_daemon" >> ~/.bashrc
C’est tout! Maintenant, le serveur SHOUTcast est prêt à recevoir du son ou des listes de lecture de lecteurs multimédias distants tels que Winamp de Windows et Mixxx de Linux et à diffuser tout le contenu audio reçu sur Internet.