GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer le serveur Kamailio SIP sur Ubuntu 20.04

Kamailio est un serveur SIP open-source écrit en C qui s'exécute sur un système d'exploitation basé sur Linux/Unix. Il peut gérer des milliers de configurations d'appels par seconde et servir jusqu'à 300 000 abonnés actifs sur le système avec seulement 4 Go de RAM. Kamailio est utilisé par un grand FAI pour fournir un service téléphonique public et a été conçu pour être utilisé pour de grands services de communication en temps réel. Vous pouvez utiliser Kamailio comme serveur d'enregistrement, serveur de localisation, serveur proxy, serveur de redirection et serveur d'application SIP.

Dans ce tutoriel, nous allons apprendre à installer et configurer le serveur SIP Kamailio sur Ubuntu 20.04.

Prérequis

  • Un nouveau VPS Ubuntu 20.04 sur la plate-forme cloud Atlantic.Net
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 20.04 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

apt-get update -y

Étape 2 - Installer les dépendances requises

Tout d'abord, vous devrez installer certains packages requis sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

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

Une fois tous les packages installés, vous pouvez passer à l'étape suivante.

Étape 3 - Installer le serveur Kamailio

Tout d'abord, importez la clé Kamailio GPG avec la commande suivante :

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

Ensuite, ajoutez le dépôt Kamailio avec la commande suivante :

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

Ajoutez les lignes suivantes :

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

Enregistrez et fermez le fichier lorsque vous avez terminé.

Ensuite, mettez à jour le référentiel et installez le serveur Kamailio avec d'autres packages à l'aide de la commande suivante :

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

Une fois tous les packages installés, vérifiez la version installée de Kamailio avec la commande suivante :

kamailio -V

Vous devriez obtenir le résultat suivant :

version: kamailio 5.3.5 (x86_64/linux)

Étape 4 - Configurer Kamailio

Ensuite, vous devrez modifier le fichier /etc/kamailio/kamctlrc et définir le moteur de base de données, l'hôte de la base de données et le domaine SIP.

nano /etc/kamailio/kamctlrc

Modifiez les lignes suivantes :

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

Enregistrez et fermez le fichier.

Créez ensuite une base de données, un utilisateur et les tables nécessaires à Kamailio à l'aide de la commande suivante :

kamdbctl create

Il vous sera demandé d'entrer un mot de passe root MySQL comme indiqué ci-dessous :

MySQL password for root:

Laissez-le vide et appuyez simplement sur Entrée continuer. Il vous sera demandé de fournir un jeu de caractères comme indiqué ci-dessous :

-e Enter character set name: utf32

Tapez utf32 et appuyez sur Entrée pour continuer. Vous devriez voir le résultat suivant :

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

Ensuite, modifiez le fichier de configuration principal de Kamailio et activez certaines fonctionnalités :

nano /etc/kamailio/kamailio.cfg

Ajoutez les lignes suivantes sous #!KAMAILIO .

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

Enregistrez et fermez le fichier, puis redémarrez le service Kamailio pour appliquer les modifications :

systemctl restart kamailio

Vous pouvez également vérifier le service Kamailio avec la commande suivante :

systemctl status kamailio

Vous devriez obtenir le résultat suivant :

  • 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

Étape 5 - Installer le tableau de bord Siremis

Siremis est une interface Web utilisée pour gérer un serveur SIP Kamailio. Vous pouvez afficher la comptabilité, les téléphones enregistrés, configurer les profils utilisateur, les règles de routage et communiquer avec le serveur SIP via xmlrpc à l'aide de Siremisis.

Installer Apache et PHP

Tout d'abord, vous devrez installer Apache, PHP et d'autres modules PHP sur votre système. Vous pouvez les installer avec la commande suivante :

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

Une fois tous les packages installés, installez XML_RPC avec la commande suivante :

pear install XML_RPC2

Télécharger Siremis

Tout d'abord, changez le répertoire en racine web Apache et téléchargez la dernière version de Siremis depuis le dépôt Git :

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

Ensuite, changez le répertoire en Siremis et générez le fichier de configuration de l'hôte virtuel Apache à l'aide de la commande suivante :

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

Créez ensuite les fichiers de configuration .htaccess et Siremis en exécutant la commande suivante :

make prepare24

Vous devriez voir le résultat suivant :

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

Ensuite, définissez la propriété appropriée avec la commande suivante :

make chown

Vous devriez obtenir le résultat suivant :

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

Ensuite, connectez-vous au shell MariaDB avec la commande suivante :

mysql

Une fois connecté, créez un nouvel utilisateur siremis et accordez tous les privilèges à la base de données siremis :

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

Ensuite, videz les privilèges et quittez MariaDB avec la commande suivante :

flush privileges;
exit;

Enfin, activez le module de réécriture Apache et redémarrez le service Apache avec la commande suivante :

a2enmod rewrite
systemctl restart apache2

Étape 6 - Accéder au tableau de bord Siremis

Maintenant, ouvrez votre navigateur web et accédez au tableau de bord Siremis à l'aide de l'URL http://your-server-ip/siremis. Vous allez être redirigé vers l'assistant d'installation de Siremis :

Cliquez sur Configuration Maintenant ! bouton. Vous devriez voir la page suivante :

Assurez-vous que toutes les dépendances sont installées, puis cliquez sur Suivant bouton. Vous devriez voir la page suivante :

Indiquez le mot de passe de l'utilisateur de la base de données siremis dans "Mot de passe de la base de données siremis " et cliquez sur Suivant bouton. Vous devriez voir la page suivante :

Vérifiez tous les répertoires pour l'accès en écriture et cliquez sur Suivant bouton. Vous devriez voir la page suivante :

Cliquez sur Lancer Sirémis . Vous allez être redirigé vers la page de connexion Siremis :

Fournissez le nom d'utilisateur et le mot de passe de l'administrateur par défaut en tant qu'administrateur / administrateur et cliquez sur Connexion bouton. Vous devriez voir le tableau de bord Siremis sur la page suivante :

Conclusion

Toutes nos félicitations! Vous avez installé avec succès un serveur SIP Kamailio et un tableau de bord Siremis sur Ubuntu 20.04. Vous pouvez désormais créer facilement votre serveur SIP et le gérer à l'aide du tableau de bord Siremis. Essayez Kamailio sur l'hébergement VPS d'Atlantic.Net en utilisant le tutoriel ci-dessus !


Linux
  1. Comment installer MySQL sur Ubuntu 18.04

  2. Comment installer le serveur Minecraft sur Ubuntu 18.04

  3. Comment installer la localisation sur un serveur Ubuntu

  4. Comment installer MariaDB sur Ubuntu 22.04

  5. Comment installer Ubuntu Server 15.10 sur Hyper-v ?

Comment installer le serveur Mumble sur Ubuntu 15.04

Comment installer NGINX sur Ubuntu 20.04

Comment installer Ansible Server sur Ubuntu 18.04

Comment installer XWiki sur Ubuntu 20.04

Comment installer ClickHouse sur Ubuntu 20.04

Comment installer FTP sur Ubuntu 18.04 ?