Cara Install SHOUTCast Radio Server (Streaming Media Online) di Linux


SHOUTcast adalah perangkat lunak berpemilik yang digunakan untuk melakukan streaming media melalui Internet, terutama digunakan dalam streaming langsung musik oleh stasiun radio di Internet, dan dikembangkan oleh Nullsoft dengan versi untuk semua platform utama, termasuk Linux.

Tutorial ini akan memandu Anda tentang cara menginstal SHOUTcast Distributed Network Audio Server di CentOS 8, yang dengannya Anda dapat menggunakan pemutar media, seperti Winamp atau Mixxx untuk terhubung ke layanan streaming dan menyiarkan daftar putar audio Anda ke pendengar Internet.

Meskipun tutorial ini hanya mencakup instalasi server SHOUTcast pada mesin CentOS 8/7, prosedur yang sama dapat diterapkan pada distribusi Linux lainnya seperti RHEL , Fedora, Ubuntu, Debian, Linux Mint, dll. dengan catatan bahwa Anda harus menyesuaikan perintah firewall dengan sesuai dengan distribusi Linux Anda.

Langkah 1: Unduh dan Instal Server SHOUTcast

1. Sebelum melanjutkan instalasi server SHOUTcast, buatlah pengguna lokal yang akan digunakan untuk menjalankan server karena menjalankan server dari akun root dapat menimbulkan masalah keamanan yang serius pada sistem Anda.

Jadi, masuk ke sistem Anda dengan akun root, buat pengguna baru, bernama radio, setelah Anda selesai keluar dari akun root, dan, kemudian, masuk dengan pengguna baru Anda. Berikut adalah perintah wajib berikut yang perlu dijalankan di terminal.

adduser radio
passwd radio
su - radio
pwd 

2. Setelah masuk ke sistem Anda dengan akun radio, buat dua direktori bernama download dan server, lalu alihkan ke folder download.

mkdir download
mkdir server
cd download

3. Selanjutnya, ambil versi terakhir arsip server SHOUTcast untuk Linux, bergantung pada arsitektur sistem Anda, dengan mengunjungi laman Unduhan Nullsot resmi.

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

Alternatifnya, gunakan utilitas wget berikut untuk mengunduh arsip dari baris perintah.

--------------- 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. Setelah pengunduhan selesai, ekstrak file arsip, daftarkan direktori untuk menemukan file biner sc_serv yang dapat dieksekusi, dan salin ke direktori instalasi, yang terletak di server, lalu pindah ke jalur instalasi SHOUTcast, dengan mengeluarkan perintah berikut.

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

5. Sekarang Anda berada di jalur instalasi server, buat dua direktori bernama control dan logs dan Anda selesai dengan instalasi sebenarnya proses. Cantumkan konten direktori Anda untuk memverifikasi apakah semuanya sudah siap menggunakan perintah ls.

mkdir control
mkdir logs
ls

Langkah 2: Buat File Konfigurasi SHOUTcast

6. Untuk menjalankan dan mengoperasikan server, Anda perlu membuat file konfigurasi untuk SHOUTcast. Buka editor teks favorit Anda dan buat file baru, beri nama sc_serv.conf.

Pastikan file ini dibuat di jalur yang sama dengan pembuatan file biner sc_serv e Anda. Menggunakan perintah pwd akan menunjukkan kepada Anda jalur absolut ini – /home/radio/server).

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

Tambahkan pernyataan berikut ke file sc_serv.conf (contoh konfigurasi).

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

Beberapa pengaturan penting yang harus Anda ketahui tentang file ini adalah pernyataan kata sandi, yang harus Anda ubah sesuai dengan itu:

  • kata sandi admin – Kata sandi admin diperlukan untuk melakukan administrasi jarak jauh melalui antarmuka web ke server.
  • streampassword_1 – Kata sandi diperlukan oleh pemutar media jarak jauh untuk menghubungkan dan mengalirkan konten media ke server.

Alternatifnya, jika Anda ingin membuat file konfigurasi untuk server SHOUTcast Anda dapat pergi ke direktori download dan menjalankan builder.sh atau setup.sh skrip.

cd ../download/
bash setup.sh

yang memungkinkan Anda mengonfigurasi server dari antarmuka web yang dapat diakses dari alamat berikut.

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

Setelah konfigurasi dibuat, Anda dapat menyalinnya ke direktori instalasi server.

7. Untuk memulai server, jalankan sc_serv file dari direktori kerja Anda saat ini, yang harus berupa direktori server, letakkan di latar belakang dengan & operator bash, dan arahkan browser Anda ke URL http://localhost-or-IP:8000.

Juga, gunakan perintah netstat untuk melihat apakah server sedang berjalan dan pada nomor port apa yang didengarkannya.

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

Langkah 3: Buka Koneksi Firewall

8. Sekarang server SHOUTcast sudah aktif dan berjalan tetapi belum dapat diakses dari dunia luar karena pembatasan CentOS Firewall. Untuk membuka server ke koneksi eksternal, login dengan akun root dan tambahkan aturan yang akan membuka port 8000 TCP.

Setelah aturan ditambahkan, muat ulang Firewall untuk menerapkan perubahan dan keluar dari akun root Anda.

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

9. Kemudian buka browser dari mesin jarak jauh dan ketik Alamat IP server Anda pada port 8000 pada URL yang diajukan – http://192.168.1.80:8000 – dan SHOUTcast antarmuka web akan muncul seperti pada tangkapan layar di bawah, tanpa streaming langsung tersedia.

Langkah 4: Kelola Server SHOUTcast dan Buat skrip Daemon

10. Perintah yang digunakan untuk mengelola server radio SHOUTcast adalah file biner itu sendiri, yang harus dijalankan dari lokasi jalur instalasinya agar
dapat membaca file konfigurasi. Untuk menjalankan server sebagai daemon menggunakan opsi perintah daemon.

Anda juga dapat menginstruksikan server untuk membaca konfigurasinya dari lokasi berbeda dengan menunjukkan di mana file konfigurasi berada, namun perlu diingat bahwa menggunakan opsi ini memerlukan pembuatan log dan direktori kontrol, yang dalam praktiknya dapat membingungkan dan dapat menyebabkan ketidakmampuan server untuk memulai.

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. Jika Anda memerlukan perintah yang disederhanakan untuk memulai atau menghentikan server radio SHOUTcast, masuklah sebagai root lagi dan buat skrip yang dapat dijalankan berikut di jalur /usr/local/bin/ seperti pada contoh di bawah ini.

su -
vi /usr/local/bin/radio

Sekarang tambahkan kutipan berikut ke file 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. Setelah file dibuat, buat file tersebut dapat dieksekusi, keluar dari akun root, dan perintah baru akan tersedia untuk manajemen server radio SHOUTcast Anda.

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

13. Untuk mengelola server mulai sekarang, gunakan perintah radio dengan saklar berikut.

radio start_daemon		## Starts SHOUTcast server as a daemon

radio start                   ## Starts SHOUTcast server in foreground

radio stop                    ## Stops SHOUTcast server

14. Jika Anda ingin memulai server secara otomatis setelah reboot, tetapi hanya saat pengguna login (dalam hal ini server diinstal pada pengguna lokal bernama radio) lakukan hal berikut perintah dari jalur beranda akun radio, lalu logout dan login lagi untuk memverifikasi fungsionalitas, seperti yang ditunjukkan pada gambar di bawah.

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

Itu dia! Sekarang, server SHOUTcast siap menerima suara atau playlist dari pemutar media jarak jauh seperti Winamp dari Windows dan Mixxx dari Linux dan menyiarkan semua konten audio yang diterima melalui Internet.