MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como usar o Node.js para fazer uma conexão de encapsulamento SSH com um banco de dados MongoDB


Como o mscdex mencionou, o ssh2 não é um bom módulo para usar para fazer uma conexão de túnel ssh com um banco de dados. tunnel-ssh é mais apropriado.

Aqui estão as opções de configuração que usei:

dstPort:porta de conexão de banco de dados remoto

localPort:igual a dstPort, será a porta que você usará para sua máquina local

nome de usuário:nome de usuário SSH,

host:endereço SSH

dstHost:URL de conexão do banco de dados (...mongodbns.com),

chave privada:chave SSH

Então, uma vez que seu túnel esteja conectado, conecte-se via mangusto ao seu localhost, como mondodb://localhost:27000 (use o localport que você definiu em localPort)
var server = tunnel(config, function (error, server) {
    if(error){
        console.log("SSH connection error: " + error);
    }
    mongoose.connect('mongodb://localhost:27000/');
    //...rest of mongoose connection
}