GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Etherpad dell'editor collaborativo in tempo reale su Ubuntu 18.04

Etherpad è un editor collaborativo in tempo reale basato su Node.js. È un editor collaborativo open source basato sul Web per l'accesso multiutente con la possibilità di importare/esportare in vari formati di file di ufficio e un editor online altamente personalizzabile.

In questo tutorial, ti guiderò passo dopo passo per installare e configurare Etherpad-lite su Ubuntu 18.04 Server. Installeremo Etherpad-lite con MySQL come database, il server web Nginx come proxy inverso e abiliteremo la connessione sicura HTTPS su di esso.

Prerequisiti

  • Server Ubuntu 18.04
  • Privilegi di root

Cosa faremo?

  1. Installa le dipendenze dei pacchetti
  2. Installa Nodejs
  3. Installa e configura MySQL
  4. Scarica Etherpad
  5. Configura Etherpad
  6. Configura Etherpad come servizio
  7. Configura Nginx come proxy inverso per Etherpad
  8. Configura Firewall UFW
  9. Test

Passaggio 1:installazione delle dipendenze dei pacchetti

Il primo passo che faremo in questa guida è installare tutte le dipendenze dei pacchetti per l'installazione di Nodejs.

Esegui il comando apt di seguito.

sudo apt install gzip git curl python libssl-dev pkg-config gcc g++ make build-essential -y

Attendi tutta l'installazione.

Passaggio 2 - Installa Nodejs

Etherpad richiede Node.js>=6.9 e in questo passaggio installeremo Nodejs 9.11 che può essere installato dal repository nodesource.

Aggiungi il repository Nodejs nodesource e installa il pacchetto Node.js utilizzando i comandi seguenti.

curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -
sudo apt install -y nodejs

Successivamente, controlla i comandi nodejs e npm.

nodejs --version
npm --version

Node.js v9.11 è stato installato sul server Ubuntu 18.04.

Fase 3 - Installa e configura MySQL

In questo tutorial, useremo MySQL come database per Etherpad.

Installa il server di database MySQL usando il comando apt di seguito.

sudo apt install mysql-server mysql-client

Al termine dell'installazione, avvia il servizio mysql e abilitalo per l'avvio ogni volta all'avvio del sistema.

sudo systemctl start mysql
sudo systemctl abilita mysql

Il server MySQL è stato installato.

Successivamente, configureremo la password di root mysql e creeremo un nuovo database e un nuovo utente per l'installazione dell'etherpad.

Per configurare la password di root di MySQL, esegui il comando seguente.

installazione_mysql_secure

Digita la tua password di root mysql complessa.

Ora accedi alla shell di mysql usando l'utente root.

mysql -u root -p

Crea un nuovo database chiamato "etherpad_db" e l'utente "hakase" ed esegui query mysql di seguito.

crea il database etherpad_db;
concedi tutti i privilegi su etherpad_db.* a [email protected] identificato da '[email protected]#';
privilegi di svuotamento;

Il database MySQL per l'installazione di etherpad è stato creato.

Fase 4 - Scarica Etherpad

In questo passaggio creeremo un nuovo utente e scaricheremo il codice sorgente dell'etherpad.

Crea un nuovo utente chiamato 'etherpad' e accedi all'utente.

useradd -m -s /bin/bash etherpad
su - etherpad

Ora clona il repository etherpad.

git clone git://github.com/ether/etherpad-lite.git

Vai alla directory 'etherpad-lite/' ed esegui lo script bash per avviare etherpad.

cd etherpad-lite/
bin/run.sh

Otterrai il risultato come di seguito.

Apri il tuo browser web e digita l'indirizzo IP del server con la porta '9001'.

http://192.168.33.10:9001/

E vedrai la home page di etherpad.

Torna al tuo terminale e premi 'Ctrl+c' per uscire dall'applicazione.

Passaggio 5 - Configura Etherpad

In questo passaggio, eseguiremo la configurazione di base dell'editor collaborativo etherpad.

