Instalação Etherpad · 11 min read · Nov 02, 2025

Como Instalar Etherpad no AlmaLinux 9

Etherpad é uma alternativa gratuita e de código aberto a serviços como Google Docs e Zoho Writer. Etherpad é um editor de texto colaborativo e em tempo real para sua equipe, acessível de qualquer lugar a qualquer momento, pois Etherpad é um editor de texto baseado na web.

Quaisquer alterações no Etherpad ocorrem em tempo real, e o Etherpad também suporta versionamento e formatação embutida para equipes. Etherpad é um editor altamente personalizável com suporte a vários plugins. E também suporta formatos de documentos modernos, como doc, pdf, odt, markdown, etc.

Este tutorial mostrará como instalar o Etherpad em um servidor AlmaLinux 9 com um servidor de banco de dados MariaDB e um servidor web Nginx. Você também irá proteger o Etherpad via certificados SSL para habilitar o acesso seguro.

Pré-requisitos

Para completar este tutorial, certifique-se de ter o seguinte:

  • Um servidor AlmaLinux 9 - Esta demonstração usa um AlmaLinux com o nome do host almalinux9.
  • Um usuário não-root com privilégios sudo.
  • Um nome de domínio apontado para o endereço IP do servidor.
  • Certificados SSL gerados via Letsecnrypt e Certbot.

Instalando Dependências

Antes de instalar o Etherpad, você deve instalar algumas das dependências necessárias para o Etherpad, incluindo:

  • Ferramentas de Desenvolvimento
  • Node.js e NPM (Node Package Manager)
  • Servidor de banco de dados MariaDB
  • Servidor web Nginx

Complete estas etapas para instalar as dependências do Etherpad.

Instalando Ferramentas de Desenvolvimento

Primeiro, você deve instalar “Ferramentas de Desenvolvimento“ em seu servidor AlmaLinux. Digite o seguinte comando dnf para instalar “Ferramentas de Desenvolvimento“, insira y e pressione ENTER para prosseguir.

sudo dnf group install "Development Tools"

Em seguida, execute o seguinte comando para instalar algumas dependências adicionais. Quando solicitado, insira y para confirmar e pressione ENTER.

sudo dnf install gzip git curl python3-devel openssl-devel pkg-config

install dependencies

Instalando Node.js e NPM

Etherpad é um editor de colaboração e em tempo real baseado na web, principalmente escrito com Node.js. Para instalá-lo, você deve instalar o runtime JavaScript Node.js e o NPM (Node Package Manager).

No momento da redação deste texto, o Etherpad requer pelo menos Node.js v16, que está disponível por padrão no repositório appstream do AlmaLinux e você pode instalá-lo via DNF.

Execute o seguinte comando dnf para instalar Node.js e NPM. Insira y para confirmar a instalação e pressione ENTER.

sudo dnf install nodejs npm

Uma vez que o Node.js esteja instalado, execute o seguinte comando para adicionar o diretório /usr/local/bin à variável de ambiente PATH. Isso garantirá que alguns arquivos binários instalados via NPM possam ser executados no servidor.

echo "export PATH=$PATH:/usr/local/bin" >> ~/.bashrc  
source ~/.bashrc

Em seguida, execute o seguinte comando para localizar ambos os arquivos binários do Node.js e NPM.

which node  
which npm

Então, verifique a versão do Node.js e NPM usando o comando abaixo.

node --version  
npm --version

A saída exibida confirma que Node.js v16 e NPM 8.x estão instalados, e ambos os arquivos binários estão localizados no diretório /bin.

checking node.js and npm

Instalando o Servidor MariaDB

Por padrão, o Etherpad instalado usou SQLite como banco de dados. Você pode usar MariaDB/MySQL como banco de dados para grandes implantações da sua instalação do Etherpad.

Execute o comando dnf abaixo para instalar o Servidor MariaDB. Quando solicitado, insira y para confirmar e pressione ENTER.

sudo dnf install mariadb-server

install mariadb

Uma vez que o MariaDB esteja instalado, execute o seguinte comando para iniciar e habilitar o serviço MariaDB.

sudo systemctl start mariadb  
sudo systemctl enable mariadb

Em seguida, verifique o status do serviço MariaDB usando o comando abaixo.

sudo systemctl status mariadb

Se o servidor MariaDB estiver em execução, a saída deve ser exibida assim:

start enable mariadb

Instalando o Servidor Web Nginx

Após instalar o Servidor MariaDB, você instalará o servidor web Nginx que será usado como um proxy reverso para o Etherpad. Portanto, antes de prosseguir, certifique-se de que você tenha um nome de domínio apontado para o endereço IP do seu servidor e certificados SSL gerados via Letsencrypt e Certbot.

Execute o comando dnf abaixo para instalar o servidor web Nginx. Quando solicitado, insira y para confirmar e pressione ENTER.

