GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar el servidor SIP de Kamailio en Ubuntu 20.04

Kamailio es un servidor SIP de código abierto escrito en C que se ejecuta en un sistema operativo basado en Linux/Unix. Puede manejar miles de configuraciones de llamadas por segundo y atender hasta 300 000 suscriptores activos en el sistema con solo 4 GB de RAM. Kamailio es utilizado por grandes ISP para brindar servicio telefónico público y fue diseñado para ser utilizado para grandes servicios de comunicación en tiempo real. Puede utilizar Kamailio como servidor de registro, servidor de ubicación, servidor proxy, servidor de redirección y servidor de aplicaciones SIP.

En este tutorial, aprenderemos cómo instalar y configurar el servidor SIP Kamailio en Ubuntu 20.04.

Requisitos

  • Un Ubuntu 20.04 VPS nuevo en la plataforma en la nube Atlantic.Net
  • Una contraseña de root configurada en su servidor

Paso 1:crear un servidor en la nube de Atlantic.Net

Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 20.04 como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.

Una vez que haya iniciado sesión en su servidor Ubuntu 20.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.

apt-get update -y

Paso 2:instalar las dependencias requeridas

Primero, deberá instalar algunos paquetes necesarios en su servidor. Puede instalarlos todos con el siguiente comando:

apt-get install gnupg2 mariadb-server curl unzip -y

Una vez que todos los paquetes estén instalados, puede continuar con el siguiente paso.

Paso 3:instalar el servidor Kamailio

Primero, importa la clave GPG de Kamailio con el siguiente comando:

wget -O- http://deb.kamailio.org/kamailiodebkey.gpg | apt-key add -

A continuación, agregue el repositorio de Kamailio con el siguiente comando:

nano /etc/apt/sources.list.d/kamailio.list

Agregue las siguientes líneas:

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

Guarde y cierre el archivo cuando haya terminado.

Luego, actualice el repositorio e instale el servidor Kamailio con otros paquetes usando el siguiente comando:

apt-get update -y
apt-get install kamailio kamailio-mysql-modules kamailio-websocket-modules kamailio-tls-
modules -y

Una vez que todos los paquetes estén instalados, verifique la versión instalada de Kamailio con el siguiente comando:

kamailio -V

Deberías obtener el siguiente resultado:

version: kamailio 5.3.5 (x86_64/linux)

Paso 4:configurar Kamailio

A continuación, deberá editar el archivo /etc/kamailio/kamctlrc y definir el motor de la base de datos, el host de la base de datos y el dominio SIP.

nano /etc/kamailio/kamctlrc

Cambie las siguientes líneas:

## your SIP domain
SIP_DOMAIN=your-server-ip
DBENGINE=MYSQL
## database host
DBHOST=localhost

Guarde y cierre el archivo.

A continuación, cree una base de datos, un usuario y las tablas necesarias para Kamailio con el siguiente comando:

kamdbctl create

Se le pedirá que ingrese una contraseña raíz de MySQL como se muestra a continuación:

MySQL password for root:

Déjalo en blanco y simplemente presiona Entrar continuar. Se le pedirá que proporcione un conjunto de caracteres como se muestra a continuación:

-e Enter character set name: utf32

Escriba utf32 y presione Enter para continuar. Debería ver el siguiente resultado:

-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.

A continuación, edite el archivo de configuración principal de Kamailio y habilite algunas funciones:

nano /etc/kamailio/kamailio.cfg

Agregue las siguientes líneas debajo de #!KAMAILIO .

#!define WITH_MYSQL
#!define WITH_AUTH
#!define WITH_USRLOCDB
#!define WITH_ACCDB

Guarde y cierre el archivo, luego reinicie el servicio Kamailio para aplicar los cambios:

systemctl restart kamailio

También puede verificar el servicio de Kamailio con el siguiente comando:

systemctl status kamailio

Deberías obtener el siguiente resultado:

  • 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

Paso 5:instalar el panel de Siremis

Siremis es una interfaz basada en web que se utiliza para administrar un servidor SIP de Kamailio. Puede ver la contabilidad, los teléfonos registrados, aprovisionar perfiles de usuario, reglas de enrutamiento y comunicarse con el servidor SIP a través de xmlrpc usando Siremisis.

