
A resposta curta: o MongoDB é uma base de dados que guarda documentos (parecidos com JSON) em vez de tabelas. Não faz parte das ferramentas de bases de dados do cPanel, por isso corre-se num VPS. A regra que mais importa: nunca o deixe aberto à internet. Já houve muitos servidores MongoDB sem proteção apagados e sequestrados por quem os encontrou.
A forma mais simples: um contentor
Se já usa Docker (veja Docker num VPS com segurança), a imagem oficial dá uma instalação limpa e fácil de remover:
docker run -d --name mongo --restart unless-stopped \
-p 127.0.0.1:27017:27017 \
-v mongo-dados:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=UMA-SENHA-FORTE \
mongo
| Parte | Para que serve |
| -p 127.0.0.1:27017:27017 | A mais importante. Publica a porta só no próprio VPS. Sem o 127.0.0.1, o Docker abre-a ao mundo, mesmo com a firewall ligada. |
| -v mongo-dados:/data/db | Guarda os dados num volume, para não os perder quando o contentor é recriado. Veja Volumes ou bind mounts. |
| MONGO_INITDB_ROOT_* | Cria o utilizador administrador e liga a autenticação. Use uma palavra-passe longa; veja Uma palavra-passe forte. |
Use uma versão com número em vez de mongo sozinho, para uma atualização não o apanhar de surpresa (a lista está na página da imagem, no Docker Hub).
Instalado no sistema
Sem Docker, o MongoDB instala-se a partir do repositório da própria MongoDB para a sua versão de Ubuntu ou Debian. Os nomes dos pacotes e das chaves mudam com as versões, por isso siga o guia de instalação oficial em vez de copiar comandos antigos. Seja como for, depois de instalar:
|
|
|
Como a aplicação se liga
Uma aplicação no mesmo VPS liga-se com um endereço do género mongodb://admin:SENHA@127.0.0.1:27017/minha-base?authSource=admin. Guarde-o no ficheiro de configuração da aplicação, fora do código: veja Palavras-passe fora do código. Para ver os dados do seu computador, use um túnel SSH em vez de abrir a porta: ssh -L 27017:127.0.0.1:27017 utilizador@IP-DO-VPS, e ligue-se a localhost.
Cópias de segurança
O mongodump faz a cópia: mongodump --uri="mongodb://..." --gzip --archive=/copias/mongo.gz; e o mongorestore repõe-a: mongorestore --uri="mongodb://..." --gzip --archive=/copias/mongo.gz. Corra-o por cron e envie a cópia para fora do servidor: veja Cópias fora do servidor. E teste a reposição, não só a cópia.
| Se o seu MongoDB já esteve aberto à internet, trate-o como comprometido: mude todas as palavras-passe, veja se há dados a mais ou a menos e restaure de uma cópia limpa. Veja Manter o VPS seguro: as seis coisas que contam. |
|
Quer ajuda para decidir se o MongoDB serve para a sua aplicação, ou para o proteger? Abra um pedido a dizer o que vai guardar. Abrir pedido de suporte |
PRODUTO RECOMENDADO Servidor VPS com acesso root Recursos só seus, o sistema que escolher, reinstalação quando quiser. desde R$ 46,20/mês (plano de 3 anos, com cupom) Ver planos |
- 0 Usuários acharam útil











