MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Tunneling SSH di Node.js su MongoDB utilizzando Mongoose

La configurazione di lavoro finale per riferimento futuro. Grazie a mscdex -- dovevo semplicemente fornire il corretto dstPort e includerlo nella mia stringa URI Mongo (il 27017). Così semplice. Spero che questo aiuti.

var config = {
    username:'myusername',
    host:'my.ip.address',
    agent : process.env.SSH_AUTH_SOCK,
    privateKey:require('fs').readFileSync('/Users/myusername/.ssh/id_rsa'),
    port:22,
    dstPort:27017,
    password:'mypassword'
};

var server = tunnel(config, function (error, server) {
    if(error){
        console.log("SSH connection error: " + error);
    }
    mongoose.connect('mongodb://localhost:27017/mydbname');

    var db = mongoose.connection;
    db.on('error', console.error.bind(console, 'DB connection error:'));
    db.once('open', function() {
        // we're connected!
        console.log("DB connection successful");
    });
});