Linux에 SHOUTCast 라디오 서버(온라인 미디어 스트리밍)를 설치하는 방법
SHOUTcast는 인터넷을 통해 미디어를 스트리밍하는 데 사용되는 독점 소프트웨어로, 특히 인터넷 라디오 방송국의 음악 라이브 스트리밍에 사용되며 Linux를 포함한 모든 주요 플랫폼용 버전으로 Nullsoft에서 개발되었습니다.
이 튜토리얼에서는 Winamp와 같은 미디어 플레이어를 사용하여 CentOS 8에 SHOUTcast 분산 네트워크 오디오 서버를 설치하는 방법을 안내합니다. 또는 Mixxx를 사용하여 스트리밍 서비스에 연결하고 오디오 재생 목록을 인터넷 청취자에게 방송합니다.
이 튜토리얼에서는 CentOS 8/7 시스템의 SHOUTcast 서버 설치에 대해서만 다루지만 RHEL과 같은 다른 Linux 배포판에도 동일한 절차를 적용할 수 있습니다. , Fedora, Ubuntu, Debian, Linux Mint 등에는 방화벽 명령을 적용해야 한다는 설명이 있습니다. Linux 배포판에 적합합니다.
1단계: SHOUTcast 서버 다운로드 및 설치
1. SHOUTcast 서버 설치를 진행하기 전에 루트 계정에서 서버를 실행하면 심각한 보안 문제가 발생할 수 있으므로 서버를 실행할 로컬 사용자를 생성하세요. 귀하의 시스템에서.
따라서 루트 계정으로 시스템에 로그인하고, 루트 계정에서 로그아웃한 후 radio라는 새 사용자를 생성한 다음 새로 생성된 사용자로 로그인하세요. 터미널에서 실행해야 하는 필수 명령은 다음과 같습니다.
adduser radio
passwd radio
su - radio
pwd
2. 라디오 계정으로 시스템에 로그인한 후 다운로드와 서버라는 두 개의 디렉터리를 만든 다음 다운로드 폴더로 전환합니다.
mkdir download
mkdir server
cd download
3. 다음으로 공식 Nullsot 다운로드 페이지를 방문하여 시스템 아키텍처에 따라 Linux용 SHOUTcast 서버 아카이브의 마지막 버전을 다운로드하세요.
- 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_serve 실행 바이너리 파일이 생성된 경로와 동일한 경로에 생성되었는지 확인하세요. 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
실행하고 <를 사용하여 백그라운드에 둡니다.& bash 연산자를 사용하고 브라우저를 http://localhost-or-IP:8000 URL로 지정하세요.
또한 netstat 명령을 사용하여 서버가 실행 중인지, 서버가 수신하는 포트 번호를 확인하십시오.
chmod +x sc_serv
./sc_serv &
netstat -tulpn | grep sc_serv
3단계: 방화벽 연결 열기
8. 이제 SHOUTcast 서버가 실행되고 있지만 CentOS 방화벽 제한으로 인해 아직 외부 세계에서 액세스할 수 없습니다. 외부 연결을 위해 서버를 열려면 루트 계정으로 로그인하고 8000 TCP 포트를 여는 규칙을 추가하세요.
규칙을 추가한 후 방화벽을 다시 로드하여 변경 사항을 적용하고 루트 계정에서 로그아웃하세요.
su -
firewall-cmd --add-port=8000/tcp --permanent
firewall-cmd --reload
exit
9. 그런 다음 원격 시스템에서 브라우저를 열고 URL 필드(http://192.168.1.80:8000)의 포트 8000에 서버 IP 주소를 입력하고 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 라디오 서버를 시작하거나 중지하는 간단한 명령이 필요한 경우 루트로 다시 로그인하고 /usr/local/bin/ 경로에 다음 실행 가능 스크립트를 생성하십시오. 아래 예와 같이.
su -
vi /usr/local/bin/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. 파일이 생성된 후 실행 가능하게 만들고 루트 계정을 종료하면 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 서버는 Windows 및 MixxxWinamp와 같은 원격 미디어 플레이어로부터 사운드나 재생 목록을 수신할 준비가 되었습니다. > Linux에서 수신한 모든 오디오 콘텐츠를 인터넷을 통해 방송합니다.