Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1. Introduction

OpenGate Containers es el módulo encargado de gestionar las conexiones VoIP de un entorno OpenGate, así como la configuración de extensionesis the module responsible for managing VoIP connections in an OpenGate environment, as well as the configuration of extensions, trunks, etc. En esta guía, se explica cómo realizar una instalación rápida. Consulte previamente la guía de instalación de Presence para más información acerca de los distintos módulos y arquitecturasThis guide explains how to perform a quick installation. Please refer to the Presence installation guide for more information about the different modules and architectures.

2. Installation

2.1. Prerequisites

...

  • Have a “host” machine with a recent version of Docker Engine and Docker Compose installed.

  • The “host” machine must have the network properly configured.

    • In case of a Master node configured with a SIP Registrar, two IPs are required.

  • The “host” machine should not execute other services which may clash with the ports used in your services.

    • Exception: The Master node should have an MTA installed, such as “postfix” to send emails from mailboxes.

    • When a “SMTP relay" server is being used, it must be configured as detailed in this /wiki/spaces/PRSPS/pages/177045505.

  • The “host” machine must not limit the connection to your services through a firewall.

Seguir la guía For a quick guide see: Instalación de Rocky Linux 9 y Docker

...

  • master: Installs postgresql, ssh-server, webservices, kamailio and asterisk.

  • masterwebrtc: Same as master, but adds freeswitch to use as WebRTC Gateway.

  • masteronlywebrtc: Does not include kamailio, which allows you to use it in environments with a single IP with WebRTC phones. However, no Agent/SIP user extensions can be registered.

  • node: Installs asterisk and ssh-server.

  • nodewebrtc: Same as node, but adds freeswitch to use as WebRTC Gateway.

  • webrtc: Installs freeswitch and ssh-server.

  • turn: Installs coturn server.

El parámetro opcional -norecording configura un entorno sin integración con Presence Recording, esto elimina la necesidad de configurar una carpeta compartida para las grabacionesThe optional parameter -norecording configures an environment without integration with Presence Recording, eliminating the need to set up a shared folder for recordings.

2.3.

...

Additional technical information

See the document: Additional technical OpenGate Containers information

3.

...

OpenGate Master

...

Installation

Run the install command, specifying master option.

Code Block
bash -c "$(curl -s ftps://OpenGate_Update:Op3nG3t3@ftp.emea.enghouseinteractive.com/install.sh )" master

Tras ejecutar este comando automáticamente conectará al “registry” y obtendrá las imágenesAfter executing the command, it will automatically connect to the registry and pull the images.

...

Al finalizarWhen done, the following screen will prompt you to configure the environments in the.env file, and will also show the instructions to create secrets. Something like this:

Code Block
languagenone
Please edit .env file with the appropriate values. Current .env contents:
TZ=Europe/Madrid
SSH_USERNAME=opengate
DATA_BINDADDR=10.X.X.X
VOICE_BINDADDR=10.X.X.X
SIP_REGISTRAR_IP=10.X.X.X
# DB_NAME MUST be opengate (hardcoded at OpenGate Proxy)
DB_NAME=opengate
DB_USER=opengaterw
RECORDING_SHARE=//X.X.X.X/recording
RECORDING_SHARE_USER=Administrator
RECORDING_SHARE_PASSWORD=PASSWORD
RECORDING_MOUNT_POINT=/recordings
# set to true to restore from a backup
RESTORE_MODE=false

Generate the secrets using the following commands and instructions:
 - DB password: echo "MYPASSWORD" > secrets/db_password.txt
 - SSH Key: ssh-keygen -f secrets/ssh_key
 - TLS certificates (generate self-signed): openssl req -x509 -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650
    or copy your own to the apropriate files:
      cat key.pem cert.pem > secrets/asterisk.pem

When done, start the environment by executing:  docker compose up -d

Edita el fichero Edit the .env usando tu editor preferido y modifica las siguientes líneas file using your preferred editor, and configure at least the following lines:

  • DATA_BINDADDR: introduce la IP de la red de datosdefine the IP address of the data network.

  • VOICE_BINDADDR: introduce la IP de la red de voz. Si no hay separación de voz y datos, introduce la misma en ambas variablesdefine the IP address of the voice network. If you do not setup voice/data separation, use the same as before.

  • SIP_REGISTRAR_IP: la IP asociada al define the IP address of the SIP Registrar. No puede coincidir con las anteriores. Asegúrate de configurar dos IPs en el sistemaIt cannot be one of the previous ones. Make sure to configure two IP addresses in the Host operating system.

  • RECORDING_SHARE, RECORDING_SHARE_USER y RECORDING_SHARE_PASSWORD: definen los parámetros de la carpeta compartida de grabaciones.

Ejecuta los pasos mencionados para crear los secrets:

  • Sustituye MYPASSWORD por la contraseña que quierasdefine the parameters for the shared recordings folder.

Filenames starting with a dot (like .env) are hidden in Linux, if you connect using any graphical interface, make sure to enable the option to show those files.

