Instalação NodeBB · 9 min read · Sep 10, 2025

Como Instalar NodeBB com Proxy Nginx no Servidor Ubuntu 24.04

NodeBB é um software de fórum de código aberto, baseado em Node.js, que fornece uma solução moderna e responsiva para comunidades online. Executando no Ubuntu Linux, o NodeBB aproveita a robustez e flexibilidade do sistema operacional para oferecer alto desempenho e escalabilidade. Ele utiliza uma combinação de MongoDB ou Redis para gerenciamento de banco de dados, tornando-o capaz de lidar com grandes volumes de conteúdo gerado por usuários de forma eficiente. O NodeBB é conhecido por suas notificações em tempo real, integração perfeita com várias plataformas de mídia social e um extenso ecossistema de plugins, permitindo que os administradores personalizem seus fóruns para atender a necessidades específicas. Além disso, seu design mobile-first garante uma experiência de usuário consistente e envolvente em todos os dispositivos. A estabilidade e os recursos de segurança do Ubuntu complementam o NodeBB, tornando-o uma escolha ideal para hospedar e gerenciar comunidades online dinâmicas.

Neste guia, você aprenderá como instalar o NodeBB no servidor Ubuntu 24.04 com o banco de dados MongoDB e o servidor web Nginx. Você também aprenderá como proteger o NodeBB com HTTPS através do Certbot e Letsencrypt.

Pré-requisitos

Para começar com este guia, certifique-se de ter:

  • Um servidor Ubuntu 24.04.
  • Um usuário não-root com privilégios de administrador.
  • Um nome de domínio apontado para um endereço IP do servidor.

Instalando o servidor MongoDB

O NodeBB é escrito com Node.js e usa o MongoDB como banco de dados. Para instalar o NodeBB, você deve instalar o servidor MongoDB em seu sistema. Nesta seção, você instalará o servidor MongoDB 7 no servidor Ubuntu 24.04.

Primeiro, execute o comando abaixo para instalar os pacotes gnupg e curl em seu sistema Ubuntu.

sudo apt install gnupg curl

instalar curl

Agora adicione a chave GPG e o repositório para o MongoDB usando o comando abaixo. Neste momento, o MongoDB 7.0 está disponível apenas até o Ubuntu 22.04, então usaremos isso em nosso servidor Ubuntu 24.04.

curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc |  
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg  
–dearmor
echo “deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

adicionar repositório mongodb

Em seguida, execute o seguinte comando apt para atualizar o índice de pacotes do Ubuntu e instalar o pacote mongodb-org. Digite Y para confirmar a instalação.

sudo apt update  
sudo apt install mongodb-org

instalar mongodb

Após a conclusão da instalação, execute o comando systemctl abaixo para recarregar o gerenciador systemd. Isso ocorre porque o novo arquivo de serviço mongod foi adicionado ao seu sistema.

sudo systemctl daemon-reload

Agora execute o comando systemctl abaixo para iniciar e habilitar o serviço MongoDB mongod. E então, verifique seu status para garantir que o serviço mongod esteja em execução.

sudo systemctl enable --now mongod  
sudo systemctl status mongod

Como você pode ver abaixo, o serviço mongod está habilitado e em execução.

verificar serviço mongod

Configurando o servidor MongoDB e banco de dados para NodeBB

Depois de instalar o servidor MongoDB, você habilitará a autenticação no MongoDB, criará um usuário administrador e, em seguida, criará um novo usuário e banco de dados para a instalação do NodeBB.

Faça login no shell do MongoDB com o comando do cliente mongosh abaixo.

mongosh

No shell mongosh, mude para o banco de dados admin e crie um novo usuário administrador para o MongoDB. Neste exemplo, você criará um usuário MongoDB admin com a senha MongoDBAdminPass. Certifique-se de alterar os detalhes do usuário com suas informações.

use admin  
db.createUser( { user: “admin”, pwd: “MongoDBAdminPass”, roles: [ { role: “root”, db: “admin” } ] } )

Depois disso, mude e crie o banco de dados nodebb, e então crie um novo usuário nodebb com a senha NodeBBPassword. O banco de dados e o usuário nodebb serão usados para a instalação do NodeBB.

use nodebb  
db.createUser( { user: “nodebb”, pwd: “NodeBBPassword”, roles: [ { role: “readWrite”, db: “nodebb” }, { role: “clusterMonitor”, db: “admin” } ] } )

Agora digite quit() para sair do shell mongosh.

quit()

criar usuário e banco de dados mongodb