sudo dnf install nginx

install nginx

Agora, execute o seguinte comando para iniciar e habilitar o serviço Nginx.

sudo systemctl start nginx  
sudo systemctl enable nginx

Depois disso, digite o seguinte comando para verificar o serviço Nginx e garantir que o serviço esteja em execução.

sudo systemctl status nginx

Se o serviço Nginx estiver em execução, você deve obter uma saída como esta:

start enable verify nginx

Em seguida, execute o seguinte comando para abrir as portas HTTP e HTTPS no seu servidor.

sudo firewall-cmd --add-service={http,https} --permanent  
sudo firewall-cmd --reload

Verifique a lista de portas e serviços abertos usando o seguinte comando. Você deve ver que tanto HTTP quanto HTTPS estão habilitados no firewalld.

sudo firewall-cmd --list-all

configure firewalld

Configurando o Servidor MariaDB

Nesta seção, você irá proteger o servidor MariaDB com a utilidade mariadb-secure-installation, em seguida, criar um novo banco de dados e usuário que serão usados para o Etherpad.

Execute o seguinte comando para começar a proteger o servidor MariaDB.

sudo mariadb-secure-installation

Após a execução do comando, você será questionado sobre as seguintes configurações:

  • Mudar o método de autenticação para o usuário root do MariaDB para unix_socket. Insira n para Não.
    Configurar a senha root do MariaDB. Insira y para confirmar e digite a nova senha root do MariaDB e repita.
    Desabilitar login remoto para o usuário root do MariaDB. Insira y para confirmar.
    Remover o banco de dados padrão de teste do MariaDB. Insira y para confirmar.
    Remover o usuário anônimo do MariaDB. Insira y para confirmar.
    Por último, insira y novamente para recarregar as permissões da tabela para aplicar as alterações.

Com o servidor MariaDB protegido, você irá criar um novo banco de dados e usuário do MariaDB.

Faça login no servidor MariaDB usando o comando mariadb abaixo.

sudo mariadb -u root -p

Execute as seguintes consultas para criar um novo banco de dados e usuário do MariaDB para o Etherpad. Neste exemplo, você criará um novo banco de dados etherpad_lite_db e o usuário etherpaduser com a senha StrongPasswordEtherpadDB.

CREATE DATABASE etherpad_lite_db CHARACTER SET utf8mb4;  
CREATE USER etherpaduser@localhost IDENTIFIED BY 'StrongPasswordEtherpadDB';  
GRANT CREATE,ALTER,SELECT,INSERT,UPDATE,DELETE on etherpad_lite_db.* to etherpaduser@localhost;  
FLUSH PRIVILEGES;

create new database and user

Agora, execute a seguinte consulta para verificar as permissões para o usuário do MariaDB etherpaduser.

SHOW GRANTS FOR etherpaduser@localhost;  
quit

Você notará que o usuário do MariaDB etherpaduser tem permissões para acessar o banco de dados etherpad_lite_db.

show mariadb user privileges

Digite quit para sair do MariaDB.

Baixando e Instalando o Etherpad

Nesta seção, você começará a instalação do Etherpad criando o usuário do sistema, baixando o código-fonte do Etherpad, instalando as dependências do Etherpad, integrando o Etherpad com o banco de dados MariaDB e, em seguida, verificando a instalação executando-a via linha de comando.

Primeiro, execute o seguinte comando para criar um novo usuário e grupo do sistema ‘etherpad‘. Este usuário será usado para executar o serviço Etherpad.

sudo groupadd etherpad  
sudo adduser -r -M -d /opt/etherpad-lite -g etherpad etherpad

Baixe o código-fonte do Etherpad via git para o diretório de destino /opt/etherpad-lite.

git clone --branch master https://github.com/ether/etherpad-lite.git /opt/etherpad-lite

Uma vez que o código-fonte do Etherpad esteja baixado, execute o seguinte comando para alterar a propriedade do diretório /opt/etherpad-lite para o usuário e grupo ‘etherpad‘.

sudo chown -R etherpad:etherpad /opt/etherpad-lite

create user and download etherpad source code

Em seguida, mude o diretório de trabalho para o diretório /opt/etherpad-lite e instale as dependências do Etherpad usando o comando abaixo.

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

Após executar o comando, você deve obter o processo de instalação assim:

install etherpad dependencies

Quando a instalação estiver concluída, abra a configuração do Etherpad settings.json usando o seguinte comando do editor nano.

nano settings.json

Altere o título da sua instalação do Etherpad.

  "title": "Etherpad AlmaLinux 9",

Altere o endereço IP padrão para o Etherpad rodar para localhost ou 127.0.0.1.

  "ip": "127.0.0.1",  
  "port": 9001,

Remova a configuração do banco de dados padrão abaixo.

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

