Zoeken op website

Hoe SHOUTCast Radio Server (online mediastreaming) op Linux te installeren


SHOUTcast is eigen software die wordt gebruikt om media via internet te streamen, vooral gebruikt bij livestreaming van muziek door radiostations op internet, en is ontwikkeld door Nullsoft met versies voor alle grote platforms, inclusief Linux.

In deze tutorial wordt uitgelegd hoe u de SHOUTcast Distributed Network Audio Server in CentOS 8 kunt installeren, met behulp waarvan u mediaspelers kunt gebruiken, zoals Winamp of Mixxx om verbinding te maken met de streamingdiensten en uw audioafspeellijsten uit te zenden naar internetluisteraars.

Hoewel deze tutorial alleen betrekking heeft op de SHOUTcast serverinstallatie op een CentOS 8/7 machine, kan dezelfde procedure worden toegepast op andere Linux-distributies zoals RHEL , Fedora, Ubuntu, Debian, Linux Mint, etc. met de opmerking dat je firewall-opdrachten moet aanpassen geschikt voor uw Linux-distributie.

Stap 1: Download en installeer SHOUTcast Server

1. Voordat u doorgaat met de installatie van de SHOUTcast-server, moet u een lokale gebruiker maken van waaruit u de server gaat gebruiken, omdat het uitvoeren van de server vanaf het root-account ernstige beveiligingsproblemen kan veroorzaken op uw systeem.

Log dus in op uw systeem met het root-account, maak een nieuwe gebruiker aan, genaamd radio. Nadat u klaar bent, logt u uit bij het root-account en logt u vervolgens in met uw nieuw gemaakte gebruiker. Hier zijn de volgende vereiste opdrachten die op de terminal moeten worden uitgevoerd.

adduser radio
passwd radio
su - radio
pwd 

2. Nadat u bent ingelogd op uw systeem met het radio-account, maakt u twee mappen met de naam download en server, en schakelt u vervolgens over naar de downloadmap.

mkdir download
mkdir server
cd download

3. Haal vervolgens de laatste versie van het SHOUTcast-serverarchief voor Linux op, afhankelijk van je systeemarchitectuur, door naar de officiële Nullsot-downloadpagina te gaan.

  1. http://download.nullsoft.com/shoutcast/tools

U kunt ook het volgende wget-hulpprogramma gebruiken om het archief vanaf de opdrachtregel te downloaden.

--------------- 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. Nadat de download is voltooid, pakt u het archiefbestand uit, geeft u de map op waarin u het uitvoerbare binaire bestand sc_serv kunt vinden en kopieert u het naar de installatiemap, gelegen in de map server map en ga vervolgens naar het SHOUTcast installatiepad door de volgende opdrachten te geven.

tar xfz sc_serv2_linux_x64-latest.tar.gz
ls
cp  sc_serv  ../server/
cd  ../server/
ls

5. Nu u zich in het serverinstallatiepad bevindt, maakt u twee mappen met de naam control en logs en bent u klaar met de daadwerkelijke installatie proces. Maak een lijst van de inhoud van uw map om te verifiëren of alles aanwezig is met behulp van de opdracht ls.

mkdir control
mkdir logs
ls

Stap 2: Maak een SHOUTcast-configuratiebestand

6. Om de server te laten draaien en bedienen, moet u een configuratiebestand voor SHOUTcast maken. Open uw favoriete teksteditor en maak een nieuw bestand met de naam sc_serv.conf.

Zorg ervoor dat dit bestand in hetzelfde pad wordt gemaakt als waar uw sc_serv e uitvoerbare binaire bestanden zijn gemaakt. Als u de opdracht pwd gebruikt, zou u dit absolute pad moeten zien – /home/radio/server).

cd /home/radio/server/
pwd
vi sc_serv.conf

Voeg de volgende instructies toe aan het bestand sc_serv.conf (voorbeeldconfiguratie).

adminpassword=password
password=password1
requirestreamconfigs=1
streamadminpassword_1=password2
streamid_1=1
streampassword_1=password3
streampath_1=http://radio-server.lan:8000
logfile=logs/sc_serv.log
w3clog=logs/sc_w3c.log
banfile=control/sc_serv.ban
ripfile=control/sc_serv.rip

