Connexion de MongoDB via le tunnel SSH
Pour connecter votre base de données MongoDB à Commerce Intelligence via un tunnel SSH, vous devez effectuer les opérations suivantes :
- Récupération de la clé Commerce Intelligence
- Autoriser l’accès à l’adresse Commerce Intelligence
- Création d’un utilisateur Linux pour Commerce Intelligence
- Création d MongoDB un utilisateur pour Commerce Intelligence
- Saisissez les informations de connexion et d’utilisateur dans Commerce Intelligence
Récupération de la clé publique Commerce Intelligence retrieve
Le public key
est utilisé pour autoriser l’utilisateur Commerce Intelligence Linux
. La section suivante vous guide tout au long de la création de l’utilisateur et de l’importation des clés.
- Accédez à Data > Connections et cliquez sur Add New Data Source.
- Cliquez sur l’icône MONGODB .
- Une fois la page des informations d’identification MongoDB ouverte, définissez le bouton
Encrypted
surYes
. Le formulaire de configuration SSH s’affiche. - Le
public key
se trouve sous ce formulaire.
Laissez cette page ouverte tout au long du tutoriel. Vous en aurez besoin dans la section suivante et à la fin.
Si vous êtes un peu perdu, voici comment naviguer dans Commerce Intelligence pour récupérer la clé :
Autoriser l'accès à l'adresse IP Commerce Intelligence allowlist
Pour que la connexion soit établie, vous devez configurer votre pare-feu afin d’autoriser l’accès à partir de vos adresses IP. Ils sont 54.88.76.97
et 34.250.211.151
, mais ils se trouvent également sur la page des informations d’identification MongoDB :
Création d’un utilisateur Linux
pour Commerce Intelligence linux
sshd_config
associé au serveur n’est pas défini sur l’option par défaut, seuls certains utilisateurs ont accès au serveur, ce qui empêche une connexion réussie à Commerce Intelligence. Dans ce cas, il est nécessaire d’exécuter une commande telle que AllowUsers
pour permettre à l’utilisateur rjmetric
d’accéder au serveur.Il peut s’agir d’une machine de production ou secondaire, à condition qu’elle contienne des données en temps réel (ou fréquemment mises à jour). Vous pouvez restreindre cet utilisateur comme vous le souhaitez, à condition qu’il conserve le droit de se connecter au serveur MongoDB.
Pour ajouter le nouvel utilisateur, exécutez les commandes suivantes en tant que root sur votre serveur Linux
:
adduser rjmetric -p
mkdir /home/rjmetric
mkdir /home/rjmetric/.ssh
Vous vous souvenez de la public key
que vous avez récupérée dans la première section ? Pour vous assurer que l'utilisateur a accès à la base de données, vous devez importer la clé dans authorized_keys
. Copiez la clé complète dans le fichier authorized_keys
comme suit :
touch /home/rjmetric/.ssh/authorized_keys
"< PASTE KEY HERE >" >> /home/rjmetric/.ssh/authorized_keys
Pour terminer la création de l’utilisateur, modifiez les autorisations sur le répertoire /home/rimetric pour autoriser l’accès via SSH :
chown -R rjmetric:rjmetric /home/rjmetric
chmod -R 700 /home/rjmetric/.ssh
Création d’un utilisateur Commerce Intelligence MongoDB mongodb
MongoDB serveurs disposent de deux modes d’exécution : l’un avec l’option « auth » (mongod -- auth)
et l’autre sans, qui est le mode par défaut. Les étapes de création d’un utilisateur MongoDB varient en fonction du mode utilisé par votre serveur. Veillez à vérifier le mode avant de continuer.
Si le serveur utilise l’option Auth
: auth
Lors de la connexion à plusieurs bases de données, vous pouvez ajouter l’utilisateur en vous connectant à MongoDB en tant qu’utilisateur administrateur et en exécutant les commandes suivantes.
listDatabases.
Cette commande accorde à l'utilisateur Commerce Intelligence l'accès to all databases
:
use admin
db.createUser('rjmetric', '< secure password here >', true)
Utilisez cette commande pour accorder à l'utilisateur Commerce Intelligence l'accès to a single database
:
use < database name >
db.createUser('rjmetric', '< secure password here >', true)
La réponse imprimée ressemble à ceci :
{
"id": ObjectId("< some object id here >"),
"user": "rjmetric",
"readOnly": true,
"pwd": "< some hash here >"
}
Si le serveur utilise l’option par défaut default
Si votre serveur n’utilise pas le mode auth
, votre serveur MongoDB est accessible même sans nom d’utilisateur ni mot de passe. Cependant, vous devez vous assurer que le fichier mongodb.conf
(/etc/mongodb.conf)
contient les lignes suivantes : si ce n’est pas le cas, redémarrez votre serveur après les avoir ajoutés.
bind_ip = 127.0.0.1
noauth = true
Pour lier votre serveur MongoDB à une adresse différente, ajustez le nom d’hôte de la base de données à l’étape suivante en conséquence.
Saisie des informations de connexion et d’utilisateur dans Commerce Intelligence finish
Pour conclure, vous devez saisir les informations de connexion et d’utilisateur dans Commerce Intelligence. Avez-vous laissé la page des informations d’identification MongoDB ouverte ? Dans le cas contraire, accédez à Data > Connections et cliquez sur Add New Data Source, puis sur l’icône MongoDB . N’oubliez pas de remplacer le bouton (bascule) Encrypted
par Yes
.
Saisissez les informations suivantes dans cette page, en commençant par la section Database Connection
:
Host
:127.0.0.1
Username
: nom d’utilisateur Commerce Intelligence MongoDB (doit êtrerjmetric
)Password
: mot de passe de l’Commerce Intelligence MongoDBPort
: port de MongoDB sur votre serveur (27017
par défaut)Database Name
(facultatif) : si vous n'avez autorisé l'accès qu'à une seule base de données, indiquez son nom ici.
Dans la section SSH Connection
:
Remote Address
: adresse IP ou nom d’hôte du serveur sur lequel vous allez effectuer le SSHUsername
: nom d’utilisateur Commerce Intelligence Linux (SSH) (doit être rjmetric)SSH Port
: port SSH sur votre serveur (22 par défaut)
Lorsque vous avez terminé, cliquez sur Save Test pour terminer la configuration.