Como instalar o servidor SIP Kamailio no Ubuntu 18.04. 16,04

  • George Richardson
  • 0
  • 4135
  • 1101

Este breve tutorial mostra aos alunos e novos usuários como instalar o servidor SIP Kamailio e portal de back-end Siremis para gerenciar Kamailio no Ubuntu 18.04 | 16.04 com servidor Apache2 HTTP…

Kamailio é um servidor SIP gratuito, de código aberto e flexível, capaz de lidar com milhares de configurações de chamadas por segundo. É baseado em OpenSER e SER. Com Kamailio, você pode construir grandes plataformas para VoIP e comunicações em tempo real - presença, WebRTC, mensagens instantâneas e outras aplicações.

Para gerenciar facilmente o Kamailio, você vai querer instalar o portal da web Siremis. Esta postagem mostra como fazer isso também.

Se você está procurando um servidor SIP de código aberto para executar seu VoIP de negócios e presença de comunicação em tempo real, você pode querer dar uma olhada no Kamailio.

Para saber mais sobre a plataforma social Kamailio, visite sua página inicial

Para começar a instalar o Kamailio, siga as etapas abaixo:

Etapa 1: instalar Apache2 HTTP

O servidor HTTP Apache2 é o servidor web mais popular em uso ... então instale-o, pois o Kamailio precisa dele ...

Para instalar Apache2 HTTP no servidor Ubuntu, execute os comandos abaixo ...

sudo apt update sudo apt install apache2

Depois de instalar o Apache2, os comandos abaixo podem ser usados ​​para parar, iniciar e habilitar o serviço Apache2 para sempre iniciar com as inicializações do servidor.

sudo systemctl stop apache2.service sudo systemctl start apache2.service sudo systemctl enable apache2.service 

Para testar a configuração do Apache2, abra seu navegador e navegue até o nome do host do servidor ou endereço IP e você deverá ver a página de teste padrão do Apache2 conforme mostrado abaixo ... Quando você vir isso, o Apache2 está funcionando como esperado ...

http: // localhost

Etapa 2: Instale o servidor de banco de dados MariaDB

v também precisa de um servidor de banco de dados para armazenar seu conteúdo ... e o servidor de banco de dados MariaDB é um ótimo lugar para começar ao observar servidores de banco de dados de código aberto para usar com.

Para instalar o MariaDB execute os comandos abaixo ...

sudo apt install mariadb-server mariadb-client

Depois de instalar o MariaDB, os comandos abaixo podem ser usados ​​para parar, iniciar e permitir que o serviço MariaDB sempre inicialize quando o servidor for inicializado ...

Execute-os no Ubuntu

sudo systemctl stop mariadb.service sudo systemctl start mariadb.service sudo systemctl enable mariadb.service 

Depois disso, execute os comandos abaixo para proteger o servidor MariaDB criando uma senha de root e proibindo o acesso root remoto.

sudo mysql_secure_installation

Quando solicitado, responda às perguntas abaixo seguindo o guia.

  • Digite a senha atual do root (digite nenhum): Basta pressionar Enter
  • Definir senha de root? [S / n]: S
  • Nova senha: Digite a senha
  • Digite a nova senha novamente: repita a senha
  • Remover usuários anônimos? [S / n]: S
  • Desautorizar login de root remotamente? [S / n]: S
  • Remover banco de dados de teste e acesso a ele? [S / n]: S
  • Recarregar tabelas de privilégios agora? [S / n]: S

Reinicie o servidor MariaDB

Para testar se MariaDB está instalado, digite os comandos abaixo para fazer logon no servidor MariaDB

sudo mysql -u root -p

Em seguida, digite a senha que você criou acima para entrar ... se for bem-sucedido, você verá a mensagem de boas-vindas do MariaDB

Etapa 3: instalar o PHP 7.2 e módulos relacionados

PHP 7.2 pode não estar disponível nos repositórios padrão do Ubuntu ... para instalá-lo, você terá que obtê-lo de repositórios de terceiros.

Execute os comandos abaixo para adicionar o repositório de terceiros abaixo para atualizar para o PHP 7.2

sudo apt-get install software-propriedades-common sudo add-apt-repository ppa: ondrej / php

Em seguida, atualize e atualize para PHP 7.2

atualização apt sudo

Em seguida, execute os comandos abaixo para instalar o PHP 7.2 e módulos relacionados.

sudo apt install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7. 2-gd php7.2-imagick php-pear php7.2-xml php7.2-cli php7.2-zip php7.2-sqlite

Depois de instalar o PHP 7.2, execute os comandos abaixo para abrir o arquivo de configuração padrão do PHP para Apache2…

sudo nano /etc/php/7.2/apache2/php.ini 

Em seguida, faça as alterações nas linhas a seguir no arquivo e salve. Os valores abaixo são ótimas configurações para aplicar em seus ambientes.

file_uploads = Ligado allow_url_fopen = Ligado short_open_tag = Ligado memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 max_input_vars = 1500 date.timezone = América / Chicago

