Kako instalirati SHOUTCast Radio Server (Online Media Streaming) na Linux


SHOUTcast je vlasnički softver koji se koristi za strujanje medija preko Interneta, posebno se koristi u live streamingu glazbe na radio postajama na Internetu, a razvio ga je Nullsoft s verzijama za sve glavne platforme, uključujući Linux.

Ovaj vodič će vas uputiti kako možete instalirati SHOUTcast Distributed Network Audio Server u CentOS 8, uz pomoć kojeg možete koristiti media playere, kao što je Winamp ili Mixxx za povezivanje s uslugama strujanja i emitiranje audio popisa slušateljima na Internetu.

Iako ovaj vodič pokriva samo instalaciju SHOUTcast poslužitelja na CentOS 8/7 stroju, isti se postupak može primijeniti na druge Linux distribucije kao što je RHEL , Fedora, Ubuntu, Debian, Linux Mint itd. uz napomenu da naredbe vatrozida morate prilagoditi odgovaraju vašoj Linux distribuciji.

Korak 1: Preuzmite i instalirajte SHOUTcast poslužitelj

1. Prije nego nastavite s instalacijom SHOUTcast poslužitelja, stvorite lokalnog korisnika s kojeg ćete pokrenuti poslužitelj jer pokretanje poslužitelja s root računa može izazvati ozbiljne sigurnosne probleme na vašem sustavu.

Dakle, prijavite se na svoj sustav s root računom, stvorite novog korisnika pod nazivom radio, nakon što završite odjavite se s root računa, a zatim se prijavite s vašim novokreiranim korisnikom. Ovdje su sljedeće potrebne naredbe koje je potrebno izvršiti na terminalu.

adduser radio
passwd radio
su - radio
pwd 

2. Nakon što se prijavite na svoj sustav s radijskim računom, stvorite dva direktorija pod nazivom preuzimanje i poslužitelj, zatim se prebacite na mapu za preuzimanje.

mkdir download
mkdir server
cd download

3. Zatim preuzmite posljednju verziju arhive SHOUTcast poslužitelja za Linux, ovisno o arhitekturi vašeg sustava, tako da posjetite službenu stranicu za preuzimanje Nullsota.

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

Alternativno, upotrijebite sljedeći uslužni program wget za preuzimanje arhive iz naredbenog retka.

--------------- 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. Nakon dovršetka preuzimanja, raspakirajte arhivsku datoteku, navedite direktorij za lociranje sc_serv izvršne binarne datoteke i kopirajte je u instalacijski direktorij koji se nalazi u poslužitelj mapu, zatim prijeđite na instalacijsku stazu SHOUTcast izdavanjem sljedećih naredbi.

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

5. Sada kada se nalazite na stazi instalacije poslužitelja, kreirajte dva direktorija pod nazivom control i logs i gotovi ste sa stvarnom instalacijom postupak. Navedite sadržaj svog direktorija da provjerite je li sve na svom mjestu pomoću naredbe ls.

mkdir control
mkdir logs
ls

Korak 2: Napravite SHOUTcast konfiguracijsku datoteku

6. Kako biste pokrenuli i upravljali poslužiteljem, morate stvoriti konfiguracijsku datoteku za SHOUTcast. Otvorite svoj omiljeni uređivač teksta i izradite novu datoteku pod nazivom sc_serv.conf.

Provjerite je li ova datoteka stvorena na istoj stazi na kojoj su stvorene vaše sc_serv e izvršne binarne datoteke. Korištenje naredbe pwd trebalo bi vam pokazati ovaj apsolutni put – /home/radio/server).

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

Dodajte sljedeće izjave u datoteku sc_serv.conf (primjer konfiguracije).

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

Neke važne postavke kojih biste trebali biti svjesni ove datoteke su izjave lozinke, koje morate promijeniti u skladu s tim:

  • adminpassword – Administratorska lozinka potrebna je za izvođenje daljinske administracije poslužitelja putem web sučelja.
  • streampassword_1 – Zaporka koju udaljeni player medija zahtijeva za povezivanje i strujanje medijskog sadržaja na poslužitelj.

