Kamailio adalah server SIP open-source yang ditulis dalam bahasa C yang berjalan pada sistem operasi berbasis Linux/Unix. Ini dapat menangani ribuan pengaturan panggilan per detik dan melayani hingga 300.000 pelanggan aktif di sistem hanya dengan RAM 4GB. Kamailio digunakan oleh ISP besar untuk menyediakan layanan telepon umum, dan dirancang untuk digunakan untuk layanan komunikasi real-time yang besar. Anda dapat menggunakan Kamailio sebagai registrar server, location server, proxy server, redirect server, dan SIP application server.
Dalam tutorial ini, kita akan mempelajari cara menginstal dan mengkonfigurasi server SIP Kamailio di Ubuntu 20.04.
Prasyarat
- VPS Ubuntu 20.04 baru di Platform Cloud Atlantic.Net
- Kata sandi root yang dikonfigurasi di server Anda
Langkah 1 – Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 20.04 sebagai sistem operasi dengan setidaknya 2GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 20.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -y
Langkah 2 – Instal Dependensi yang Diperlukan
Pertama, Anda perlu menginstal beberapa paket yang diperlukan di server Anda. Anda dapat menginstal semuanya dengan perintah berikut:
apt-get install gnupg2 mariadb-server curl unzip -y
Setelah semua paket terinstal, Anda dapat melanjutkan ke langkah berikutnya.
Langkah 3 – Instal Server Kamailio
Pertama, impor kunci GPG Kamailio dengan perintah berikut:
wget -O- http://deb.kamailio.org/kamailiodebkey.gpg | apt-key add -
Selanjutnya, tambahkan repositori Kamailio dengan perintah berikut:
nano /etc/apt/sources.list.d/kamailio.list
Tambahkan baris berikut:
deb http://cz.archive.ubuntu.com/ubuntu bionic main deb http://deb.kamailio.org/kamailio53 bionic main deb-src http://deb.kamailio.org/kamailio53 bionic main
Simpan dan tutup file setelah Anda selesai.
Selanjutnya, perbarui repositori dan instal server Kamailio dengan paket lain menggunakan perintah berikut:
apt-get update -y apt-get install kamailio kamailio-mysql-modules kamailio-websocket-modules kamailio-tls- modules -y
Setelah semua paket terinstal, verifikasi versi Kamailio yang terinstal dengan perintah berikut:
kamailio -V
Anda akan mendapatkan output berikut:
version: kamailio 5.3.5 (x86_64/linux)
Langkah 4 – Konfigurasi Kamailio
Selanjutnya, Anda perlu mengedit file /etc/kamailio/kamctlrc dan menentukan mesin database, host database, dan domain SIP.
nano /etc/kamailio/kamctlrc
Ubah baris berikut:
## your SIP domain SIP_DOMAIN=your-server-ip DBENGINE=MYSQL ## database host DBHOST=localhost
Simpan dan tutup file.
Selanjutnya, buat database, pengguna, dan tabel yang dibutuhkan untuk Kamailio menggunakan perintah berikut:
kamdbctl create
Anda akan diminta untuk memasukkan kata sandi root MySQL seperti yang ditunjukkan di bawah ini:
MySQL password for root:
Biarkan kosong dan cukup tekan Enter untuk melanjutkan. Anda akan diminta untuk memberikan set karakter seperti yang ditunjukkan di bawah ini:
-e Enter character set name: utf32
Ketik utf32 dan tekan Enter untuk melanjutkan. Anda akan melihat output berikut:
-e \E[37;33mINFO: creating database kamailio ... -e \E[37;33mINFO: granting privileges to database kamailio ... -e \E[37;33mINFO: creating standard tables into kamailio ... -e \E[37;33mINFO: Core Kamailio tables succesfully created. Install presence related tables? (y/n): y -e \E[37;33mINFO: creating presence tables into kamailio ... -e \E[37;33mINFO: Presence tables succesfully created. Install tables for imc cpl siptrace domainpolicy carrierroute drouting userblacklist htable purple uac pipelimit mtree sca mohqueue rtpproxy rtpengine secfilter? (y/n): y -e \E[37;33mINFO: creating extra tables into kamailio ... -e \E[37;33mINFO: Extra tables succesfully created. Install tables for uid_auth_db uid_avp_db uid_domain uid_gflags uid_uri_db? (y/n): y -e \E[37;33mINFO: creating uid tables into kamailio ... -e \E[37;33mINFO: UID tables succesfully created.
Selanjutnya, edit file konfigurasi utama Kamailio dan aktifkan beberapa fitur:
nano /etc/kamailio/kamailio.cfg
Tambahkan baris berikut di bawah #!KAMAILIO .
#!define WITH_MYSQL #!define WITH_AUTH #!define WITH_USRLOCDB #!define WITH_ACCDB
Simpan dan tutup file, lalu mulai ulang layanan Kamailio untuk menerapkan perubahan:
systemctl restart kamailio
Anda juga dapat memverifikasi layanan Kamailio dengan perintah berikut:
systemctl status kamailio
Anda akan mendapatkan output berikut:
kamailio.service - Kamailio (OpenSER) - the Open Source SIP Server Loaded: loaded (/lib/systemd/system/kamailio.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2020-09-01 16:05:05 UTC; 6s ago Process: 19835 ExecStart=/usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f $CFGFILE -m $SHM_MEMORY -M $PKG_MEMORY (code=exited, status=0> Main PID: 19847 (kamailio) Tasks: 32 (limit: 2353) Memory: 24.6M CGroup: /system.slice/kamailio.service ├─19847 /usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg -m 64 -M 8 ├─19849 /usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg -m 64 -M 8 ├─19850 /usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg -m 64 -M 8 ├─19851 /usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg -m 64 -M 8 ├─19852 /usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg -m 64 -M 8
Langkah 5 – Instal Dasbor Siremis
Siremis adalah antarmuka berbasis web yang digunakan untuk mengelola server SIP Kamailio. Anda dapat melihat pembukuan, telepon terdaftar, menyediakan profil pengguna, aturan perutean, dan berkomunikasi dengan server SIP melalui xmlrpc menggunakan Siremisis.
Instal Apache dan PHP
Pertama, Anda perlu menginstal Apache, PHP, dan modul PHP lainnya di sistem Anda. Anda dapat menginstalnya dengan perintah berikut:
apt-get install apache2 php libapache2-mod-php php-mysql php-gd php-curl php-xml php-pear make git -y
Setelah semua paket terinstal, instal XML_RPC dengan perintah berikut:
pear install XML_RPC2
Unduh Siremis
Pertama, ubah direktori ke root web Apache dan unduh versi terbaru Siremis dari repositori Git:
cd /var/www/ git clone https://github.com/asipto/siremis
Selanjutnya, ubah direktori menjadi Siremis dan buat file konfigurasi virtual host Apache menggunakan perintah berikut:
cd siremis make apache24-conf | tee /etc/apache2/sites-enabled/siremis.conf
Selanjutnya, buat file konfigurasi .htaccess dan Siremis dengan menjalankan perintah berikut:
make prepare24
Anda akan melihat output berikut:
updating htaccess file for apache 2.4 ... deploying htaccess files for apache 2.4 in subdirs ... updating app.inc file... creating folders... done
Selanjutnya, atur kepemilikan yang tepat dengan perintah berikut:
make chown
Anda akan mendapatkan output berikut:
changing onwner to www-data:www-data ... chown -R www-data:www-data .
Selanjutnya, masuk ke shell MariaDB dengan perintah berikut:
mysql
Setelah masuk, buat pengguna siremis baru dan berikan semua hak istimewa ke database siremis:
GRANT ALL PRIVILEGES ON siremis.* TO [email protected] IDENTIFIED BY 'password';
Selanjutnya, flush hak istimewa dan keluar dari MariaDB dengan perintah berikut:
flush privileges; exit;
Terakhir, aktifkan modul Apache rewrite dan restart layanan Apache dengan perintah berikut:
a2enmod rewrite systemctl restart apache2
Langkah 6 – Akses Dasbor Siremis
Sekarang, buka browser web Anda dan akses dasbor Siremis menggunakan URL http://your-server-ip/siremis. Anda akan diarahkan ke wizard penginstalan Siremis:
Klik Penyiapan Sekarang ! tombol. Anda akan melihat halaman berikut:
Pastikan semua dependensi sudah terpasang, lalu klik tombol Berikutnya tombol. Anda akan melihat halaman berikut:
Berikan kata sandi pengguna DB siremis di “Kata Sandi DB Siremis ” dan klik Berikutnya tombol. Anda akan melihat halaman berikut:
Periksa semua direktori untuk akses tulis dan klik Berikutnya tombol. Anda akan melihat halaman berikut:
Klik Luncurkan Siremis . Anda akan diarahkan ke halaman login Siremis:
Berikan username dan password default admin sebagai admin/admin dan klik tombol Login tombol. Anda akan melihat dasbor Siremis di halaman berikut:
Kesimpulan
Selamat! Anda telah berhasil menginstal server Kamailio SIP dan dasbor Siremis di Ubuntu 20.04. Anda sekarang dapat dengan mudah membuat server SIP dan mengelolanya menggunakan dasbor Siremis. Coba Kamailio di VPS Hosting dari Atlantic.Net menggunakan tutorial di atas!