Come installare OpenMeetings su CentOS 7

Apache OpenMeetings è un'applicazione per conferenze Web open source. È scritto in Java e supporta più server di database. Fornisce molte funzionalità, come conferenze audio e video, condivisione dello schermo, esploratore di file, un sistema di moderazione utente, messaggi e contatti privati, un calendario integrato per i piani di riunione e molti altri. È inoltre possibile registrare una sessione di conferenza. Fornisce API SOAP / REST e plugin multipli per integrarsi facilmente con Moodle, Jira, Joomla, Confluence e altro.

Prerequisiti

  • Un'istanza del server Vultr CentOS 7 con almeno 4 GB di RAM.
  • Un utente sudo .
  • Un nome di dominio puntato verso il server.

Per questo tutorial, utilizzeremo 192.168.1.1come indirizzo IP pubblico e meetings.example.comcome nome di dominio puntato verso l'istanza Vultr. Assicurati di sostituire tutte le occorrenze dell'indirizzo IP di esempio e del nome di dominio con quello effettivo.

Aggiorna il tuo sistema di base usando la guida Come aggiornare CentOS 7 . Dopo aver aggiornato il sistema, procedere con l'installazione di Java.

Installa Java

OpenMeetings è scritto in Java, quindi per funzionare richiede Java Runtime Environment (JRE). Scarica l'ultimo pacchetto Oracle R JDK 8 RPM disponibile, che include sia JRE che JDK.

wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm

Installa il pacchetto scaricato.

sudo rpm -Uvh jdk-8u161-linux-x64.rpm

Se Java è stato installato correttamente, sarai in grado di verificarne la versione.

java -version

Vedrai il seguente output.

[user@vultr ~]$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Prima di poter procedere oltre, dovremo impostare le variabili di ambiente JAVA_HOMEe JRE_HOME. Trova il percorso assoluto dell'eseguibile JAVA nel tuo sistema.

readlink -f $(which java)

Vedrai un risultato simile.