Accedi all'utente etherpad e vai alla directory 'etherpad-lite'.

su - etherpad
cd etherpad-lite/

Modifica la configurazione 'settings.json' usando l'editor vim.

vim settings.json

Cambia l'indirizzo IP in "127.0.0.1" o localhost, perché eseguiremo l'etherpad sul proxy inverso Nginx.

  "ip":"127.0.0.1",
  "porta" :9001,

Ora disabilita il database sporco predefinito aggiungendo il commento '/* .... */' e incolla la configurazione del database MySQL.

   /*
  "dbType" :"dirty",
  "dbSettings" :{
                   "filename" :"var/dirty.db"
                 },
   */

Configurazione del database MySQL.

  "dbType" :"mysql",
  "dbSettings" :{
                  "user"     :"hakase",
                   "host"    :"localhost",
                    "port "    :3306,
                  "password":"[email protected]#",
                  "database":"etherpad_db",
                  "charset" :"utf8mb4"        /pre>

Successivamente, abiliteremo l'utente amministratore rimuovendo il commento da quelle righe e cambieremo il valore della password con una nuova password.

  "users":{
    "admin":{
      // "password" può essere sostituito con "hash" se installi ep_hash_auth
      "password":"[email protected] #",
      "is_admin":true
    },
    "user":{
      // "password" può essere sostituito con "hash" se installi ep_hash_auth
      "password":"[email protected]#",
      "is_admin":false
    }
  },

Salva ed esci.

La configurazione di base dell'etherpad è stata completata.

Passaggio 6 - Configura Etherpad come servizio

Ora eseguiremo etherpad come servizio systemd sul nostro sistema Ubuntu.

Vai alla directory '/etc/systemd/system' e crea un nuovo file di servizio chiamato 'etherpad.service'.

cd /etc/systemd/system/
vim etherpad.service

Incolla le configurazioni di seguito.

[Unità]
Description=Etherpad-lite, l'editor collaborativo.
After=syslog.target network.target

[Servizio]
Tipo=simple
Utente=etherpad
Gruppo=etherpad
WorkingDirectory=/home/etherpad/etherpad-lite
Ambiente=NODE_ENV=produzione
ExecStart=/usr/bin/nodejs / home/etherpad/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js
Restart=always # usa mysql più un settings.json completo per evitare il tempo di attesa del servizio, programmando il riavvio.

[Installa]
WantedBy=multi-user.target

Salva ed esci.

Ricarica gli elenchi dei servizi di sistema.

sudo systemctl daemon-reload

Avvia il servizio etherpad e abilitalo all'avvio ogni volta all'avvio del sistema.

sudo systemctl avvia etherpad
sudo systemctl abilita etherpad

E l'etere è attivo e funzionante come servizio sull'ip localhost con la porta predefinita 9001.

Verifica il servizio utilizzando i comandi seguenti.

sudo systemctl status etherpad
netstat -plntu

Passaggio 7 - Installa e configura Nginx come proxy inverso

In questo passaggio, installeremo e configureremo il server web Nginx come proxy inverso per il servizio etherpad.

Installa il server web nginx usando il comando apt di seguito.

sudo apt install nginx -y

Al termine dell'installazione, vai alla directory '/etc/nginx/sites-available' e crea un nuovo host virtuale 'etherpad'.

cd /etc/nginx/sites-available/
vim etherpad

Incolla le configurazioni di seguito.

server {
    listen      80;
    server_name pad.hakase.io;
    riscrivi     ^(.*)   https://$server_name$1 permanente;
}

# siamo nel contesto http qui
map $http_upgrade $connection_upgrade {
  aggiornamento predefinito;
  ''      close;
}

server {
        listen       443;
        server_name  pad.hakase.io;

       access_log  /var/log/nginx/eplite.access.log;
       log_errori   / var/log/nginx/eplite.error.log;

        ssl                 su;
        ssl_certificate      /etc/nginx/ssl/fullchain.pem;
        ssl_certificate_key  /etc/nginx/ /privkey.pem;

        ssl_session_timeout  5m;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_ciphers A+ECDH+EC AESGCM EECDH+arSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";

        posizione / {
            proxy_pass             http://localhost:9001/;
            proxy_set_header       Host $host;
            proxy_pass_header Server;
            # attenzione, questa riga non sovrascrive alcun proxy_buffering sul set in un conf.d/file.conf
           proxy_buffering disattivato;
            proxy_set_header X-Real- IP $indirizzo_remoto; # http://wiki.nginx.org/HttpProxyModule
            proxy_set_header X-Forwarded-For $remote_addr; # registri EP per mostrare l'IP remoto effettivo
           proxy_set_header X-Forwarded-Proto $scheme; # per EP per impostare un cookie sicuro quando viene utilizzato https
           proxy_set_header Host $host; # passa l'intestazione dell'host                                                
           proxy_http_versione 1.1; # consigliato con le connessioni Keepalive
# WebSocket Proxying - da http://nginx.org/en/docs/http/websocket.html
proxy_set_header upgrade $ http_upgrade;
proxy_set connection $ connect_upgrade;
        }
}

Salva ed esci.

Nota:

  • Assicurati di modificare il percorso dell'SSL con i tuoi certificati SSL.
  • Cambia il dominio etherpad 'pad.hakase.io' con il tuo nome di dominio.

Ora attiva l'host virtuale etherpad e verifica la configurazione.

ln -s /etc/nginx/sites-available/etherpad /etc/nginx/sites-enabled/
nginx -t

Assicurati che non ci siano errori, quindi avvia il servizio nginx e abilitalo per l'avvio ogni volta all'avvio del sistema.

sudo systemctl riavvia nginx
sudo systemctl abilita nginx

L'installazione e la configurazione di Nginx come proxy inverso etherpad sono state completate correttamente.

Passaggio 8 - Configurazione del firewall UFW

Per la configurazione del firewall, vogliamo solo aprire i servizi di porta SSH, HTTP e HTTPS.

Esegui i comandi ufw di seguito.

sudo fuw consentire ssh
sudo ufw consentire http
sudo ufw consentire https

Quindi abilita il firewall ufw.

sudo ufw abilita

E la configurazione del firewall ufw è stata completata.

Fase 9 - Test

Apri il tuo browser web e digita il nome di dominio etherpad, il mio è: http://pad.hakase.io/

Ora verrai reindirizzato alla connessione protetta HTTPS.

Crea un nuovo pad digitando il nome del pad sulla casella e fai clic sul pulsante 'OK'.

E otterrai l'editor Etherpad come di seguito.

Quindi, apri l'URL dell'amministratore dell'etherpad. Il mio è https://pad.hakase.io/admin/

Ti verrà chiesto il nome utente e la password dell'amministratore. Digita il tuo utente e la tua password, quindi fai clic sul pulsante Accedi.

E otterrai la pagina di amministrazione Etherpad predefinita di seguito.

- Configurazione Etherpad settings.json

- Gestore plug-in Etherpad

L'installazione di Etherpad con MySQL e proxy inverso Nginx su Ubuntu 18.04 è stata completata con successo.


Ubuntu
  1. Come installare MySQL 8.0 in Ubuntu 18.04

  2. Come installare MySQL su Ubuntu 20.04

  3. Installa l'editor collaborativo in tempo reale basato sul Web Etherpad su Ubuntu 16.04 Linux

  4. Come installare MySQL su Ubuntu 18.04

  5. Come installare Etherpad su Ubuntu 20.04

Come installare Kate Editor su Ubuntu 20.04

Come installare Lychee su Ubuntu 14.04

Come installare Magento su Ubuntu 14.04

Come installare Gibbon su Ubuntu 14.04

Come installare Moodle su Ubuntu 14.04

Come installare MySQL su Ubuntu 22.04