Cómo instalar SHOUTCast Radio Server (transmisión de medios en línea) en Linux


SHOUTcast es un software propietario que se utiliza para transmitir medios a través de Internet, especialmente utilizado en la transmisión de música en vivo por las estaciones de radio en Internet, y está desarrollado por Nullsoft con versiones para todas las plataformas principales, incluido Linux.

Este tutorial lo guiará sobre cómo puede instalar el Servidor de audio de red distribuida SHOUTcast en CentOS 8, con la ayuda del cual puede usar reproductores multimedia, como Winamp o Mixxx para conectarse a los servicios de transmisión y transmisión. sus listas de reproducción de audio para los oyentes de Internet.

Aunque este tutorial solo cubre la instalación del servidor SHOUTcast en una máquina CentOS 8/7, el mismo procedimiento se puede aplicar a otras distribuciones de Linux como RHEL, Fedora, Ubuntu, Debian, Linux Mint, etc. Observe que debe adaptar los comandos del firewall para que se adapten a su distribución de Linux.

Paso 1: Descargue e instale SHOUTcast Server

1. Antes de continuar con la instalación del servidor SHOUTcast, cree un usuario local desde el cual ejecutará el servidor porque ejecutar el servidor desde la cuenta raíz puede imponer serios problemas de seguridad en su sistema.

Entonces, inicie sesión en su sistema con la cuenta de root, cree un nuevo usuario, llamado radio , después de que haya terminado de cerrar la sesión de la cuenta de root y, luego, inicie sesión con su usuario recién creado. Estos son los siguientes comandos obligatorios que deben ejecutarse en el terminal.

# adduser radio
# passwd radio
# su - radio
$ pwd 

2. Una vez que haya iniciado sesión en su sistema con la cuenta de radio, cree dos directorios llamados descarga y servidor , luego cambie a la carpeta de descarga.

$ mkdir download
$ mkdir server
# cd download

3. A continuación, obtenga la última versión del archivo del servidor SHOUTcast para Linux, según la arquitectura de su sistema, visitando la página oficial de descargas de Nullsot.

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

Alternativamente, use la siguiente utilidad wget para descargar el archivo desde la línea de comando.

--------------- 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. Una vez completada la descarga, extraiga el archivo comprimido, enumere el directorio para ubicar el archivo binario ejecutable sc_serv y cópielo en el directorio de instalación, ubicado en la carpeta servidor . , luego muévase a la ruta de instalación de SHOUTcast , emitiendo los siguientes comandos.

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

5. Ahora que se encuentra en la ruta de instalación del servidor, cree dos directorios llamados control y registros y habrá terminado con el proceso de instalación real. Enumere el contenido de su directorio para verificar si todo está en su lugar usando el comando ls.

$ mkdir control
$ mkdir logs
$ ls

Paso 2: crear un archivo de configuración SHOUTcast

6. Para ejecutar y operar el servidor, necesita crear un archivo de configuración para SHOUTcast. Abra su editor de texto favorito y cree un nuevo archivo, llamado sc_serv.conf .

Asegúrese de que este archivo se cree en la misma ruta en la que se crean los archivos binarios ejecutables sc_serv e . El uso del comando pwd debería mostrarle esta ruta absoluta: /home/radio/server ).

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

Agregue las siguientes declaraciones al archivo sc_serv.conf (configuración de ejemplo).

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

Algunas configuraciones importantes que debe tener en cuenta de este archivo son las declaraciones de contraseña , que debe cambiar en consecuencia:

  • contraseña de administrador : contraseña de administrador necesaria para realizar la administración remota a través de la interfaz web del servidor.
  • streampassword_1 : contraseña requerida por el reproductor multimedia remoto para conectarse y transmitir contenido multimedia al servidor.

Alternativamente, si desea crear un archivo de configuración para el servidor SHOUTcast, puede ir al directorio descargar y ejecutar builder.sh o setup.sh guiones.

$ cd ../download/
$ bash setup.sh

que te permitirá configurar el servidor desde una interfaz web a la que se puede acceder desde la siguiente dirección.

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

Una vez creada la configuración, puede copiarla al directorio de instalación del servidor.

7. Para iniciar el servidor, ejecute sc_serv el archivo de su directorio de trabajo actual, que debe ser el directorio del servidor , póngalo en segundo plano con & bash y dirija su navegador a la URL http:// localhost-or-IP: 8000 .

Además, use el comando netstat para ver si el servidor se está ejecutando y en qué números de puerto escucha.

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

Paso 3: Abra las conexiones del firewall

8. Ahora el servidor SHOUTcast está en funcionamiento, pero aún no se puede acceder a él desde el mundo exterior debido a las restricciones de CentOS Firewall. Para abrir el servidor a conexiones externas, inicie sesión con la cuenta de root y agregue la regla que abrirá el puerto 8000 TCP.

Una vez agregada la regla, vuelva a cargar el Firewall para aplicar los cambios y cerrar la sesión de su cuenta raíz.

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

9. Luego abra un navegador desde una máquina remota y escriba la dirección IP de su servidor en el puerto 8000 en la URL archivada - http://192.168.1.80:8000 - y la interfaz web SHOUTcast debería aparecer como en el captura de pantalla a continuación, sin transmisiones en vivo disponibles.

Paso 4: administrar el servidor SHOUTcast y crear el script Daemon

10. El comando utilizado para administrar el servidor de radio SHOUTcast es el archivo binario en sí, que debe ejecutarse desde la ubicación de la ruta de instalación para ser
capaz de leer el archivo de configuración. Para ejecutar el servidor como un demonio usando la opción de comando demonio .

También puede indicarle al servidor que lea sus configuraciones desde una ubicación diferente indicando dónde reside el archivo de configuración, pero tenga en cuenta que el uso de esta opción requiere la creación de registros y directorios de control, lo que puede resultar confuso en la práctica y puede conducir a la incapacidad del servidor. para comenzar.

$ 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 necesita un comando simplificado para iniciar o detener el servidor de radio SHOUTcast, inicie sesión como root nuevamente y cree el siguiente script ejecutable en la ruta /usr/local/bin/ como en el ejemplo siguiente.

$ su -
# vi /usr/local/bin/radio

Ahora agregue el siguiente extracto al archivo radio .

#!/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. Una vez creado el archivo, hágalo ejecutable, salga de la cuenta raíz y un nuevo comando estará disponible para la administración de su servidor de radio SHOUTcast.

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

13. Para administrar el servidor a partir de ahora, use el comando radio con los siguientes interruptores.

$ radio start_daemon		## Starts SHOUTcast server as a daemon

$ radio start                   ## Starts SHOUTcast server in foreground

$ radio stop                    ## Stops SHOUTcast server

14. Si desea iniciar automáticamente el servidor después de reiniciar, pero solo en el inicio de sesión del usuario (en este caso, el servidor se instaló en el usuario local llamado radio ), emita el siguiente comando desde la ruta de inicio de la cuenta de radio, luego cierre la sesión y vuelva a iniciar sesión para verificar la funcionalidad, como se muestra en la captura de pantalla a continuación.

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

¡Eso es! Ahora, el servidor SHOUTcast está listo para recibir sonido o listas de reproducción de reproductores multimedia remotos como Winamp de Windows y Mixxx de Linux y transmita todo el contenido de audio recibido a través de Internet.