Altere os detalhes do banco de dados para usar o servidor MySQL/MariaDB assim. E certifique-se de alterar o nome do banco de dados, usuário e senha.

  "dbType" : "mysql",  
  "dbSettings" : {  
    "user":     "etherpaduser",  
    "host":     "localhost",  
    "port":     3306,  
    "password": "StrongPasswordEtherpadDB",  
    "database": "etherpad_lite_db",  
    "charset":  "utf8mb4"  
  },

Salve o arquivo e saia do editor quando terminar.

Em seguida, execute o seguinte comando para verificar e executar o Etherpad.

/bin/node --experimental-worker /opt/etherpad-lite/node_modules/ep_etherpad-lite/node/server.js

Se a configuração do banco de dados e a instalação do Etherpad forem bem-sucedidas, a seguinte saída será exibida:

running check etherpad

Pressione Ctrl+c para encerrar o processo.

Executando o Etherpad como Serviço Systemd

Com o Etherpad instalado, agora você irá configurar o Etherpad como um serviço systemd. Isso permite que você execute o Etherpad em segundo plano e gerencie facilmente o Etherpad via linha de comando systemctl.

Para começar, crie um novo arquivo de serviço systemd /lib/systemd/system/etherpad.service usando o seguinte comando do editor nano.

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

Insira a seguinte configuração no arquivo.

[Unit]  
Description=Etherpad-lite, o editor colaborativo.  
After=syslog.target network.target mariadb.service nginx.service  
  
[Service]  
Type=simple  
User=etherpad  
Group=etherpad  
WorkingDirectory=/opt/etherpad-lite  
Environment=NODE_ENV=production  
ExecStart=/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

Salve e feche o arquivo quando terminar.

Agora, execute o seguinte comando para recarregar o gerenciador systemd e aplicar o arquivo de serviço Etherpad ao seu sistema.

sudo systemctl daemon-reload

Em seguida, inicie e habilite o serviço Etherpad usando o comando abaixo.

sudo systemctl start etherpad  
sudo systemctl enable etherpad

Verifique o serviço Etherpad usando o seguinte comando. Se o serviço Etherpad estiver em execução, você deve obter uma saída como ‘ active (running) ‘.

sudo systemctl status etherpad

verify etherpad service

Você também pode verificar a lista de portas abertas em seu sistema usando o seguinte comando. E você deve ver que o Etherpad usa a porta 9001.

ss -tulpn | grep 9001

Configurando o Nginx como Proxy Reverso

Neste ponto, o Etherpad está em funcionamento na porta 9001. Para torná-lo acessível para os usuários finais, você pode usar o Nginx, que será usado como um proxy reverso. Antes de começar, certifique-se de que você tenha o nome de domínio que será usado para o Etherpad e tenha gerado certificados SSL via Letsencrypt e Certbot.

Crie uma nova configuração de bloco de servidor Nginx /etc/nginx/conf.d/etherpad.conf usando o comando do editor nano abaixo.

sudo nano /etc/nginx/conf.d/etherpad.conf

Insira a seguinte configuração e certifique-se de alterar os detalhes do nome de domínio e o caminho dos certificados SSL.

# enforce HTTPS  
server {  
    listen       80;  
    server_name  etherpad.howtoforge.local;  
    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;  
    server_name  etherpad.howtoforge.local;  
  
    access_log  /var/log/nginx/eplite.access.log;  
    error_log   /var/log/nginx/eplite.error.log;  
  
    ssl_certificate      /etc/letsencrypt/live/etherpad.howtoforge.local/fullchain.pem;  
    ssl_certificate_key  /etc/letsencrypt/live/etherpad.howtoforge.local/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;  
    }  
}

Salve o arquivo e feche o editor quando terminar.

Agora, execute o seguinte comando para garantir que você tenha a configuração correta e adequada. Se bem-sucedido, você deve receber uma mensagem como “Syntax is ok - test is successful“.

sudo nginx -t

Em seguida, digite o seguinte comando para reiniciar o serviço Nginx e aplicar as alterações.

sudo systemctl restart nginx

configure nginx as reverse proxy

Depois disso, abra seu navegador da web e visite o nome de domínio da instalação do Etherpad (ou seja: https://etherpad.howtoforge.local/). Você deve ver a página inicial padrão do seu editor colaborativo Etherpad.

Agora crie um novo pad digitando o nome do pad e clique em OK.

create new pad

Abaixo você pode ver agora comece a usar o Etherpad como o editor colaborativo.

etehrpad collaboratuive editor

Conclusão

Parabéns, você completou a instalação do Etherpad com o banco de dados MariaDB e o servidor web Nginx em um servidor AlmaLinux 9. Você também protegeu o Etherpad com certificados SSL além disso. Agora você pode começar a usar o Etherpad como seu principal editor colaborativo com seus amigos/grupos/equipe.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.