[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java

Ora, imposta le variabili di ambiente JAVA_HOMEe in JRE_HOMEbase al percorso della directory Java.

echo "export JAVA_HOME=/usr/java/jdk1.8.0_161" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_161/jre" >> ~/.bash_profile

Esegui il bash_profilefile.

source ~/.bash_profile

Ora puoi eseguire il echo $JAVA_HOMEcomando per assicurarti che la variabile di ambiente sia impostata.

[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161

Installa dipendenze

Installa le librerie ImageMagick e GhostScript.

sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript

ImageMagick fornisce supporto per caricare immagini e importarle sulla lavagna. GhostScript consente di caricare PDF sulla lavagna.

Verifica la versione di ImageMagick e GhostScript per assicurarti che siano stati installati correttamente.

[user@vultr ~]$ identify -version
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

[user@vultr ~]$ ghostscript -v
GPL Ghostscript 9.07 (2013-02-14)
Copyright (C) 2012 Artifex Software, Inc.  All rights reserved.

Inoltre, dovremo anche installare Apache OpenOffice o LibreOffice sul sistema. Installazione di uno di questi consentirà OpenMeetings per importare i file nei formati di documento Office come .doc, .docx, .ppt, .pptx, o .xlx. In questo tutorial, installeremo Apache OpenOffice.

Passa alla directory temporanea e scarica Apache OpenOffice RPM.

cd /tmp
wget https://downloads.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/en-US/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz

Estrarre l'archivio e installare tutti i pacchetti RPM.

tar xf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
cd en-US/RPMS
sudo rpm -Uvh *.rpm
sudo rpm -Uvh desktop-integration/openoffice4.1.5-redhat-menus-*.rpm

Per verificare se OpenOffice è installato correttamente e funziona, digita openoffice4 -hla riga di comando. Stamperà la sua versione e un breve aiuto.

[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5  415m1(Build:9789)

Usage: soffice [options] [documents...]

Options:

-minimized      keep startup bitmap minimized.
...

Installa il repository RPMFusion nel tuo sistema in quanto fornisce pacchetti predefiniti per FFmpeg e Sound eXchange (SoX).

sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm

Installa FFmpeg e SoX.

sudo yum -y install ffmpeg sox

FFmpeg e SoX consentiranno la registrazione della riunione. Serviranno anche nei media l'importazione di file come ad esempio .avi, .flv, .move .mp4nella lavagna. Verificare l'installazione controllando le versioni di FFmpeg e SoX.

[user@vultr ~]$ sox --version
sox:      SoX v14.4.1

[user@vultr ~]$ ffmpeg -version
ffmpeg version 2.8.13 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)

Installa PostgreSQL

OpenMeetings supporta diversi tipi di server di database, come MySQL, PostgreSQL, Apache, Derby e Oracle. In questo tutorial, utilizzeremo il server PostgreSQL per ospitare il database OpenMeeting.

PostgreSQL è un sistema di database relazionale ad oggetti e noto per la sua stabilità e velocità. Il yumrepository predefinito contiene una vecchia versione di PostgreSQL, quindi aggiungi il repository PostgreSQL per l'ultima versione dell'applicazione nel sistema.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm

Installa il server di database PostgreSQL.

sudo yum -y install postgresql10-server postgresql10-contrib postgresql10 

Inizializza il database.

sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

Avviare il server PostgreSQL e abilitarlo ad avviarsi automaticamente all'avvio.

sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

Cambia la password per l'utente PostgreSQL predefinito.

sudo passwd postgres

Accedi come utente PostgreSQL.

sudo su - postgres

Crea un nuovo utente PostgreSQL per l'utente OpenMeetings.

createuser openmeetings

È possibile utilizzare qualsiasi nome utente anziché openmeetings. Passa alla shell PostgreSQL.

psql

Impostare una password per l'utente appena creato per il database OpenMeetings.

ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';

Sostituisci DBPasswordcon una password sicura. Creare un nuovo database per l'installazione di OpenMeetings.

CREATE DATABASE openmeetings OWNER openmeetings;

Esci dalla psqlshell.

\q

Passa sudoall'utente.

exit

Modifica il pg_hba.conffile per abilitare l'autenticazione basata su MD5.

sudo nano /var/lib/pgsql/10/data/pg_hba.conf

Trova le seguenti righe e modifica i valori nella METHODcolonna da identa md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Una volta aggiornata, la configurazione sarà simile a questa.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Salvare il file ed uscire dall'editor. Riavvia PostgreSQL per rendere effettive le modifiche.

sudo systemctl restart postgresql-10

Installazione di OpenMeetings

Poiché tutte le dipendenze richieste sono installate. Crea un nuovo utente per OpenMeetings. L'uso di un utente non root per l'esecuzione di OpenMeetings è consigliato per la sicurezza del server.

 sudo adduser -b /var -s /sbin/nologin openmeetings

Il comando sopra creerà anche la home directory openmeetingsdell'utente in /var/openmeetings.

Controlla la pagina di download di Apache OpenMeetings per ottenere il collegamento all'ultima versione disponibile. Scarica l'archivio OpenMeetings.

cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz

Estrarre l'archivio nella /var/openmeetingsdirectory.

sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings

Fornire la proprietà dei file all'utente OpenMeetings che abbiamo creato in precedenza.

sudo chown -R openmeetings:openmeetings /var/openmeetings

Prima di avviare l'applicazione, dovremo modificare il firewall per consentire porte 5080e 1935.

sudo firewall-cmd --zone=public --permanent --add-port=5080/tcp
sudo firewall-cmd --zone=public --permanent --add-port=1935/tcp
sudo firewall-cmd --reload

Ora puoi avviare l'applicazione.

sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings

Ora puoi accedere http://192.168.1.1:5080/openmeetingsal tuo browser preferito. Vedrai la schermata di benvenuto con le istruzioni per installare GhostScript.

Come installare OpenMeetings su CentOS 7

Poiché abbiamo già installato GhostScript, procedere oltre. Sulla prossima interfaccia, ti verrà richiesto di fornire i dettagli del server di database. Seleziona il tipo di database " PostgreSql" e fornisci i dettagli del tuo server di database che hai configurato durante l'installazione di PostgreSQL.

Come installare OpenMeetings su CentOS 7

Fai clic sul Checkpulsante " " e dovresti visualizzare il messaggio: " Database check was successful". Fornisci i dettagli del tuo account amministratore e un nome di gruppo nell'interfaccia successiva.

Come installare OpenMeetings su CentOS 7

Configura le impostazioni di base della tua installazione; ad esempio per consentire l'autoregistrazione, la verifica tramite e-mail e la lingua predefinita. Inoltre, fornisci i dettagli del tuo server SMTP. Se non si dispone di un server SMTP pronto, è possibile fornire anche i dettagli SMTP più avanti nella dashboard dell'amministratore.

Come installare OpenMeetings su CentOS 7

Ti chiederà il percorso dei binari di diverse applicazioni. Fornire /usr/bincome percorso per ImageMagick, FFmpeg e SoX. Se l'applicazione fornisce errori per il percorso immesso, è possibile utilizzare which <binary_name>per trovare il percorso assoluto del file binario. Ad esempio, which ffmpegdovrebbe darti /usr/bin/ffmpegcome output. Utilizzare /opt/openoffice4come percorso dei binari di OpenOffice.

Come installare OpenMeetings su CentOS 7

È possibile saltare la configurazione sull'interfaccia successiva poiché utilizzeremo i valori predefiniti. Infine, fai clic sul pulsante " Finish" per installare l'applicazione e scrivere il database.

OpenMeetings è ora installato sul tuo server. Per renderlo più produttivo, installeremo Systemd per gestire il server OpenMeetings. Configureremo anche Nginx con Let's Encrypt SSL come proxy inverso sicuro per servire l'applicazione.

Configurazione di Systemd

Sebbene possiamo facilmente avviare e arrestare l'applicazione utilizzando il comando sopra, si consiglia di impostare un'unità di servizio Systemd per gestire l'applicazione. Ciò garantirà inoltre che il servizio venga avviato automaticamente all'avvio e agli errori.

Arrestare il server OpenMeetings premendo " Ctrl+C" o uccidendo la shell openmeetingsdell'utente.

sudo pkill -KILL -u openmeetings

Creare un nuovo file di unità Systemd per OpenMeetings Server.

sudo nano /etc/systemd/system/openmeetings.service

Popolare il file.

[Unit]
Description=OpenMeeting Service 
After=network.target

[Service]
Type=simple
User=openmeetings
WorkingDirectory=/var/openmeetings 
ExecStart=/var/openmeetings/red5.sh
Restart=always

[Install]
WantedBy=multi-user.target

Avviare il server OpenMeetings e abilitarlo ad avviarsi automaticamente all'avvio.

sudo systemctl start openmeetings
sudo systemctl enable openmeetings

Per verificare lo stato del servizio, è possibile eseguire quanto segue.

sudo systemctl status openmeetings

Vedrai un risultato simile.

[root@vultr openmeetings]# sudo systemctl status openmeetings
● openmeetings.service - OpenMeeting Service
   Loaded: loaded (/etc/systemd/system/openmeetings.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-01-31 15:40:56 UTC; 38s ago
 Main PID: 10522 (java)
   CGroup: /system.slice/openmeetings.service
           └─10522 /bin/java -Dred5.root=/var/openmeetings -Djava.security.debug=failure -Xms256m...

Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.431 16603 343 o.a.o.c.r.Scope...se]
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.531 16703 124 o.a.o.c.r.Scope...ngs
Jan 31 15:41:34 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:34.421 21593 82 o.a.o.u.Version ...] -
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                              Openmeetings is up ...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                      4.0.1 3795f14 2017-12-05T16...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                               and ready to use  ...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Hint: Some lines were ellipsized, use -l to show in full.

Installa Nginx come proxy inverso

Per impostazione predefinita, OpenMeetings ascolta la porta 5080. Se la connessione tra il browser e il server non è crittografata con SSL, gli accessi e le altre informazioni verranno inviati in testo semplice. Questa potrebbe essere una potenziale minaccia poiché qualcuno che intercetta sulla rete potrebbe ottenere le informazioni. Per mitigare questo problema, configureremo Nginx come proxy inverso che ascolterà la porta HTTPS predefinita e inoltrerà tutte le richieste al server OpenMeetings.

Installa Nginx.

sudo yum -y install nginx

Avvia Nginx e abilita l'avvio automatico all'avvio.

sudo systemctl start nginx
sudo systemctl enable nginx

Installa Certbot, che è l'applicazione client per Let's Encrypt CA.

sudo yum -y install certbot

Prima di poter richiedere i certificati, è necessario consentire porte 80e / 443o standard HTTPe HTTPSservizi attraverso il firewall.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

Nota: per ottenere certificati da Let's Encrypt CA, il dominio per il quale devono essere generati i certificati deve essere puntato verso il server. In caso contrario, apportare le modifiche necessarie ai record DNS del dominio e attendere la propagazione del DNS prima di effettuare nuovamente la richiesta di certificato. Certbot controlla l'autorità di dominio prima di fornire i certificati.

Genera i certificati SSL.

sudo certbot certonly --webroot -w /usr/share/nginx/html -d meetings.example.com

È probabile che i certificati generati siano archiviati in /etc/letsencrypt/live/meetings.example.com/. Il certificato SSL verrà archiviato come fullchain.peme la chiave privata verrà archiviata come privkey.pem.

Let's Encrypt certificati scadranno tra 90 giorni, quindi si consiglia di impostare il rinnovo automatico dei certificati utilizzando i processi Cron.

Apri il file di lavoro cron.

sudo crontab -e

Aggiungi la seguente riga alla fine del file.

30 5 * * * /usr/bin/certbot renew --quiet

Il precedente cron job verrà eseguito ogni giorno alle 5:30. Se il certificato è in scadenza, verrà automaticamente rinnovato.

Ora, modifica il file di configurazione predefinito di Nginx per eliminare la default_serverriga.

sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf

Crea un nuovo file di configurazione per OpenMeetings Server.

sudo nano /etc/nginx/conf.d/meetings.example.com.conf

Popolare il file.

server {
    listen 80;
    server_name meetings.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443;
    server_name meetings.example.com;

    ssl_certificate           /etc/letsencrypt/live/meetings.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/meetings.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log  /var/log/nginx/openmeetings.access.log;

location / {
    proxy_pass            http://localhost:5080;        
    proxy_set_header    host $host;
    proxy_http_version  1.1;
    proxy_set_header upgrade $http_upgrade;         
    proxy_set_header connection "upgrade";     
    } 
}

Verificare la presenza di errori nel nuovo file di configurazione.

sudo nginx -t

Se viene visualizzato il seguente output, la configurazione è priva di errori.

[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Se hai ricevuto qualche tipo di errore, assicurati di ricontrollare il percorso dei certificati SSL. Riavviare il server Web Nginx per implementare la modifica della configurazione.

sudo systemctl restart nginx

Prima di poter iniziare a utilizzare l'applicazione sul sito protetto SSL, è necessario apportare una modifica alla configurazione in OpenMeetings. Accedi alla dashboard amministrativa di OpenMeetings e vai a " Administration >> Configuration". Nella tabella di ID, chiave e valore; trova application.base.url. Cambia il suo valore in https://meetings.example.combase al tuo nome di dominio. Salvare la configurazione facendo clic sull'icona Salva sopra.

Come installare OpenMeetings su CentOS 7

Riavvia il servizio OpenMeetings.

sudo systemctl restart openmeetings

Ora puoi navigare https://meetings.example.comusando il tuo browser preferito e accedere per usare l'applicazione.

Congratulazioni, Apache OpenMeetings è ora installato sul tuo server. Puoi invitare i tuoi amici e iniziare a utilizzare OpenMeetings per conferenze online.



Leave a Comment

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.