Em seguida, abra a configuração padrão do MongoDB /etc/mongod.conf com o seguinte editor nano.

sudo nano /etc/mongod.conf

Descomente a opção security e mude a authorization para enabled. Isso habilitará a autenticação em seu servidor MongoDB.

security:  
  authorization: enabled

Quando terminar, salve o arquivo e saia do editor.

Agora execute o comando systemctl abaixo para reiniciar o serviço mongod e aplicar suas alterações. Após o serviço mongod ser reiniciado, a autenticação do MongoDB será habilitada.

sudo systemctl restart mongod

Execute o comando mongosh abaixo para se conectar como usuário nodebb ao banco de dados nodebb. Digite sua senha quando solicitado.

mongosh “mongodb://127.0.0.1:27017” --username nodebb --authenticationDatabase nodebb

Agora execute as seguintes consultas para verificar sua conexão com o servidor MongoDB.

db.runCommand( { connectionStatus: 1, showPrivileges: false } )

Abaixo, você se autenticou como um usuário nodebb no banco de dados nodebb.

Digite quit() para sair do shell do MongoDB.

verificar usuários

Instalando o NodeBB

Agora que você configurou o servidor MongoDB, você instalará o Node.js através do repositório oficial do Ubuntu e, em seguida, fará o download e instalará o NodeBB em seu sistema Ubuntu.

Antes de instalar o NodeBB, execute o seguinte comando apt para instalar o pacote Node.js e NPM em seu sistema Ubuntu. Digite Y para confirmar a instalação.

sudo apt install nodejs npm

instalar nodejs

Após a instalação, verifique as versões do Node.js e NPM com o seguinte - Você pode ver que o Node.js 18 e o NPM 9 estão instalados.

node --version  
npm --version

Agora execute o seguinte comando para criar um novo usuário e grupo do sistema nodebb. Este usuário será usado para executar a instalação do NodeBB.

sudo adduser --system --no-create-home --home=/opt/nodebb --group nodebb

Execute o comando git abaixo para baixar o código-fonte do NodeBB para o diretório /opt/nodebb e, em seguida, mude a propriedade dele para o usuário nodebb.

git clone -b v3.x https://github.com/NodeBB/NodeBB.git /opt/nodebb  
sudo chown -R nodebb:nodebb /opt/nodebb

adicionar usuário e baixar nodebb

Vá para o diretório /opt/nodebb e execute o comando de configuração do nodebb para iniciar a instalação do NodeBB.

cd /opt/nodebb  
sudo su -s /bin/bash -c “./nodebb setup” nodebb

Você será questionado sobre as seguintes configurações do NodeBB:

  • Insira seu nome de domínio para o NodeBB, como forum.howtoforge.local.
  • Pressione ENTER na configuração secreta do NodeBB. Deixe como padrão.
  • Digite não para desabilitar o acesso anônimo ao NodeBB.
  • Selecione o MongoDB como o banco de dados.
  • Insira os detalhes do seu banco de dados MongoDB no formato como mongodb://nodebb:[email protected]:27017/nodebb.
  • Insira o novo usuário administrador e o endereço de e-mail para o NodeBB.
  • Insira a senha para seu usuário administrador do NodeBB e repita.

Após a conclusão da instalação, você verá uma saída Configuração do NodeBB Concluída.

configuração completa

Para executar o NodeBB a partir da linha de comando, execute o seguinte comando de início do nodebb:

sudo su -s /bin/bash -c "./nodebb start" nodebb

Para parar o processo do NodeBB, use o comando de parada do nodebb abaixo.

sudo su -s /bin/bash -c "./nodebb stop" nodebb

iniciar e parar nodebb

Executando o NodeBB como um serviço systemd

Neste guia, você executará o NodeBB em segundo plano como um serviço systemd. Então agora você criará um novo arquivo de serviço para o NodeBB, o que facilita gerenciar o serviço NodeBB através da utilidade systemctl.

Crie um novo arquivo de serviço systemd /etc/systemd/system/nodebb.service com o seguinte editor nano.

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

Cole o seguinte arquivo de serviço para o NodeBB. Neste exemplo, você executará o serviço nodebb como um usuário nodebb.

[Unit]  
Description=NodeBB  
Documentation=https://docs.nodebb.org  
After=system.slice multi-user.target mongod.service  
  
[Service]  
Type=simple  
User=nodebb  
  
StandardError=syslog  
SyslogIdentifier=nodebb  
  
Environment=NODE_ENV=production  
WorkingDirectory=/opt/nodebb  
ExecStart=/usr/bin/env node loader.js --no-silent --no-daemon  
Restart=always  
  
