GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Etherpad en Debian 11

En este tutorial, le mostraremos cómo instalar Etherpad en Debian 11. Para aquellos de ustedes que no lo sabían, Etherpad está escrito en Node.js y admite miles de aplicaciones reales simultáneas. usuarios de tiempo. Etherpad es un editor altamente personalizable con el soporte de varios complementos. Y también admite formatos de documentos modernos como doc, pdf y muchos más.

Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo ' a los comandos para obtener privilegios de root. Le mostraré paso a paso la instalación de Etherpad en Debian 11 (Bullseye).

Requisitos previos

  • Un servidor que ejecute uno de los siguientes sistemas operativos:Debian 10 o Debian 11.
  • Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas
  • Un non-root sudo user o acceder al root user . Recomendamos actuar como un non-root sudo user , sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.

Instalar Etherpad en Debian 11 Bullseye

Paso 1. Antes de instalar cualquier software, es importante asegurarse de que su sistema esté actualizado ejecutando el siguiente apt comandos en la terminal:

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

Paso 2. Instalación de Node.js.

Etherpad está escrito en Node.js, por lo que debe instalarse en su servidor:

curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -

A continuación, instale Node.js 16.x desde el repositorio de Nodesource ejecutando el siguiente comando:

sudo apt install nodejs

Verifique la versión de Node.js:

node --version

Paso 3. Instalación de MariaDB.

Ejecute el siguiente comando para instalar MariaDB en su servidor:

sudo apt install mariadb-server

De forma predeterminada, MariaDB no está reforzado. Puede proteger MariaDB utilizando mysql_secure_installation texto. Debe leer y seguir cada paso cuidadosamente, que establecerá la contraseña raíz, eliminará a los usuarios anónimos, no permitirá el inicio de sesión raíz remoto y eliminará la base de datos de prueba y el acceso a MariaDB seguro:

mysql_secure_installation

Configúralo así:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

A continuación, debemos iniciar sesión en la consola de MariaDB y crear una base de datos para Etherpad. Ejecute el siguiente comando:

mysql -u root -p

Esto le pedirá una contraseña, así que ingrese su contraseña raíz de MariaDB y presione Enter. Una vez que haya iniciado sesión en su servidor de base de datos, debe crear una base de datos para la instalación de Etherpad:

MariaDB [(none)]> CREATE DATABASE etherpad_db;
MariaDB [(none)]> CREATE USER 'etherpad_user'@'localhost' IDENTIFIED BY 'your-strong-password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON etherpad_db.* to etherpad_user@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

Paso 4. Instalación de Etherpad en Debian 11.

De forma predeterminada, Etherpad no está disponible en el repositorio base de Debian 11. Entonces, ahora descargamos la última versión estable de Etherpad desde la página oficial:

sudo adduser --system --no-create-home --home=/opt/etherpad-lite --group etherpad
git clone --branch master https://github.com/ether/etherpad-lite.git

Tendremos que cambiar algunos permisos de carpetas:

sudo chown -R etherpad:etherpad etherpad-lite

A continuación, navegue hasta el directorio 'etherpad-lite/ ‘ e instale todas las dependencias de Node.js usando el script de instalación ‘installDeps.sh :

cd /opt/etherpad-lite
sudo su -s /bin/bash -c "./bin/installDeps.sh" etherpad

Paso 5. Configure Etherpad.

Ahora editamos el settings.json archivo y defina la configuración de su base de datos:

nano settings.json

Comente las siguientes líneas:

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

Cambie las siguientes líneas:

  "dbType" : "mysql",
  "dbSettings" : {
    "user":     "etherpad_user",
    "host":     "localhost",
    "port":     3306,
    "password": "your-strong-password",
    "database": "etherpad_db",
    "charset":  "utf8mb4"
  },

Paso 6. Cree el archivo de servicio de Systemd para Etherpad.

Ahora cree un systemd archivo de servicio para administrar el servicio Etherpad:

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

Agregue el siguiente archivo:

[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target

[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/opt/etherpad-lite
Environment=NODE_ENV=production
ExecStart=/usr/bin/node --experimental-worker /opt/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js
# use mysql plus a complete settings.json to avoid Service hold-off time over, scheduling restart.
Restart=always

[Install]
WantedBy=multi-user.target

Guarde y cierre el archivo, luego vuelva a cargar el systemd administrador para aplicar un nuevo archivo de servicio:

sudo systemctl daemon-reload
sudo systemctl enable --now etherpad
sudo systemctl status etherpad

Paso 7. Configure el proxy inverso de Nginx para Etherpad.

Primero, instale Nginx con el siguiente comando a continuación:

sudo apt install nginx

Una vez que Nginx esté instalado, inicie y habilite el servicio Nginx usando el siguiente comando:

sudo systemctl start nginx
sudo systemctl enable nginx

Luego, cree un archivo de configuración de host virtual Nginx:

sudo nano /etc/nginx/sites-available/etherpad

Agregue el siguiente archivo:

# enforce HTTPS
server {
    listen       80;
    listen       [::]:80;
    server_name  etherpad.example.io;
    return 301   https://$host$request_uri;
}

# we're in the http context here
map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen       443 ssl http2;
    listen       [::]:443 ssl http2;
    server_name  etherpad.your-domain.com;

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

    ssl_certificate      /etc/letsencrypt/live/etherpad.example.io/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/etherpad.example.io/privkey.pem;

    ssl_session_timeout  5m;

    ssl_protocols TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers "EECDH+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";

    location / {
        proxy_pass         http://127.0.0.1:9001;
        proxy_buffering    off; # be careful, this line doesn't override any proxy_buffering on set in a conf.d/file.conf
        proxy_set_header   Host $host;
        proxy_pass_header  Server;

        # Note you might want to pass these headers etc too.
        proxy_set_header    X-Real-IP $remote_addr; # https://nginx.org/en/docs/http/ngx_http_proxy_module.html
        proxy_set_header    X-Forwarded-For $remote_addr; # EP logs to show the actual remote IP
        proxy_set_header    X-Forwarded-Proto $scheme; # for EP to set secure cookie flag when https is used
        proxy_http_version  1.1; # recommended with keepalive connections

        # WebSocket proxying - from https://nginx.org/en/docs/http/websocket.html
        proxy_set_header  Upgrade $http_upgrade;
        proxy_set_header  Connection $connection_upgrade;
    }
}

Guarde y cierre el archivo, luego active la configuración del host virtual:

sudo ln -s /etc/nginx/sites-available/etherpad /etc/nginx/sites-enabled/
nginx -t
sudo systemctl restart nginx

Paso 8. Configure el cortafuegos.

De forma predeterminada, el cortafuegos UFW está habilitado en Debian. Dependiendo de su archivo de configuración de host virtual de Apache, abra los puertos 80 y 443 para permitir el tráfico HTTP y HTTPS:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

Paso 9. Acceso a la interfaz web de Etherpad.

Una vez instalado correctamente, abra su navegador web y acceda a Matomo usando la URL https://etherpad.your-domain.com . Será redirigido a la página de interfaz de Matomo:

¡Felicitaciones! Ha instalado Etherpad con éxito. Gracias por usar este tutorial para instalar la última versión de Etherpad en Debian 11 Bullseye. Para obtener ayuda adicional o información útil, le recomendamos que consulte el Etherpad oficial sitio web.


Debian
  1. Cómo instalar Tomcat 8.5 en Debian 9

  2. Cómo instalar Nextcloud en Debian 9

  3. Cómo instalar PostgreSQL 11/10 en Debian 9 y Debian 8

  4. Cómo instalar MongoDB 4.4 / 4.2 en Debian 9

  5. Cómo instalar PostgreSQL en Debian 11 / Debian 10

Cómo instalar MariaDB en Debian 11

Cómo instalar Nginx en Debian 11

Cómo instalar Nagios en Debian 10 / Debian 9

Cómo instalar LibreNMS en Debian 11 / Debian 10

Cómo instalar Yclas en Debian 11

Cómo instalar Go en Debian 11