Depois de fazer a alteração acima, salve o arquivo e feche. Depois de instalar o PHP e os módulos relacionados, tudo que você precisa fazer é reiniciar o Apache2 para recarregar as configurações do PHP ...

Para reiniciar o Apache2, execute os comandos abaixo

sudo systemctl restart apache2.service

Para testar as configurações do PHP 7.2 com Apache2, crie um phpinfo.php arquivo no diretório raiz do Apache2 executando os comandos abaixo

sudo nano /var/www/html/phpinfo.php

Em seguida, digite o conteúdo abaixo e salve o arquivo.

Salve o arquivo ... e navegue até o nome de host do servidor seguido por /phpinfo.php

http: //localhost/phpinfo.php

Você deve ver a página de teste padrão do PHP ...

Etapa 4: Baixe a última versão do Kamailio

Os pacotes Kamailio não estão disponíveis nos repositórios padrão do Ubuntu. Para instalá-lo, você terá que adicionar seu repositório oficial ao Ubuntu.

Para fazer isso, siga as etapas abaixo:

Primeiro, baixe e adicione a chave GPG para seu repositório executando os comandos abaixo:

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

Em seguida, execute os comandos abaixo para criar seu arquivo de repositório.

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

Em seguida, copie e cole as linhas abaixo no arquivo e salve-o.

deb http://deb.kamailio.org/kamailio52 principal biônico deb-src http://deb.kamailio.org/kamailio52 principal biônico

Por fim, atualize os pacotes do Ubuntu e instale o Kamailio.

sudo apt update sudo apt install kamailio kamailio-mysql-modules kamailio-websocket-modules

Depois de instalar o Kamailio, você pode verificar se ele está instalado e pronto executando os comandos abaixo.

Kamailio -V

Você deve ver linhas semelhantes, conforme mostrado abaixo:

Resultado: versão: kamailio 5.2.6 (x86_64 / linux) sinalizadores: STATS: Desligado, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALL_MALLOC, Q_MFOCALL_MALL_MALL_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALL_MALL_SOCKS, Q_MFOCALL_SOCALL, FLOG_MALL_MALL, BLOQUEIO_Q_MAGLESS, BLOQUEIO_Q_MAGLOC, FLOG_MALL_MALL, BLOQUEIO_FUNDO_Q_MEMLOCAL, BLOQUEIO_FILMETRATO_Q_MAGLOCAL, BLOQUEIO_FOCAL_Q_MAG. -ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED ADAPTIVE_WAIT_LOOPS = 1024, MAX_RECV_BUFFER_SULTE 262144 método de pesquisa de MAX_RECV_BUFFER_SIZE 262144 SIGFFER_SIZE 262144, suporte de pesquisa MAX_RECV_BUFFER_SIZE 262144 SIGFoll_Empoll_UFFER24, 652144 SIGRIZE 242144, selecione o método de pesquisa MAX_RECV_BUFFER_SIZE 262144, Sig. id: desconhecido compilado com gcc 7.4.0 

O arquivo de configuração padrão do Kamailio está localizado em / etc / kamailio / kamctlrc.

Para configurações, basta abrir o arquivo e adicionar suas alterações e salvá-lo. Para especificar um nome de domínio para o seu servidor, execute os comandos abaixo para abrir seu arquivo de configuração.

sudo nano / etc / kamailio / kamctlrc

Em seguida, edite as linhas destacadas no arquivo e salve.

# O arquivo de configuração Kamailio para as ferramentas de controle. # ## seu domínio SIP SIP_DOMAIN = kamailio.example.com ## diretório chrooted # # Se quiser configurar um banco de dados com kamdbctl, você deve pelo menos especificar # este parâmetro. DBENGINE = MYSQL ## banco de dados host ## banco de dados somente leitura usuário 

Depois de fazer as alterações acima, execute o script abaixo para criar um banco de dados, usuário e tabelas necessárias para Kamailio.

kamdbctl create

Se você obtiver acesso negado para root @ localhost, siga as etapas abaixo para resolver.

Faça logon no servidor MariaDB executando os comandos abaixo

sudo mysql -u root

Isso deve levá-lo ao servidor de banco de dados. Depois disso, execute os comandos abaixo para desativar a autenticação do plugin para o usuário root

use mysql; update user set plugin = "where User =" root "; liberar privilégios; sair

Reinicie e execute os comandos abaixo para definir uma nova senha.

sudo systemctl restart mariadb.service

Agora execute o script Kamailio para criar um banco de dados e usuário.

Quando solicitado, responda com as configurações abaixo:

Insira o nome do conjunto de caracteres: latin1 INFO: criando banco de dados kamailio… INFO: concedendo privilégios ao banco de dados kamailio… INFO: criando tabelas padrão em kamailio… INFO: tabelas principais Kamailio criadas com sucesso. Instalar tabelas relacionadas à presença? (s / n): s INFO: criando tabelas de presença em kamailio… INFO: Tabelas de presença criadas com sucesso. Instalar tabelas para imc cpl siptrace domainpolicy carrierroute drouting userblacklist htable roxo uac pipelimit mtree sca mohqueue rtpproxy rtpengine? (s / n): y INFO: criando tabelas extras no kamailio… INFO: Tabelas extras criadas com sucesso. Instalar tabelas para uid_auth_db uid_avp_db uid_domain uid_gflags uid_uri_db? (s / n): s INFO: criando tabelas uid em kamailio… INFO: Tabelas UID criadas com sucesso. 