[Install]  
WantedBy=multi-user.target

Salve o arquivo e saia do editor quando terminar.

Agora execute o comando systemctl abaixo para recarregar o gerenciador systemd e aplicar suas alterações.

sudo systemctl daemon-reload

Depois disso, inicie, habilite e verifique o serviço nodebb com o seguinte comando.

sudo systemctl enable --now nodebb  
sudo systemctl status nodebb

Você pode ver abaixo que o serviço nodebb está em execução em segundo plano como um serviço systemd.

serviço nodebb

Configurando o Nginx como um proxy reverso

Neste tutorial, você usará o servidor web Nginx como um proxy reverso para o NodeBB. Então agora você instalará o Nginx e criará um novo bloco de servidor para o proxy reverso. Certifique-se de que seu nome de domínio esteja apontado para o endereço IP do servidor.

Instale o servidor web Nginx em seu sistema com o seguinte comando apt install.

sudo apt install nginx -y

instalar nginx

Uma vez que a instalação esteja completa, crie uma nova configuração de bloco de servidor /etc/nginx/sites-available/nodebb com o editor nano.

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

Insira a seguinte configuração e certifique-se de alterar forum.howtoforge.local para o seu nome de domínio. Com isso, você configurará um proxy reverso para o NodeBB que está em execução em segundo plano na porta 4567.

server {  
 listen 80;  
  
 server_name forum.howtoforge.local;  
  
 location / {  
 proxy_set_header X-Real-IP $remote_addr;  
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
 proxy_set_header X-Forwarded-Proto $scheme;  
 proxy_set_header Host $http_host;  
 proxy_set_header X-NginX-Proxy true;  
  
 proxy_pass http://127.0.0.1:4567;  
 proxy_redirect off;  
  
 # Suporte ao Socket.IO  
 proxy_http_version 1.1;  
 proxy_set_header Upgrade $http_upgrade;  
 proxy_set_header Connection "upgrade";  
 }  
}

Salve o arquivo e saia do editor.

Agora execute o comando abaixo para ativar o arquivo de bloco de servidor nodebb e verificar sua configuração do Nginx. Se você estiver correto e tiver uma configuração adequada do Nginx, verá uma saída a sintaxe está ok - o teste foi bem-sucedido.

sudo ln -s /etc/nginx/sites-available/nodebb /etc/nginx/sites-enabled/  
sudo nginx -t

configurar nginx

Por último, execute o comando systemctl abaixo para reiniciar o serviço Nginx e aplicar suas alterações. Em seguida, verifique o status do serviço Nginx para garantir que ele esteja em execução.

sudo systemctl restart nginx  
sudo systemctl status nginx

Como você pode ver na saída abaixo, o serviço Nginx está em execução.

verificar nginx

Protegendo o NodeBB com HTTPS

Nesta seção, você protegerá o NodeBB com HTTPS através do Certbot e Letsencrypt. Combinado com o Certbot e Nginx, você pode configurar HTTPS automático em seu servidor web.

Instale os pacotes certbot e python3-certbot-nginx com o seguinte comando:

sudo apt install certbot python3-certbot-nginx -y

Agora execute o comando certbot abaixo para gerar certificados SSL e proteger sua instalação do NodeBB com HTTPS. Certifique-se de alterar o endereço de e-mail e o nome de domínio com suas informações.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d forum.howtoforge.local

Após o processo ser concluído, você verá seus certificados no diretório /etc/letsencrypt/live/domain.com. E sua instalação do NodeBB estará protegida com HTTPS automaticamente.

Acessando o NodeBB

Abra seu nome de domínio do NodeBB, como https://forum.howtoforge.local, usando seu navegador web. Se a instalação for bem-sucedida, você verá a página inicial padrão do NodeBB como a seguinte:

página inicial

Clique no link Login e você será solicitado a acessar a página de login do NodeBB. Em seguida, insira seu usuário administrador e senha, e clique em Login para confirmar. Se você tiver as credenciais corretas, verá o seguinte painel de administração.

login

Nas configurações de administração do NodeBB, você verá o seguinte:

configurações de admin

Conclusão

Parabéns! Você instalou o software de fórum de código aberto NodeBB em um servidor Ubuntu 24.04. Você colocou o NodeBB em funcionamento com o MongoDB como banco de dados e o Nginx como proxy reverso. Você também protegeu o NodeBB com HTTPS através do Certbot e Letsencrypt. Agora você pode adicionar um servidor SMTP para configurar registro e confirmação via link de e-mail.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.