Поиск по сайту:

Как установить радиосервер SHOUTCast (потоковое онлайн-медиа) в Linux


SHOUTcast — это проприетарное программное обеспечение, используемое для потоковой передачи мультимедиа через Интернет, особенно используемое при потоковой передаче музыки радиостанциями в Интернете. Оно разработано Nullsoft и имеет версии для всех основных платформ, включая Linux.

Из этого руководства вы узнаете, как установить Распределенный сетевой аудиосервер SHOUTcast в CentOS 8, с помощью которого вы сможете использовать медиаплееры, такие как Winamp. или Mixxx, чтобы подключиться к службам потоковой передачи и транслировать свои аудиоплейлисты интернет-слушателям.

Хотя в этом руководстве рассматривается только установка сервера SHOUTcast на компьютере с CentOS 8/7, ту же процедуру можно применить и к другим дистрибутивам Linux, таким как RHEL. , Fedora, Ubuntu, Debian, Linux Mint и т. д. с пометкой, что вам необходимо адаптировать команды брандмауэра для подходит для вашего дистрибутива Linux.

Шаг 1. Загрузите и установите сервер SHOUTcast

1. Прежде чем приступить к установке сервера SHOUTcast, создайте локального пользователя, от которого вы будете запускать сервер, поскольку запуск сервера из-под учетной записи root может создать серьезные проблемы с безопасностью. в вашей системе.

Итак, войдите в свою систему с учетной записью root, создайте нового пользователя с именем radio, после завершения выйдите из учетной записи root, а затем войдите в систему с вновь созданным пользователем. Вот следующие обязательные команды, которые необходимо выполнить на терминале.

adduser radio
passwd radio
su - radio
pwd 

2. После входа в систему с учетной записью радио создайте два каталога с именами download и server, а затем переключитесь на папку загрузки.

mkdir download
mkdir server
cd download

3. Затем скачайте последнюю версию архива сервера SHOUTcast для Linux, в зависимости от архитектуры вашей системы, посетив официальную страницу загрузки Nullsot.

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

Альтернативно используйте следующую утилиту wget для загрузки архива из командной строки.

--------------- 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. После завершения загрузки извлеките архивный файл, укажите каталог, в котором находится исполняемый двоичный файл sc_serv, и скопируйте его в каталог установки, расположенный в server, затем перейдите к пути установки SHOUTcast, выполнив следующие команды.

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

5. Теперь, когда вы находитесь в пути установки сервера, создайте два каталога с именами control и logs, и фактическая установка завершена. процесс. Перечислите содержимое вашего каталога, чтобы проверить, все ли на месте, с помощью команды ls.

mkdir control
mkdir logs
ls

Шаг 2. Создайте файл конфигурации SHOUTcast

6. Для запуска и работы сервера вам необходимо создать файл конфигурации для SHOUTcast. Откройте свой любимый текстовый редактор и создайте новый файл с именем sc_serv.conf.

Убедитесь, что этот файл создается по тому же пути, что и ваши исполняемые двоичные файлы sc_serv e. Использование команды pwd должно показать вам этот абсолютный путь — /home/radio/server).

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

Добавьте следующие инструкции в файл sc_serv.conf (пример конфигурации).

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

Некоторые важные настройки этого файла, о которых вам следует знать, — это операторы пароля, которые необходимо соответствующим образом изменить:

  • adminpassword – пароль администратора, необходимый для удаленного администрирования через веб-интерфейс сервера.
  • streampassword_1 – пароль, необходимый удаленному медиаплееру для подключения и потоковой передачи медиаконтента на сервер.

Альтернативно, если вы хотите создать файл конфигурации для сервера SHOUTcast, вы можете перейти в каталог download и запустить builder.sh или setup.sh. сценарии.

cd ../download/
bash setup.sh

который позволит вам настроить сервер через веб-интерфейс, доступ к которому можно получить по следующему адресу.

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

После создания конфигурации вы можете скопировать ее в каталог установки сервера.

7. Чтобы запустить сервер, выполните sc_serv файл из вашего текущего рабочего каталога, который должен быть каталогом server, поместите его в фоновый режим с помощью 7.& bash и направьте браузер на URL-адрес http://localhost-or-IP:8000.

Кроме того, используйте команду netstat, чтобы узнать, работает ли сервер и какие номера портов он прослушивает.

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

Шаг 3. Откройте подключения брандмауэра

8. Теперь сервер SHOUTcast запущен и работает, но доступ к нему из внешнего мира пока недоступен из-за ограничений брандмауэра CentOS. Чтобы открыть сервер для внешних подключений, войдите в систему под учетной записью root и добавьте правило, которое будет открывать порт 8000 TCP.

После добавления правила перезагрузите брандмауэр, чтобы применить изменения, и выйдите из своей учетной записи root.

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

9. Затем откройте браузер на удаленном компьютере и введите IP-адрес вашего сервера на порту 8000 в поле URL – http://192.168.1.80:8000 – и SHOUTcast. веб-интерфейс должен выглядеть, как на скриншоте ниже, без доступных прямых трансляций.

Шаг 4. Управление сервером SHOUTcast и создание сценария демона

10. Команда, используемая для управления радиосервером SHOUTcast, представляет собой сам двоичный файл, который необходимо запустить из пути установки, чтобы
способен прочитать файл конфигурации. Чтобы запустить сервер в качестве демона, используйте параметр команды daemon.

Вы также можете поручить серверу читать свои конфигурации из другого места, указав, где находится файл конфигурации, но имейте в виду, что использование этой опции требует создания журналов и каталогов управления, что на практике может сбить с толку и привести к неработоспособности сервера. начать.

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. Если вам нужна упрощенная команда для запуска или остановки радиосервера SHOUTcast, снова войдите в систему как пользователь root и создайте следующий исполняемый сценарий по пути /usr/local/bin/. как в примере ниже.

su -
vi /usr/local/bin/radio

Теперь добавьте следующий отрывок в файл 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. После создания файла сделайте его исполняемым, выйдите из учетной записи root, и для управления радиосервером SHOUTcast станет доступен новый командный крик.

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

13. Для управления сервером теперь используйте команду radio со следующими переключателями.

radio start_daemon		## Starts SHOUTcast server as a daemon

radio start                   ## Starts SHOUTcast server in foreground

radio stop                    ## Stops SHOUTcast server

14. Если вы хотите автоматически запускать сервер после перезагрузки, но только при входе пользователя в систему (в этом случае сервер был установлен у локального пользователя с именем radio), выполните следующую команду. команду из домашнего пути учетной записи радио, затем выйдите из системы и войдите снова, чтобы проверить функциональность, как показано на снимке экрана ниже.

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

Вот и все! Теперь сервер SHOUTcast готов принимать звук или плейлисты от удаленных медиаплееров, таких как Winamp, из Windows и Mixxx из Linux и транслировать весь полученный аудиоконтент через Интернет.