Em seguida, abra o /etc/kamailio/kamailio.cfg arquivo executando os comandos abaixo:

sudo nano /etc/kamailio/kamailio.cfg

Em seguida, adicione as seguintes linhas abaixo #! KAMAILIO.

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

Salvar e sair.

Para aplicar suas alterações, execute os comandos abaixo:

sudo systemctl restart kamailio

Kamailio agora está instalado e pronto para usar.

Etapa 5: instalar e configurar o Siremis

Agora que o Kamailio está instalado, você precisará de uma interface web simples para gerenciar o servidor. Para fazer isso, instale Siremis.

Siremis é uma interface baseada na web para o servidor SIP Kamailio. Ele fornece uma maneira fácil de criar e gerenciar perfis de usuário, regras de roteamento, ver a contabilidade, telefones registrados e se comunicar com o servidor SIP.

Para instalar o Siremis, você deve instalar XML_RPC. Execute os comandos abaixo para instalar.

sudo pear install XML_RPC2

Em seguida, mude o diretório para Apache web root, instale o git e baixe os pacotes do Siremis.

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

Depois disso, mude para a pasta Siremis e prepare seu ambiente.

cd / var / www / siremis sudo make prepare24 sudo make chown

Por fim, configure o arquivo de configuração do site Apahce2 para Siremis. Este arquivo controlará como os usuários acessam o conteúdo do Siremis. Execute os comandos abaixo para criar um novo arquivo de configuração chamado siremis.conf

sudo nano /etc/apache2/sites-available/siremis.conf

Em seguida, copie e cole o conteúdo abaixo no arquivo e salve-o. Substitua a linha destacada pelo seu próprio nome de domínio e localização raiz do diretório.

 ServerAdmin [email protected] DocumentRoot / var / www / siremis / siremis Alias ​​/ siremis "/ var / www / siremis / siremis" ServerName kamailio.example.com ServerAlias ​​www.kamailio.example.com  Opções Índices FollowSymLinks MultiViews AllowOverride Todos Requer todos concedidos  Requer tudo negado   Requer tudo negado   ErrorLog $ APACHE_LOG_DIR /error.log CustomLog $ APACHE_LOG_DIR /access.log combinado  

Salve o arquivo e saia.

Etapa 6: ativar o Siremis e o módulo Rewrite

Depois de configurar o VirtualHost acima, habilite-o executando os comandos abaixo

sudo a2ensite siremis.conf sudo a2enmod reescrever sudo systemctl restart apache2.service 

Por fim, siga as etapas abaixo para conceder ao usuário do Siremis acesso ao seu banco de dados.

sudo mysql -u root -p

Digite sua senha de root, quando solicitado.

Em seguida, execute a instrução SQL abaixo

CONCEDE TODOS OS PRIVILÉGIOS NO siremis. * PARA siremis @ localhost IDENTIFICADO POR 'password';

Em seguida, libere os privilégios e saia

FLUSH PRIVILEGES; SAÍDA;

Em seguida, abra seu navegador e navegue até o nome de domínio do servidor ou nome de host. Geralmente é localhost, mas pode ser um nome de host ou endereço IP. O administrador do servidor ou empresa de hospedagem terá essas informações disponíveis.

http://kamailio.example.com/

Comece o assistente de instalação

Valide se todos os requisitos foram atendidos e continue com o assistente.

Insira as informações de configuração do seu banco de dados abaixo.

Se você optar por criar o banco de dados Siremis, o usuário configurado para acessá-lo deve ter privilégios para criá-lo. Importar os dados padrão insere os registros exigidos pela administração do Siremis.

O banco de dados Siremis é para uso interno, enquanto o banco de dados SIP é usado pelo Kamailio - ele deve ser criado separadamente (ou seja, kamdbctl create). Atenção: Atualizar SIP DB está removendo e recriando tabelas acc e lost_calls no banco de dados Kamailio.

Após um breve momento, a configuração deve ser concluída e fornece a você um nome de usuário e senha de administrador. Use a credencial para fazer o login e começar a configurar seu ambiente.

Nome de usuário: admin
Senha: admin

Isso deve completar a configuração.

Conclusão:

Você aprendeu como instalar o servidor SIP Kamailio com backend Siremis no Ubuntu com servidor HTTP Apache2 ... Se você encontrar algum erro acima, por favor, deixe um comentário abaixo

obrigado,




Ainda sem comentários

Uma coleção de informações úteis sobre o sistema operacional Linux e novas tecnologias
Artigos novos, dicas práticas, revisões detalhadas e guias. Sinta-se em casa no mundo do sistema operacional Linux