Sådan installeres Microweber på CentOS 7
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Apache OpenMeetings er en open source webkonferenceapplikation. Det er skrevet i Java og understøtter flere databaseservere. Det giver mange funktioner, såsom lyd- og videokonferencer, skærmdeling, filudforsker, et brugermodereringssystem, private beskeder og kontakter, en integreret kalender til mødeplaner og mange flere. Du kan også optage en konferencesession. Det giver SOAP/REST API og flere plugins til nemt at integrere med Moodle, Jira, Joomla, Confluence og mere.
Til denne vejledning vil vi bruge 192.168.1.1
som den offentlige IP-adresse og meetings.example.com
som domænenavnet, der pegede mod Vultr-forekomsten. Sørg for at erstatte alle forekomster af eksemplets IP-adresse og domænenavn med den faktiske.
Opdater dit basissystem ved hjælp af vejledningen Sådan opdaterer du CentOS 7 . Når dit system er blevet opdateret, skal du fortsætte med at installere Java.
OpenMeetings er skrevet i Java, så det kræver Java Runtime Environment (JRE) for at fungere. Download den seneste tilgængelige Oracle SE JDK 8 RPM-pakke, som inkluderer både JRE og JDK.
wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm
Installer den downloadede pakke.
sudo rpm -Uvh jdk-8u161-linux-x64.rpm
Hvis Java er installeret korrekt, vil du være i stand til at bekræfte dens version.
java -version
Du vil se følgende 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)
Før vi kan gå videre, bliver vi nødt til at opsætte JAVA_HOME
og JRE_HOME
miljøvariablerne. Find den absolutte sti til den eksekverbare JAVA i dit system.
readlink -f $(which java)
Du vil se et lignende output.
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java
Indstil nu JAVA_HOME
og JRE_HOME
miljøvariablerne i henhold til stien til Java-mappen.
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
Udfør bash_profile
filen.
source ~/.bash_profile
Nu kan du køre echo $JAVA_HOME
kommandoen for at sikre, at miljøvariablen er indstillet.
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161
Installer ImageMagick og GhostScript biblioteker.
sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript
ImageMagick giver support til at uploade billeder og importere dem til whiteboardet. GhostScript giver dig mulighed for at uploade PDF'er til tavlen.
Bekræft versionen af ImageMagick og GhostScript for at sikre, at de er installeret korrekt.
[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.
Yderligere skal vi også installere enten Apache OpenOffice eller LibreOffice på systemet. Installation af en af disse vil gøre det muligt for OpenMeetings at importere filerne i Office-dokumentformater såsom .doc
, .docx
, .ppt
, .pptx
, eller .xlx
. I denne vejledning installerer vi Apache OpenOffice.
Skift til den midlertidige mappe og download 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
Udpak arkivet og installer alle RPM-pakkerne.
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
For at kontrollere, om OpenOffice er installeret korrekt og fungerer, skal du indtaste openoffice4 -h
kommandolinjen. Det vil udskrive sin version og kort hjælp.
[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5 415m1(Build:9789)
Usage: soffice [options] [documents...]
Options:
-minimized keep startup bitmap minimized.
...
Installer RPMFusion-lageret i dit system, da det leverer forudbyggede pakker til FFmpeg og Sound eXchange (SoX).
sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
Installer FFmpeg og SoX.
sudo yum -y install ffmpeg sox
FFmpeg og SoX vil muliggøre optagelse af mødet. De vil også hjælpe med at importere mediefiler såsom .avi
, .flv
, .mov
og .mp4
til whiteboardtavlen. Bekræft installationen ved at tjekke versionerne af både FFmpeg og 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)
OpenMeetings understøtter flere typer databaseservere, såsom MySQL, PostgreSQL, Apache, Derby og Oracle. I denne vejledning vil vi bruge PostgreSQL-serveren til at være vært for OpenMeeting-databasen.
PostgreSQL er et objektrelationelt databasesystem og kendt for dets stabilitet og hastighed. Standardlageret yum
indeholder en gammel version af PostgreSQL, så tilføj PostgreSQL-lageret for den seneste version af applikationen til systemet.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installer PostgreSQL-databaseserveren.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialiser databasen.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Start PostgreSQL-serveren og aktiver den til at starte automatisk ved opstart.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Skift adgangskoden til standard PostgreSQL-brugeren.
sudo passwd postgres
Log ind som PostgreSQL-bruger.
sudo su - postgres
Opret en ny PostgreSQL-bruger til OpenMeetings-brugeren.
createuser openmeetings
Du kan bruge et hvilket som helst brugernavn i stedet for openmeetings
. Skift til PostgreSQL-skallen.
psql
Indstil en adgangskode for den nyoprettede bruger til OpenMeetings-databasen.
ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';
Erstat DBPassword
med en sikker adgangskode. Opret en ny database til OpenMeetings-installationen.
CREATE DATABASE openmeetings OWNER openmeetings;
Udgang fra psql
skallen.
\q
Skift til sudo
brugeren.
exit
Rediger pg_hba.conf
filen for at aktivere MD5-baseret godkendelse.
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Find følgende linjer og skift værdierne i METHOD
kolonnen fra ident
til 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
Når den er opdateret, vil konfigurationen se sådan ud.
# 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
Save the file and exit from the editor. Restart PostgreSQL so that the changes can take effect.
sudo systemctl restart postgresql-10
Since all the required dependencies are installed. Create a new user for OpenMeetings. Using a non-root user for running OpenMeetings is recommended for the security of the server.
sudo adduser -b /var -s /sbin/nologin openmeetings
The above command will also create the home directory of the openmeetings
user in /var/openmeetings
.
Check the Apache OpenMeetings download page to obtain the link to the latest available release. Download the OpenMeetings archive.
cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz
Extract the archive into the /var/openmeetings
directory.
sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings
Provide ownership of the files to the OpenMeetings user we have created earlier.
sudo chown -R openmeetings:openmeetings /var/openmeetings
Before we start the application, we will need to modify the firewall to allow ports 5080
and 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
You can now start the application.
sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings
You can now access http://192.168.1.1:5080/openmeetings
in your favorite browser. You will see the welcome screen with instructions to install GhostScript.
Since we have already installed GhostScript, proceed further. On next interface, you will be prompted to provide database server details. Select database type "PostgreSql
" and provide your database server details that you configured during PostgreSQL installation.
Click on the "Check
" button and you should get the message: "Database check was successful
". Provide your administrator account details and a group name in the next interface.
Configure the basic settings of your installation; such as to allow self-registration, email verification, and default language. Also, provide your SMTP server details. If you do not have an SMTP server ready than you can also provide the SMTP details later in the administrator dashboard.
It will ask you for the path to the binaries of different applications. Provide /usr/bin
as the path for ImageMagick, FFmpeg, and SoX. If the application is providing errors for the path entered, then you can use which <binary_name>
to find the absolute path to the binary. For example, which ffmpeg
should give you /usr/bin/ffmpeg
as output. Use /opt/openoffice4
as the path to the OpenOffice binaries.
You can skip the configuration on the next interface since we are going to use the default values. Finally, click the "Finish
" button to install the application and write the database.
OpenMeetings is now installed on your server. To make it more production friendly, we will setup Systemd to manage the OpenMeetings server. We will also configure Nginx with Let's Encrypt SSL as the secured reverse proxy to serve the application.
Though we can easily start and stop the application using the command above, it is recommended to set up a Systemd service unit to manage the application. This will also ensure that the service is automatically started on boot time and failures.
Stop the OpenMeetings server either by pressing "Ctrl+C
" or by killing the shell of the openmeetings
user.
sudo pkill -KILL -u openmeetings
Opret en ny Systemd-enhedsfil til OpenMeetings Server.
sudo nano /etc/systemd/system/openmeetings.service
Udfyld filen.
[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
Start OpenMeetings-serveren og aktiver den til automatisk at starte ved opstart.
sudo systemctl start openmeetings
sudo systemctl enable openmeetings
For at kontrollere status for tjenesten kan du køre følgende.
sudo systemctl status openmeetings
Du vil se et lignende output.
[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.
Som standard lytter OpenMeetings til port 5080
. Hvis forbindelsen mellem browseren og serveren ikke er krypteret med SSL, vil logins og andre oplysninger blive sendt med almindelig tekst. Dette kan være en potentiel trussel, da nogen, der aflytter netværket, kan få oplysningerne. For at afhjælpe dette problem vil vi konfigurere Nginx som den omvendte proxy, der lytter til standard HTTPS-porten og sender alle anmodninger til OpenMeetings-serveren.
Installer Nginx.
sudo yum -y install nginx
Start Nginx og aktiver den til automatisk at starte ved opstart.
sudo systemctl start nginx
sudo systemctl enable nginx
Installer Certbot, som er klientapplikationen til Let's Encrypt CA.
sudo yum -y install certbot
Før du kan anmode om certifikaterne, skal du tillade porte 80
og/ 443
eller standard HTTP
og HTTPS
tjenester gennem firewallen.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Bemærk: For at få certifikater fra Let's Encrypt CA, skal det domæne, som certifikaterne skal genereres for, pege mod serveren. Hvis ikke, skal du foretage de nødvendige ændringer i domænets DNS-poster og vente på, at DNS'en udbreder sig, før du foretager certifikatanmodningen igen. Certbot kontrollerer domæneautoriteten, før certifikaterne leveres.
Generer SSL-certifikaterne.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d meetings.example.com
De genererede certifikater vil sandsynligvis blive gemt i /etc/letsencrypt/live/meetings.example.com/
. SSL-certifikatet vil blive gemt som fullchain.pem
og privat nøgle vil blive gemt som privkey.pem
.
Lad os kryptere certifikater udløber om 90 dage, derfor anbefales det at konfigurere automatisk fornyelse af certifikaterne ved hjælp af Cron-job.
Åbn cron-jobfilen.
sudo crontab -e
Tilføj følgende linje i slutningen af filen.
30 5 * * * /usr/bin/certbot renew --quiet
Ovenstående cron-job kører hver dag kl. 5:30. Hvis certifikatet udløber, vil det automatisk blive fornyet.
Skift nu Nginx-standardkonfigurationsfilen for at fjerne default_server
linjen.
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
Opret en ny konfigurationsfil til OpenMeetings Server.
sudo nano /etc/nginx/conf.d/meetings.example.com.conf
Udfyld filen.
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";
}
}
Tjek for fejl i den nye konfigurationsfil.
sudo nginx -t
Hvis du ser følgende output, er konfigurationen fejlfri.
[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
Hvis du har modtaget en form for fejl, skal du sørge for at dobbelttjekke stien til SSL-certifikaterne. Genstart Nginx-webserveren for at implementere ændringen i konfigurationen.
sudo systemctl restart nginx
Før du kan begynde at bruge applikationen på det SSL-sikrede websted, skal du foretage en konfigurationsændring i OpenMeetings. Log ind på dit OpenMeetings administrative dashboard og naviger til " Administration >> Configuration
". I tabellen over ID, nøgle og værdi; finde application.base.url
. Skift dens værdi til i https://meetings.example.com
henhold til dit domænenavn. Gem konfigurationen ved at klikke på gem-ikonet ovenfor.
Genstart OpenMeetings-tjenesten.
sudo systemctl restart openmeetings
Nu kan du gå til at https://meetings.example.com
bruge din yndlingswebbrowser og logge ind for at bruge applikationen.
Tillykke, Apache OpenMeetings er nu installeret på din server. Du kan invitere dine venner og begynde at bruge OpenMeetings til onlinekonferencer.
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? osTicket er et open source kundesupport billetsystem. osTicket-kildekoden er offentligt hostet på Github. I denne tutorial
Bruger du et andet system? Sylius er en moderne e-handelsplatform til PHP, baseret på Symfony Framework. Sylius-kilden er på GitHub. Denne guide vil gå
Cezerin er en open source eCommerce progressiv webapp bygget ved hjælp af React og Node.js. I denne vejledning lærer du, hvordan du implementerer en Cezerin til produktion
Bruger du et andet system? Apache OpenMeetings er en open source webkonferenceapplikation. Det er skrevet i Java og understøtter flere databaseservere. jeg
Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig
Bruger du et andet system? Akaunting er en gratis open source og online regnskabssoftware designet til små virksomheder og freelancere. Den er bygget vid
Bruger du et andet system? Mailtrain er en open source selvhostet nyhedsbrev-app bygget på Node.js og MySQL/MariaDB. Mailtrains-kilden er på GitHub. Thi
Bruger du et andet system? Akaunting er en gratis open source og online regnskabssoftware designet til små virksomheder og freelancere. Den er bygget vid
Introduktion Denne tutorial demonstrerer OpenBSD som en e-handelsløsning, der bruger PrestaShop og Apache. Apache er påkrævet, fordi PrestaShop har kompleks UR
Bruger du et andet system? Mailtrain er en open source selvhostet nyhedsbrev-app bygget på Node.js og MySQL/MariaDB. Mailtrains-kilden er på GitHub. Thi
Bruger du et andet system? InvoicePlane er en gratis og open source faktureringsapplikation. Dens kildekode kan findes på dette Github-lager. Denne guide
Bruger du et andet system? osTicket er et open source kundesupport billetsystem. osTicket-kildekoden er offentligt hostet på Github. I denne tutorial
Bruger du et andet system? Open Web Analytics (OWA) er et open source webanalyseprogram, der kan bruges til at spore og analysere, hvordan folk bruger din hjemmeside
Bruger du et andet system? Open Web Analytics (OWA) er et open source webanalyseprogram, der kan bruges til at spore og analysere, hvordan folk bruger din hjemmeside
Bruger du et andet system? Osclass er et open source-projekt, der giver dig mulighed for nemt at oprette et klassificeret websted uden nogen teknisk viden. Dens kilde
Bruger du et andet system? Osclass er et open source-projekt, der giver dig mulighed for nemt at oprette et klassificeret websted uden nogen teknisk viden. Dens kilde
Bruger du et andet system? Apache OpenMeetings er en open source webkonferenceapplikation. Det er skrevet i Java og understøtter flere databaseservere. jeg
Bruger du et andet system? X-Cart er en ekstremt fleksibel open source e-handelsplatform med tonsvis af funktioner og integrationer. X-Cart kildekoden er vært
Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.
Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.
Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.
Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.
Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...
Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.
Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af dataene. Denne blog dækker udviklingen af datalagring på basis af en infografik.
Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.
I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.
For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af mac-maskiner. Læs denne artikel for at lære mere