And execute the steps to create the secrets:

  • Replace MYPASSWORD with the password you want:

    Code Block
    echo "MYPASSWORD" > secrets/db_password.txt

    (warning) Esta contraseña y el valor de la variable This password and the value of the DB_USER variable (opengaterw por defecto) deben coincidir con lo configurado en by default) must match what is configured in the OpenGate Proxy Server configuration.

  • Genera las claves Generate the SSH keys:

    Code Block
    ssh-keygen -f secrets/ssh_key
  • Genera unos certificados autofirmados si no tienes unos propiosGenerate self-signed certificates if you don't have your own:

    Code Block
    openssl req -x509 -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650
    • Y concatena los dos ficheros resultantes en uno sólo en la ruta correspondienteAnd concatenate the two resulting files into a single one at the corresponding path:

      Code Block
      cat key.pem cert.pem > secrets/asterisk.pem

...

4. Instalación de OpenGate Node

Ejecutamos el comando de instalación indicando el modo nodeRun the install command, specifying node option.

Code Block
bash -c "$(curl -s ftps://OpenGate_Update:Op3nG3t3@ftp.emea.enghouseinteractive.com/install.sh )" node

Tras ejecutar este comando automáticamente conectará al “registry” y obtendrá las imágenes.

Al finalizarAfter executing the command, it will automatically connect to the registry and pull the images.

When done, a screen will prompt you to configure the environments in the.env file, and will also show the instructions to create secrets.

Edita el fichero Edit the .env usando tu editor preferido y modifica las siguientes líneas file using your preferred editor, and configure at least the following lines:

  • DATA_BINDADDR: introduce la IP de la red de datosdefine the IP address of the data network.

  • VOICE_BINDADDR: introduce la IP de la red de voz. Si no hay separación de voz y datos, introduce la misma en ambas variablesdefine the IP address of the voice network. If you do not setup voice/data separation, use the same as before.

  • RECORDING_SHARE, RECORDING_SHARE_USER y RECORDING_SHARE_PASSWORD: definen los parámetros de la carpeta compartida de grabaciones.

Ejecuta los pasos mencionados para crear los secrets:

  • Copia la clave pública SSH que has generado en el master.

    A mano con un cliente SFTP/SCP gráfico, o ejecutando en el nodo

    define the parameters for the shared recordings folder.

And execute the steps to create the secrets:

  • Copy the SSH public key you generated on the Master. Either manually with a graphical SFTP/SCP client or by executing on the node:

    Code Block
    scp opengate@MASTERIP:secrets/ssh_key.pub secrets/ssh_key.pub

    Donde opengate es el usuario que has configurado en sistema operativo de la máquina del Master, y MASTERIP es su IP. Tendrás que introducir correctamente la contraseña del usuario opengate de la máquina Master cuando lo solicite.

    Genera unos certificados autofirmados si no tienes unos propiosWhere opengate is the user you configured on the operating system of the Master, and MASTERIP is its IP address. You will need to correctly enter the password for the opengate user of the Master machine when prompted.

  • Generate self-signed certificates if you don't have your own:

    Code Block
    openssl req -x509 -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650
    • Y concaténalos en uno sólo en la ruta correspondienteAnd concatenate the two resulting files into a single one at the corresponding path:

      Code Block
      cat key.pem cert.pem > secrets/asterisk.pem

4. Instalación de OpenGate WebRTC Gateway

Ejecutamos el comando de instalación indicando el modo webrtcRun the install command, specifying webrtc option.

Code Block
bash -c "$(curl -s ftps://OpenGate_Update:Op3nG3t3@ftp.emea.enghouseinteractive.com/install.sh )" webrtc

Tras ejecutar este comando automáticamente conectará al “registry” y obtendrá las imágenes.

Al finalizarAfter executing the command, it will automatically connect to the registry and pull the images.

When done, a screen will prompt you to configure the environments in the.env file, and will also show the instructions to create secrets.

Edita el fichero Edit the .env usando tu editor preferido y modifica las siguientes líneas file using your preferred editor, and configure at least the following lines:

  • WSS_BINDADDR: introduce la IP de la red DMZ (si no tienes separación entre DMZ y red Privada, introduce la IP de la red Privadadefine the IP address of the DMZ network (if you don’t have DMZ/Private network separation, enter the Private network IP).

  • WSS_EXTERNAL_IP: introduce la IP pública del sistema.

Ejecuta los pasos mencionados para crear los secrets:

  • Copia la clave pública SSH que has generado en el master.

    A mano con un cliente SFTP/SCP gráfico, o ejecutando en el nodo

    define the public external IP address of the system.

And execute the steps to create the secrets:

  • Copy the SSH public key you generated on the Master. Either manually with a graphical SFTP/SCP client or by executing on the node:

    Code Block
    scp opengate@MASTERIP:secrets/ssh_key.pub secrets/ssh_key.pub

    Donde opengate es el usuario que has configurado en sistema operativo de la máquina del Master, y MASTERIP es su IP. Tendrás que introducir correctamente la contraseña del usuario opengate de la máquina Master cuando lo solicite.

    Genera unos certificados autofirmados si no tienes unos propiosWhere opengate is the user you configured on the operating system of the Master, and MASTERIP is its IP address. You will need to correctly enter the password for the opengate user of the Master machine when prompted.

  • Generate self-signed certificates if you don't have your own:

    Code Block
    openssl req -x509 -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650
    • Y concatena los dos ficheros resultantes en uno sólo en la ruta correspondienteAnd concatenate the two resulting files into a single one at the corresponding path:

      Code Block
      cat key.pem cert.pem > secrets/freeswitch.pem

...