One place for hosting & domains

      partir

      Comment installer MongoDB à partir des référentiels APT par défaut sur Ubuntu 20.04


      Introduction

      MongoDB est une base de données de documents NoSQL gratuite et open source couramment utilisée dans les applications web modernes.

      Dans ce tutoriel, vous allez apprendre à installer MongoDB, gérer son service et activer l’option d’accès à distance.

      Remarque : au moment de sa rédaction, ce tutoriel installe la version 3.6 de MongoDB. Il s’agit de la version mise à disposition à partir des référentiels Ubuntu par défaut. Cependant, nous recommandons généralement d’installer plutôt la dernière version de MongoDB (la version 4.4 au moment de la rédaction). Si vous souhaitez installer la dernière version de MongoDB, nous vous encourageons à suivre le guide suivant sur Comment installer MongoDB sur Ubuntu 20.04 à partir de la source.

      Conditions préalables

      Pour suivre ce tutoriel, vous aurez besoin de :

      Étape 1 — Installation de MongoDB

      Les référentiels des paquets officiels d’Ubuntu incluent MongoDB. Nous pouvons donc installer les paquets nécessaires en utilisant apt. Comme nous l’avons mentionné dans l’introduction, la version disponible à partir des référentiels par défaut n’est pas la plus récente. Pour installer la dernière version de Mongo, veuillez plutôt suivre ce tutoriel.

      Tout d’abord, mettez à jour la liste des paquets pour obtenir la version la plus récente des listes du référentiel :

      Maintenant, installez le paquet MongoDB en lui-même :

      Cette commande vous invite à confirmer si vous souhaitez bien installer le paquet mongodb et ses dépendances. Pour ce faire, appuyez sur Y, puis sur ENTER.

      Cette commande installe plusieurs paquets qui contiennent une version stable de MongoDB, ainsi que des outils de gestion utiles pour le serveur MongoDB. Le serveur de la base de données démarre automatiquement après l'installation.

      Ensuite, vérifions si le serveur fonctionne correctement.

      Étape 2 — Vérification du service et de la base de données

      Le processus d'installation a démarré MongoDB automatiquement. Cependant, vérifions tout de même si le service a bien été lancé et si la base de données fonctionne.

      Tout d'abord, vérifiez l'état du service :

      • sudo systemctl status mongodb

      Vous verrez la sortie suivante :

      Output

      ● mongodb.service - An object/document-oriented database Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-10-08 14:23:22 UTC; 49s ago Docs: man:mongod(1) Main PID: 2790 (mongod) Tasks: 23 (limit: 2344) Memory: 42.2M CGroup: /system.slice/mongodb.service └─2790 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf

      Selon ce résultat, le serveur MongoDB est opérationnel.

      Pour vérifier cela de manière plus approfondie, en fait, nous allons nous connecter au serveur de base de données et exécuter la commande de diagnostic suivante. Cela générera la version actuelle de la base de données, l'adresse et le port du serveur et la sortie de la commande de l'état :

      • mongo --eval 'db.runCommand({ connectionStatus: 1 })'

      Output

      MongoDB shell version v3.6.8 connecting to: mongodb://127.0.0.1:27017 Implicit session: session { "id" : UUID("e3c1f2a1-a426-4366-b5f8-c8b8e7813135") } MongoDB server version: 3.6.8 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }

      Dans la réponse, une valeur de 1 dans le champ ok indique que le serveur fonctionne correctement.

      Ensuite, nous allons apprendre à gérer l'instance du serveur.

      Étape 3 — Gestion du service MongoDB

      Le processus d'installation décrit à l'étape 1 configure MongoDB en tant que service systemd. Cela signifie que vous pouvez le gérer en utilisant des commandes systemctl standard avec tous les autres services du système dans Ubuntu.

      Pour vérifier l'état du service, tapez :

      • sudo systemctl status mongodb

      Vous pouvez arrêter le serveur à tout moment en saisissant ce qui suit :

      • sudo systemctl stop mongodb

      Pour démarrer le serveur lorsqu'il est arrêté, tapez :

      • sudo systemctl start mongodb

      Vous pouvez également redémarrer le serveur en utilisant la commande suivante :

      • sudo systemctl restart mongodb

      Par défaut, MongoDB est configuré pour démarrer automatiquement avec le serveur. Si jamais vous souhaitez désactiver ce démarrage automatique, saisissez ce qui suit :

      • sudo systemctl disable mongodb

      Vous pouvez réactiver le démarrage automatique à tout moment en utilisant la commande suivante :

      • sudo systemctl enable mongodb

      Maintenant, réglons les paramètres du pare-feu de notre installation MongoDB.

      Étape 4 — Réglage du pare-feu (facultatif)

      En supposant que vous ayez suivi les instructions du tutoriel de configuration initiale de serveur pour activer le pare-feu sur votre serveur, le serveur MongoDB sera inaccessible à partir d'Internet.

      Si vous prévoyez d'utiliser MongoDB uniquement en local, avec des applications exécutées sur le même serveur, il s'agit de la configuration recommandée et sécurisée à utiliser. Cependant, si vous souhaitez vous connecter à votre serveur MongoDB à partir d'Internet, vous devez autoriser les connexions entrantes en ajoutant une règle UFW.

      Pour autoriser l'accès à MongoDB sur son port par défaut 27017 à partir de tout endroit, vous pouvez exécuter sudo ufw allow 27017. Cependant, en activant l'accès Internet au serveur MongoDB sur une installation par défaut, toute personne aura un accès sans restriction au serveur de la base de données et à ses données.

      Dans la plupart des cas, MongoDB ne doit être accessible qu'à partir de certains lieux de confiance (un autre serveur hébergeant une application, par exemple). Pour autoriser un autre serveur de confiance à accéder uniquement au port par défaut de MongoDB, vous pouvez spécifier l'adresse IP du serveur distant dans la commande ufw. Ainsi, seule la machine sera explicitement autorisée à se connecter :

      • sudo ufw allow from trusted_server_ip/32 to any port 27017

      Vous pouvez vérifier le changement dans les paramètres de pare-feu avec ufw :

      Vous devriez voir le trafic vers le port 27017 autorisé dans la sortie. Notez que si vous avez décidé d'autoriser une certaine adresse IP à se connecter au serveur MongoDB, l'adresse IP de l'emplacement autorisé sera référencée à la place de Anywhere dans la sortie de cette commande :

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 27017 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 27017 (v6) ALLOW Anywhere (v6)

      Vous pouvez trouver des paramètres de pare-feu plus avancés pour restreindre l'accès aux services dans les Essentiels d'UFW : Règles et commandes communes du pare-feu.

      Même si le port est ouvert, MongoDB continuera toujours d'écouter uniquement l'adresse locale 127.0.0.1. Pour autoriser des connexions à distance, ajoutez l'adresse IP publique de votre serveur au fichier mongodb.conf.

      Ouvrez le fichier de configuration de MongoDB dans votre éditeur de texte préféré. Cet exemple de commande utilise nano :

      • sudo nano /etc/mongodb.conf

      Ajoutez l'adresse IP de votre serveur MongoDB à la valeur bindIP. Veillez à placer une virgule entre l'adresse IP existante et celle que vous avez ajoutée :

      /etc/mongodb.conf

      ...
      logappend=true
      
      bind_ip = 127.0.0.1,your_server_ip
      #port = 27017
      
      ...
      

      Enregistrez le fichier et quittez l'éditeur. Si vous avez modifié le fichier avec nano, faites-le en appuyant sur CTRL + X, Y, puis sur ENTER.

      Ensuite, redémarrez le service MongoDB :

      • sudo systemctl restart mongodb

      MongoDB écoute maintenant les connexions à distance, mais toute personne peut y accéder. Suivez le tutoriel Comment sécuriser MongoDB sur Ubuntu 20.04 pour ajouter un utilisateur administratif et verrouiller un peu plus l'accès.

      Conclusion

      Vous pouvez trouver d'autres tutoriels plus approfondis sur la façon de configurer et d'utiliser MongoDB dans ces articles publiés par la communauté DigitalOcean. La documentation officielle de MongoDB est également une excellente ressource pour découvrir les possibilités que MongoDB a à offrir.



      Source link

      Como instalar o MongoDB a partir dos repositórios APT padrão no Ubuntu 20.04


      Introdução

      O MongoDB é um banco de dados de documento NoSQL de código aberto e gratuito usado habitualmente em aplicativos Web modernos.

      Neste tutorial, você irá instalar o MongoDB, gerenciar seus serviços e, de maneira opcional, habilitar o acesso remoto.

      Nota: no momento em que este artigo está sendo escrito, este tutorial instala a versão 3.6 do MongoDB, que é a versão disponível nos repositórios padrão do Ubuntu. No entanto, geralmente recomendamos a instalação da versão mais recente do MongoDB — versão 4.4 no momento em que este artigo está sendo escrito — ao invés disso. Se quiser instalar a versão mais recente do MongoDB, encorajamos que siga este guia sobre Como instalar o MongoDB no Ubuntu 20.04 da origem.

      Pré-requisitos

      Para seguir este tutorial, será necessário:

      Passo 1 — Como instalar o MongoDB

      Os repositórios de pacotes oficiais do Ubuntu incluem o MongoDB, ou seja, podemos instalar os pacotes necessários utilizando o apt. Como mencionado na introdução, a versão disponível dos repositórios padrão não é a mais recente. Para instalar a versão mais recente do Mongo, siga este tutorial.

      Primeiramente, atualize a lista de pacotes para ter a versão mais recente dos registros:

      Agora, instale o pacote MongoDB:

      Esse comando solicitará que você confirme se deseja instalar o pacote mongodb e suas dependências. Para fazer isso, pressione Y e então ENTER.

      Esse comando instala vários pacotes que contêm uma versão estável do MongoDB, junto com ferramentas de gerenciamento úteis para o servidor MongoDB. O servidor de banco de dados é iniciado automaticamente após a instalação.

      Em seguida, vamos verificar se o servidor está funcionando corretamente.

      Passo 2 — Como verificar o serviço e o banco de dados

      O processo de instalação iniciou o MongoDB automaticamente, mas vamos verificar se o serviço está iniciado e que o banco de dados está funcionando.

      Primeiramente, verifique o estado do serviço:

      • sudo systemctl status mongodb

      Você verá este resultado:

      Output

      ● mongodb.service - An object/document-oriented database Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-10-08 14:23:22 UTC; 49s ago Docs: man:mongod(1) Main PID: 2790 (mongod) Tasks: 23 (limit: 2344) Memory: 42.2M CGroup: /system.slice/mongodb.service └─2790 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf

      De acordo com esse resultado, o servidor MongoDB está em funcionamento.

      Podemos verificar isso mais adiante ao nos conectarmos ao servidor de banco de dados e executarmos um comando de diagnóstico. Isso mostrará a versão atual do banco de dados, o endereço e a porta do servidor, e o resultado do comando de estado:

      • mongo --eval 'db.runCommand({ connectionStatus: 1 })'

      Output

      MongoDB shell version v3.6.8 connecting to: mongodb://127.0.0.1:27017 Implicit session: session { "id" : UUID("e3c1f2a1-a426-4366-b5f8-c8b8e7813135") } MongoDB server version: 3.6.8 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }

      Um valor de 1 para o campo ok na resposta indica que o servidor está funcionando corretamente.

      Em seguida, vamos ver como gerenciar a instância do servidor.

      Passo 3 — Como gerenciar o serviço MongoDB

      O processo de instalação mostrado no Passo 1 configura o MongoDB como um serviço systemd, ou seja, você pode gerenciá-lo usando comandos systemctl padrão junto com todos os outros serviços de sistema no Ubuntu.

      Para verificar o estado do serviço, digite:

      • sudo systemctl status mongodb

      Para interromper o servidor a qualquer momento, digite:

      • sudo systemctl stop mongodb

      Para iniciar o servidor quando ele for parado, digite:

      • sudo systemctl start mongodb

      Você também pode reiniciar o servidor com o comando a seguir:

      • sudo systemctl restart mongodb

      Por padrão, o MongoDB está configurado para iniciar automaticamente com o servidor. Se quiser desativar o inicializador automático, digite:

      • sudo systemctl disable mongodb

      Você pode habilitar novamente a inicialização automática a qualquer momento com o seguinte comando:

      • sudo systemctl enable mongodb

      Em seguida, vamos ajustar as configurações de firewall para nossa instalação do MongoDB.

      Passo 4 — Como ajustar o Firewall (opcional)

      Considerando que você seguiu todas as instruções do tutorial de configuração inicial do servidor para habilitar o firewall no seu servidor, então o servidor MongoDB estará inacessível pela internet.

      Se quiser usar o servidor MongoDB apenas localmente com aplicativos funcionando no mesmo servidor, esta é a configuração recomendada e segura. Entretanto, se quiser poder se conectar ao seu servidor MongoDB pela internet, será necessário permitir as conexões de entrada adicionando uma regra UFW.

      Para permitir o acesso ao MongoDB em sua porta padrão 27017 de todos os lugares, utilize o comando sudo ufw allow 27017. Entretanto, habilitar o acesso à internet ao servidor MongoDB em uma instalação padrão dá a qualquer um acesso ilimitado ao servidor de banco de dados e seus dados.

      Na maioria dos casos, o MongoDB deve ser acessado apenas por certos locais confiáveis, como outro servidor que hospeda um aplicativo. Para permitir o acesso à porta padrão do MongoDB apenas por outro servidor confiável, especifique o endereço IP do servidor remoto no comando ufw. Dessa forma, apenas essa máquina será explicitamente autorizada a se conectar:

      • sudo ufw allow from trusted_server_ip/32 to any port 27017

      Verifique a mudança nas configurações do firewall com o ufw:

      Você deve ver o tráfego permitido para a porta 27017 no resultado. Se tiver decidido permitir que apenas um certo endereço IP se conecte ao servidor MongoDB, o endereço IP do local permitido estará listado ao invés de Anywhere no resultado do comando:

      Output

      Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 27017 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 27017 (v6) ALLOW Anywhere (v6)

      Você pode encontrar configurações de firewall mais avançadas para restringir o acesso a serviços em Essenciais do UFW: regras e comandos comuns do firewall.

      Embora a porta esteja aberta, o MongoDB estará escutando apenas no endereço local 127.0.0.1. Para permitir conexões remotas, adicione o endereço IP roteável publicamente do seu servidor ao arquivo mongodb.conf.

      Abra o arquivo de configuração do MongoDB em seu editor de texto preferido. Este comando de exemplo usa o nano:

      • sudo nano /etc/mongodb.conf

      Adicione o endereço IP do seu servidor MongoDB ao valor bindIP. Certifique-se de colocar uma vírgula entre o endereço IP existente e o que você adicionou:

      /etc/mongodb.conf

      ...
      logappend=true
      
      bind_ip = 127.0.0.1,your_server_ip
      #port = 27017
      
      ...
      

      Salve o arquivo e saia do editor. Se você usou o nano para editar o arquivo, faça isso pressionando CTRL + X, Y, depois ENTER.

      Em seguida, reinicie o serviço MongoDB:

      • sudo systemctl restart mongodb

      O MongoDB agora está escutando conexões remotas, mas qualquer um pode acessá-lo. Siga Como proteger o MongoDB no Ubuntu 20.04 para adicionar um usuário administrativo e bloquear as coisas mais adiante.

      Conclusão

      Encontre tutoriais mais aprofundados sobre como configurar e usar o MongoDB nestes artigos da comunidade DigitalOcean. A documentação oficial do MongoDB também é um ótimo recurso sobre as possibilidades que o MongoDB proporciona.



      Source link