Enkele belangrijke instellingen waarmee u rekening moet houden in dit bestand zijn wachtwoord-instructies, die u dienovereenkomstig moet wijzigen:

  • adminpassword – Beheerderswachtwoord vereist om extern beheer via de webinterface naar de server uit te voeren.
  • streampassword_1 – Wachtwoord vereist door de externe mediaspeler om verbinding te maken en media-inhoud naar de server te streamen.

Als u een configuratiebestand voor de SHOUTcast-server wilt maken, kunt u ook naar de map download gaan en builder.sh of setup.sh uitvoeren scripts.

cd ../download/
bash setup.sh

waarmee u de server kunt configureren via een webinterface die toegankelijk is vanaf het volgende adres.

http://localhost:8000
OR
http://ipaddress:8000

Zodra de configuratie is aangemaakt, kunt u deze naar de installatiemap van de server kopiëren.

7. Om de server te starten, voert u sc_serv het bestand uit uw huidige werkmap uit, wat de server map moet zijn, en zet het op de achtergrond met & bash-operator en stuur uw browser naar de http://localhost-or-IP:8000 URL.

Gebruik ook de opdracht netstat om te zien of de server draait en op welke poortnummers hij luistert.

chmod +x sc_serv
./sc_serv &
netstat -tulpn | grep sc_serv

Stap 3: Open Firewall-verbindingen

8. De SHOUTcast-server is nu actief, maar is nog niet toegankelijk vanaf de buitenwereld vanwege CentOS Firewall-beperkingen. Om de server te openen voor externe verbindingen, logt u in met een root-account en voegt u de regel toe die poort 8000 TCP opent.

Nadat de regel is toegevoegd, laadt u de Firewall opnieuw om de wijzigingen toe te passen en logt u uit bij uw root-account.

su -
firewall-cmd --add-port=8000/tcp --permanent
firewall-cmd --reload
exit

9. Open vervolgens een browser vanaf een externe machine en typ het IP-adres van uw server op poort 8000 in de URL die is opgeslagen – http://192.168.1.80:8000 – en de SHOUTcast De webinterface zou eruit moeten zien zoals in de onderstaande schermafbeelding, zonder dat er livestreams beschikbaar zijn.

Stap 4: Beheer SHOUTcast Server en maak een Daemon-script

10. De opdracht die wordt gebruikt om de SHOUTcast-radioserver te beheren is het binaire bestand zelf, dat moet worden uitgevoerd vanaf de locatie van het installatiepad om
het configuratiebestand kan lezen. Om de server als een daemon uit te voeren met behulp van de opdrachtoptie daemon.

U kunt de server ook instrueren om de configuraties vanaf een andere locatie te lezen door aan te geven waar het configuratiebestand zich bevindt, maar houd er rekening mee dat het gebruik van deze optie het aanmaken van logs en controlemappen vereist, wat in de praktijk verwarrend kan zijn en kan leiden tot onvermogen van de server. beginnen.

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. Als je een vereenvoudigde opdracht nodig hebt om de SHOUTcast-radioserver te starten of te stoppen, log dan opnieuw in als root en maak het volgende uitvoerbare script op het pad /usr/local/bin/ zoals in het onderstaande voorbeeld.

su -
vi /usr/local/bin/radio

Voeg nu het volgende fragment toe aan het radio bestand.

#!/bin/bash
case $1 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. Nadat het bestand is gemaakt, maakt u het uitvoerbaar, sluit u de root-account af en is er een nieuwe opdrachtschreeuw beschikbaar voor het beheer van uw SHOUTcast-radioserver.

chmod +x /usr/local/bin/radio
exit

13. Om de server vanaf nu te beheren, gebruikt u de opdracht radio met de volgende schakelaars.

radio start_daemon		## Starts SHOUTcast server as a daemon

radio start                   ## Starts SHOUTcast server in foreground

radio stop                    ## Stops SHOUTcast server

14. Als u de server automatisch wilt starten na het opnieuw opstarten, maar alleen bij het inloggen van de gebruiker (in dit geval is de server geïnstalleerd op de lokale gebruiker met de naam radio), voer dan het volgende uit commando vanaf het thuispad van het radio-account, log vervolgens uit en log opnieuw in om de functionaliteit te verifiëren, zoals weergegeven in de onderstaande schermafbeelding.

whoami  
echo “radio start_daemon” >> ~/.bashrc

Dat is het! Nu is de SHOUTcast-server klaar om geluid of afspeellijsten te ontvangen van externe mediaspelers zoals Winamp van Windows en Mixxx van Linux en zend alle ontvangen audio-inhoud uit via internet.