Instalación de openmeetings 5.0.0-M1. WEB-conferencias sin Flash

¡Buenas tardes, estimados miembros de Habr y visitantes del portal!
Recientemente, tenía la necesidad de levantar un pequeño servidor para videoconferencias. No se consideraron muchas opciones: BBB y Openmeetings, ya que solo estas cumplían con los requisitos funcionales:

  1. Gratis
  2. Demostración de escritorio, documentos, etc.
  3. Interacción con los usuarios (pizarra compartida, chat, etc.)
  4. No se requiere instalación de software adicional para los clientes

Empecé con BBB… bueno, en realidad no hubo coincidencia… Primero, el requisito de hardware real, ya que en virtual no garantizan el funcionamiento; segundo, el consumo de recursos. Sí, buena imagen y excelente sonido, pero para mis necesidades no es comparable con los recursos consumidos.
Intenté openmeetings. Como amante de las soluciones probadas por otros usuarios y lanzamientos estables, instalé la última versión estable 4.0.8 (no vamos a discutir este proceso aquí). Todo bien, excepto que funciona con FLASH. Bueno, por eso, en Chrome se negó a funcionar, en Firefox funcionó... pero eso contradice el punto 4, ya que no todos usan FF y a algunos no les gusta. Ya me había frustrado cuando vi que la versión 5.0.0-M1 se anunciaba sin FLASH. Aquí es donde todo comenzó. Debo decir que no pude iniciar todo de inmediato; me tomó alrededor de 2 semanas, 1-2 horas al día, para un lanzamiento completo.
Así que lo instalé en ubuntu 18.0.4-LTS. Requisitos:

  • JRE 8
  • Servidor de medios Kurento

Comencemos con JRE8. Por defecto, los repositorios instalan la versión 11, así que vamos a agregar el repositorio y luego procederemos a instalar la versión que necesitamos:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Después de la instalación, es necesario configurar la versión de Java que se ejecutará de forma predeterminada:

sudo apt-get install oracle-java8-set-default

verificamos la versión

java -version

debería devolver

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

ahora solo queda establecer los directorios de inicio.

cat >> /etc/environment <<EOL
JAVA_HOME=/usr/lib/jvm/java-8-oracle
JRE_HOME=/usr/lib/jvm/java-8-oracle/jre
EOL

Para un funcionamiento normal de los flujos de video/audio se necesita Kurento Media server (KMS). Existen diferentes opciones de instalación, yo utilicé la opción de Docker. El proceso de instalación y configuración de Docker no se trata en este artículo, afortunadamente Internet está lleno de información. Así que, iniciamos KMS

docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:latest

Ahora procedemos a la instalación de los componentes adicionales:
MySQL En OМ hay una base de datos incorporada, pero no se recomienda utilizarla en la versión de producción. Instale cualquier versión que le resulte conveniente. También es posible usar una de los repositorios estándar.

sudo apt-get install mysql

para conectar Java a MySQL es necesario descargar el conector y colocarlo en la carpeta /webapps/openmeetings/WEB-INF/lib/. La configuración de la conexión MySQL se encuentra en el archivo /webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml
ImageMagick es necesario para la pizarra compartida, la demostración de documentos e imágenes. También tomamos de los repositorios estándar.

sudo apt-get install imagemagick

GhostScript esencial si queremos trabajar con pdf; sin él no podemos. Los repositorios también son estándar.
OpenOffice o Libre Office para la salida de todos los formatos de documentos de oficina...
FFMpeg y SoX para poder grabar videoconferencias en diferentes formatos. La versión debe ser 10.3 o superior.

sudo apt install ffmpeg
sudo apt-get install sox

Ahora estamos listos para descargar el propio openmeetings.
https://openmeetings.apache.org/downloads.html
Lo hemos descargado y descomprimido en la carpeta que necesitamos.
Parece que todo está listo para ejecutar (especialmente si seguimos la instrucción oficial), pero hay un enlace de este tipo https://localhost:5443/openmeetings/install. Si prestamos atención a https y al puerto 5443, entendemos que no vamos a tener éxito. Por supuesto, podemos ejecutar el script ./bin/startup.sh y el servidor se iniciará. Podremos entrar y configurarlo a través del enlace http://localhost:5080/openmeetings/install, pero el funcionamiento normal no será posible. Actualmente, todos los navegadores, y especialmente Chrome, luchan por la seguridad del usuario y permiten el uso de la cámara y el micrófono solo a través de https. Con FF se podrá acceder y permitir el uso de la cámara, pero esto nuevamente nos vincula a un solo navegador. Por lo tanto, pasamos a la instalación y configuración de SSL. Se puede obtener un certificado por un costo, o hacerlo uno mismo, de esta manera OМ no funcionará peor.
La versión OМ 5.0.0-M1 se basa en TomCat, no en Apache. La configuración del servidor web se encuentra en la carpeta ./conf/. Cómo crear un certificado autofirmado y instalarlo en TomCate ya lo he descrito.
Bien, https está configurado, ahora vamos a la carpeta ./bin y ejecutamos startup.sh, y después de que el servidor se inicie, pasamos al instalador web. https://localhost:5443/openmeetings/installAquí todo es simple e intuitivo, A EXCEPCIÓN de la sección “Convertidores”. Aquí es necesario especificar las rutas a nuestros paquetes adicionales instalados.

  1. ImageMagick Ruta /usr/bin
  2. FFMPEG Ruta /usr/bin
  3. SoX Ruta /usr/bin
  4. OpenOffice/LibreOffice Ruta para jodconverter /usr/lib/libreoffice (yo instalé libreoffice)

Luego, la configuración nuevamente no es complicada.
Después de iniciar sesión por primera vez, es OBLIGATORIO ir a «Administración» -> «Configuración», encontrar el elemento path.ffmpeg y eliminar el valor «/usr/bin» que está escrito en él. Guardamos la configuración.
Bueno, nuestro servidor VKS está configurado y listo para funcionar.
después de reiniciar el servidor, es necesario iniciar

  1. la base de datos SGBD (si no utiliza Derby integrado)
  2. KMS
  3. el script statup.sh

Se puede hacer manualmente, pero también se pueden crear scripts de autoinicio.
Para la salida «externa», en el firewall es necesario permitir los puertos 5443, 5080, 8888.
¡Disfruta de su uso!
P.D. Si la cámara no transmite imagen y no ves a nadie más que a ti mismo, es necesario agregar el dominio y el puerto a las excepciones del cortafuegos. Si tienes Kaspersky, funciona normalmente y deja pasar todo (¡por extraño que parezca!), pero Avast y el integrado en Windows funcionan con dificultad. Tendrás que lidiar con la configuración.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster