GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar el editor colaborativo en tiempo real Etherpad en Ubuntu 18.04

Etherpad es un editor colaborativo en tiempo real basado en Node.js. Es un editor colaborativo de código abierto basado en la web para el acceso de múltiples usuarios con la capacidad de importar/exportar a varios formatos de archivo de Office y un editor en línea altamente personalizable.

En este tutorial, lo guiaré paso a paso para instalar y configurar Etherpad-lite en el servidor Ubuntu 18.04. Instalaremos Etherpad-lite con MySQL como base de datos, el servidor web Nginx como proxy inverso y habilitaremos la conexión segura HTTPS en él.

Requisitos

  • Servidor Ubuntu 18.04
  • Privilegios de raíz

¿Qué haremos?

  1. Instalar dependencias de paquetes
  2. Instalar Nodejs
  3. Instalar y configurar MySQL
  4. Descargar Etherpad
  5. Configurar Etherpad
  6. Configurar Etherpad como servicio
  7. Configurar Nginx como proxy inverso para Etherpad
  8. Configurar el cortafuegos UFW
  9. Pruebas

Paso 1:instalar dependencias de paquetes

El primer paso que haremos en esta guía es instalar todas las dependencias de paquetes para la instalación de Nodejs.

Ejecute el comando apt a continuación.

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

Espere toda la instalación.

Paso 2:instalar Nodejs

Etherpad requiere Node.js>=6.9, y en este paso instalaremos Nodejs 9.11 que se puede instalar desde el repositorio de nodesource.

Agrega el repositorio de Nodesource Nodejs e instala el paquete Node.js usando los comandos a continuación.

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

Después de esto, verifique los comandos nodejs y npm.

nodejs --versión
npm --versión

Se instaló Node.js v9.11 en el servidor Ubuntu 18.04.

Paso 3:instalar y configurar MySQL

En este tutorial, utilizaremos MySQL como base de datos para Etherpad.

Instale el servidor de base de datos MySQL usando el comando apt a continuación.

sudo apt install mysql-server mysql-client

Una vez completada la instalación, inicie el servicio mysql y permita que se inicie cada vez que se inicie el sistema.

sudo systemctl iniciar mysql
sudo systemctl habilitar mysql

El servidor MySQL ha sido instalado.

A continuación, configuraremos la contraseña raíz de mysql y crearemos una nueva base de datos y un usuario para nuestra instalación de etherpad.

Para configurar la contraseña raíz de MySQL, ejecute el siguiente comando.

instalación_segura_mysql

Escriba su contraseña raíz mysql segura.

Ahora inicie sesión en mysql shell usando el usuario root.

mysql -u raíz -p

Cree una nueva base de datos llamada 'etherpad_db' y el usuario 'hakase', y ejecute las consultas mysql a continuación.

crear base de datos etherpad_db;
otorgar todos los privilegios en etherpad_db.* a [email protected] identificado por '[email protected]#';
privilegios de vaciado;

Se ha creado la base de datos MySQL para la instalación de etherpad.

Paso 4:descarga Etherpad

En este paso, crearemos un nuevo usuario y descargaremos el código fuente de etherpad.

Cree un nuevo usuario llamado 'etherpad' e inicie sesión en el usuario.

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

Ahora clone el repositorio de etherpad.

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

Vaya al directorio 'etherpad-lite/' y ejecute el script bash para iniciar etherpad.

cd etherpad-lite/
bin/run.sh

Obtendrá el resultado de la siguiente manera.

Abra su navegador web y escriba la dirección IP del servidor con el puerto '9001'.

http://192.168.33.10:9001/

Y verá la página de inicio de etherpad.

Regrese a su terminal y presione 'Ctrl+c' para salir de la aplicación.

Paso 5:configurar Etherpad

En este paso, haremos la configuración básica del editor colaborativo de etherpad.

Inicie sesión en el usuario de etherpad y vaya al directorio 'etherpad-lite'.

su - etherpad
cd etherpad-lite/

Edite la configuración 'settings.json' usando el editor vim.

configuraciones de vim.json

Cambie la dirección IP a '127.0.0.1' o localhost, porque ejecutaremos el etherpad en el proxy inverso Nginx.

  "ip":"127.0.0.1",
  "puerto":9001,

Ahora deshabilite la base de datos sucia predeterminada agregando el comentario '/* .... */' y pegue la configuración de la base de datos MySQL.

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

Configuración de la base de datos MySQL.

  "dbType" :"mysql",
  "dbSettings" :{
                   "usuario"    :"hakase",
                   "host"    :"localhost",
                   "puerto "    :3306,
                   "contraseña":"[email protected]#",
                  "base de datos":"etherpad_db",
                   "charset" :"utf8mb4"        /pre>

A continuación, habilitaremos el usuario administrador eliminando el comentario de esas líneas y cambiaremos el valor de la contraseña con una nueva contraseña.

  "usuarios":{
    "admin":{
      // "contraseña" se puede reemplazar por "hash" si instala ep_hash_auth
      "contraseña":"[email protected] #",
      "is_admin":true
    },
    "usuario":{
      // "contraseña" se puede reemplazar con "hash" si instala ep_hash_auth
      "contraseña":"[correo electrónico protegido]#",
      "is_admin":false
    }
  },

Guardar y salir.

La configuración básica de etherpad se ha completado.

Paso 6:configurar Etherpad como servicio

Ahora ejecutaremos etherpad como un servicio systemd en nuestro sistema ubuntu.

Vaya al directorio '/etc/systemd/system' y cree un nuevo archivo de servicio llamado 'etherpad.service'.

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

Pegue las configuraciones a continuación.

[Unidad]
Descripción=Etherpad-lite, el editor colaborativo.
Después=syslog.target network.target

[Servicio]
Tipo=simple
Usuario=etherpad
Grupo=etherpad
WorkingDirectory=/home/etherpad/etherpad-lite
Entorno=NODE_ENV=producción
ExecStart=/usr/bin/nodejs / home/etherpad/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js
Restart=always # use mysql más un archivo settings.json completo para evitar el tiempo de suspensión del servicio, programando el reinicio.

[Instalar]
Buscado por=multiusuario.objetivo

Guardar y salir.

Vuelva a cargar las listas de servicios de systemd.

sudo systemctl demonio-recargar

Inicie el servicio etherpad y permita que se inicie cada vez que se inicia el sistema.

sudo systemctl iniciar etherpad
sudo systemctl habilitar etherpad

Y el éter está funcionando como un servicio en la IP localhost con el puerto predeterminado 9001.

Verifique el servicio usando los comandos a continuación.

sudo systemctl status etherpad
netstat -plntu

Paso 7:instalar y configurar Nginx como proxy inverso

En este paso, instalaremos y configuraremos el servidor web Nginx como proxy inverso para el servicio etherpad.

Instale el servidor web nginx usando el comando apt a continuación.

sudo apt install nginx -y

Una vez completada la instalación, vaya al directorio '/etc/nginx/sites-available' y cree un nuevo host virtual 'etherpad'.

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

Pegue las configuraciones a continuación.

servidor {
    escuchar      80;
    nombre_servidor pad.hakase.io;
    reescribir     ^(.*)   https://$nombre_servidor$1 permanente;
}

# estamos en el contexto http aquí
mapa $http_upgrade $connection_upgrade {
  actualización predeterminada;
  ''      close;
}

servidor {
        escuchar       443;
        nombre_servidor  pad.hakase.io;

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

        ssl                  on;
        ssl_certificate      /etc/nginx/ssl/fullchain.pem;
        ssl_certificate_key  /etc/nginx/ss /privkey.pem;

        ssl_session_timeout  5 min;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers activado;
        ssl_ciphers "+CDH+ECDSA 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";

        ubicación / {
            proxy_pass             http://localhost:9001/;
            proxy_set_header       Host $host;             proxy_set_header X-Forwarded-For $remote_addr; # registros EP para mostrar la IP remota real
            proxy_set_header X-Forwarded-Proto $scheme; # para que EP establezca un indicador de cookies seguras cuando se usa https
            proxy_set_header Host $host; # pasar el encabezado del host                                                  
            proxy_http_version 1.1; # Recomendado con conexiones KeepAlive
# WebSocket proxying - de http://nginx.org/en/docs/http/websocket.html
proxy_set_header Upgrade $ http_upgrade;
proxy_set_header $ conexión_upgrade; <

        }
}

Guardar y salir.

Nota:

  • Asegúrese de cambiar la ruta del SSL con sus propios certificados SSL.
  • Cambie el dominio etherpad 'pad.hakase.io' con su propio nombre de dominio.

Ahora active el host virtual etherpad y pruebe la configuración.

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

Asegúrese de que no haya ningún error, luego inicie el servicio nginx y habilítelo para que se inicie cada vez que se inicie el sistema.

sudo systemctl reiniciar nginx
sudo systemctl habilitar nginx

La instalación y configuración de Nginx como proxy inverso etherpad se completó con éxito.

Paso 8:configurar el cortafuegos UFW

Para la configuración del firewall, solo queremos abrir los servicios de puerto SSH, HTTP y HTTPS.

Ejecute los comandos ufw a continuación.

sudo fuw permite ssh
sudo ufw permite http
sudo ufw permite https

Luego habilite el cortafuegos ufw.

habilitar sudo ufw

Y la configuración del cortafuegos ufw se ha completado.

Paso 9 - Prueba

Abra su navegador web y escriba el nombre de dominio de etherpad, el mío es: http://pad.hakase.io/

Ahora será redirigido a la conexión segura HTTS.

Cree un nuevo pad escribiendo el nombre del pad en el cuadro y haga clic en el botón 'Aceptar'.

Y obtendrá el editor Etherpad como se muestra a continuación.

A continuación, abra la URL de administración de etherpad. El mío es https://pad.hakase.io/admin/

Se le pedirá el nombre de usuario y la contraseña del administrador. Escriba su propio usuario y contraseña, luego haga clic en el botón Iniciar sesión.

Y obtendrá la página de administración predeterminada de Etherpad a continuación.

- Configuración de Etherpad settings.json

- Administrador de complementos de Etherpad

La instalación de Etherpad con MySQL y el proxy inverso Nginx en Ubuntu 18.04 se completó con éxito.


Ubuntu
  1. Cómo instalar MySQL 8.0 en Ubuntu 18.04

  2. Cómo instalar MySQL en Ubuntu 20.04

  3. Instale el editor colaborativo en tiempo real basado en la web Etherpad en Ubuntu 16.04 Linux

  4. Cómo instalar MySQL en Ubuntu 18.04

  5. Cómo instalar Etherpad en Ubuntu 20.04

Cómo instalar Kate Editor en Ubuntu 20.04

Cómo instalar Lychee en Ubuntu 14.04

Cómo instalar Magento en Ubuntu 14.04

Cómo instalar Gibbon en Ubuntu 14.04

Cómo instalar Moodle en Ubuntu 14.04

Cómo instalar MySQL en Ubuntu 22.04