Instalar Apache y PHP

Primero, deberá instalar Apache, PHP y otros módulos de PHP en su sistema. Puede instalarlos con el siguiente comando:

apt-get install apache2 php libapache2-mod-php php-mysql php-gd php-curl php-xml php-pear 
make git -y

Una vez que todos los paquetes estén instalados, instale XML_RPC con el siguiente comando:

pear install XML_RPC2

Descargar Siremis

Primero, cambie el directorio a la raíz web de Apache y descargue la última versión de Siremis desde el repositorio de Git:

cd /var/www/
git clone https://github.com/asipto/siremis

A continuación, cambie el directorio a Siremis y genere el archivo de configuración del host virtual de Apache con el siguiente comando:

cd siremis
make apache24-conf | tee /etc/apache2/sites-enabled/siremis.conf

A continuación, cree los archivos de configuración .htaccess y Siremis ejecutando el siguiente comando:

make prepare24

Debería ver el siguiente resultado:

updating htaccess file for apache 2.4 ...
deploying htaccess files for apache 2.4 in subdirs ...
updating app.inc file...
creating folders...
done

A continuación, establezca la propiedad adecuada con el siguiente comando:

make chown

Deberías obtener el siguiente resultado:

changing onwner to www-data:www-data ...
chown -R www-data:www-data .

A continuación, inicie sesión en el shell de MariaDB con el siguiente comando:

mysql

Una vez que haya iniciado sesión, cree un nuevo usuario de siremis y otorgue todos los privilegios a la base de datos de siremis:

GRANT ALL PRIVILEGES ON siremis.* TO [email protected] IDENTIFIED BY 'password';

A continuación, elimine los privilegios y salga de MariaDB con el siguiente comando:

flush privileges;
exit;

Finalmente, habilite el módulo de reescritura de Apache y reinicie el servicio de Apache con el siguiente comando:

a2enmod rewrite
systemctl restart apache2

Paso 6:acceda al panel de Siremis

Ahora, abra su navegador web y acceda al panel de control de Siremis usando la URL http://your-server-ip/siremis. Será redirigido al asistente de instalación de Siremis:

Haga clic en Configuración Ahora ! botón. Debería ver la siguiente página:

Asegúrese de que todas las dependencias estén instaladas, luego haga clic en Siguiente botón. Debería ver la siguiente página:

Proporcione la contraseña de usuario de siremis DB en “Contraseña de Siremis DB ” y haga clic en Siguiente botón. Debería ver la siguiente página:

Verifique todos los directorios para acceso de escritura y haga clic en Siguiente botón. Debería ver la siguiente página:

Haz clic en Lanzar Siremis . Será redirigido a la página de inicio de sesión de Siremis:

Proporcione el nombre de usuario y la contraseña de administrador predeterminados como admin / admin y haga clic en Iniciar sesión botón. Debería ver el panel de control de Siremis en la siguiente página:

Conclusión

¡Felicidades! Ha instalado correctamente un servidor SIP de Kamailio y un panel de Siremis en Ubuntu 20.04. Ahora puede crear fácilmente su servidor SIP y administrarlo utilizando el panel de control de Siremis. ¡Pruebe Kamailio en VPS Hosting de Atlantic.Net usando el tutorial anterior!


Linux
  1. Cómo instalar MySQL en Ubuntu 18.04

  2. Cómo instalar el servidor de Minecraft en Ubuntu 18.04

  3. Cómo instalar la ubicación en un servidor Ubuntu

  4. Cómo instalar MariaDB en Ubuntu 22.04

  5. ¿Cómo instalar Ubuntu Server 15.10 en Hyper-v?

Cómo instalar el servidor Mumble en Ubuntu 15.04

Cómo instalar NGINX en Ubuntu 20.04

Cómo instalar el servidor Ansible en Ubuntu 18.04

Cómo instalar XWiki en Ubuntu 20.04

Cómo instalar ClickHouse en Ubuntu 20.04

¿Cómo instalar FTP en Ubuntu 18.04?