Alternativno, ako želite kreirati konfiguracijsku datoteku za SHOUTcast poslužitelj, možete otići u direktorij download i pokrenuti builder.sh ili setup.sh skripte.

cd ../download/
bash setup.sh

koji će vam omogućiti da konfigurirate poslužitelj s web sučelja kojem se može pristupiti sa sljedeće adrese.

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

Nakon što je konfiguracija kreirana, možete je kopirati u instalacijski direktorij poslužitelja.

7. Za pokretanje poslužitelja izvršite sc_serv datoteku iz vašeg trenutnog radnog direktorija, koji mora biti direktorij poslužitelj, stavite je u pozadinu s & bash operator i usmjerite svoj preglednik na http://localhost-or-IP:8000 URL.

Također, upotrijebite naredbu netstat da vidite radi li poslužitelj i na kojim brojevima portova sluša.

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

Korak 3: Otvorite veze vatrozida

8. Sada je SHOUTcast poslužitelj pokrenut i radi, ali mu se još ne može pristupiti iz vanjskog svijeta zbog ograničenja CentOS vatrozida. Za otvaranje poslužitelja za vanjske veze prijavite se s root računom i dodajte pravilo koje će otvoriti port 8000 TCP.

Nakon što je pravilo dodano, ponovno učitajte Vatrozid kako biste primijenili promjene i odjavili se sa svog root računa.

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

9. Zatim otvorite preglednik s udaljenog računala i upišite IP adresu vašeg poslužitelja na portu 8000 u URL datoteku – http://192.168.1.80:8000 – i SHOUTcast web sučelje bi trebalo izgledati kao na slici ispod, bez dostupnih prijenosa uživo.

Korak 4: Upravljanje SHOUTcast poslužiteljem i stvaranje Daemon skripte

10. Naredba koja se koristi za upravljanje SHOUTcast radijskim poslužiteljem je sama binarna datoteka, koja se mora pokrenuti s lokacije instalacijske staze kako bi bila
moći čitati konfiguracijsku datoteku. Za pokretanje poslužitelja kao demona pomoću opcije naredbe daemon.

Poslužitelju također možete dati upute da čita svoje konfiguracije s druge lokacije tako što ćete naznačiti gdje se nalazi konfiguracijska datoteka, ali imajte na umu da korištenje ove opcije zahtijeva stvaranje zapisa i kontrolnih direktorija, što u praksi može biti zbunjujuće i može dovesti do nemogućnosti poslužitelja početi.

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. Ako trebate pojednostavljenu naredbu za pokretanje ili zaustavljanje SHOUTcast radijskog poslužitelja, ponovno se prijavite kao root i izradite sljedeću izvršnu skriptu na /usr/local/bin/ putanji kao u donjem primjeru.

su -
vi /usr/local/bin/radio

Sada dodajte sljedeći izvadak u radio datoteku.

#!/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. Nakon što je datoteka stvorena, učinite je izvršnom, izađite iz root računa i nova naredba shout bit će dostupna za upravljanje vašim SHOUTcast radio poslužiteljem.

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

13. Za upravljanje poslužiteljem od sada, koristite naredbu radio sa sljedećim prekidačima.

radio start_daemon		## Starts SHOUTcast server as a daemon

radio start                   ## Starts SHOUTcast server in foreground

radio stop                    ## Stops SHOUTcast server

14. Ako želite automatski pokrenuti poslužitelj nakon ponovnog pokretanja, ali samo nakon prijave korisnika (u ovom slučaju poslužitelj je instaliran na lokalnom korisniku pod imenom radio), izdajte sljedeće naredbu s početne staze radijskog računa, zatim se odjavite i ponovno prijavite kako biste provjerili funkcionalnost, kao što je prikazano na snimci zaslona u nastavku.

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

To je to! Sada je SHOUTcast poslužitelj spreman za primanje zvuka ili popisa za reprodukciju s udaljenih medija playera kao što je Winamp iz Windows i Mixxx iz Linuxa i emitirajte sav primljeni audio sadržaj preko Interneta.