di rinoronie » 23 luglio 2014, 20:24
Confermo che sono riuscito a recuperare i dati dal mongodb tramite obdc (Simba ODBC Driver a pagamento) e qualche modifica linux
poiché non si riesce ad aprire le porte di MongoDB sull'IP 0.0.0.0 (corrispondente a tutte le interfacce di rete) ma soltanto su 127.0.0.1 (accetta connessioni solo dalla macchina stessa), ho creato un tunnel sulla macchina stessa che accetta connessioni sulla porta 27018 (e 37018) da qualunque ip in rete locale e le inoltra alla porta 27017 (e 37017).
Accettano una sola connessione contemporanea, ma dovrebbe essere più che sufficiente.
In questo modo ci si può collegare tramite l'ODBC di MongoDB (a pagamento), agganciandosi alla porta 37018.
Per implementare tale tunnel, ho utilizzato netcat.
Per fare sì che fosse sempre disponibile il tunnel, ho aggiunto le seguenti righe allo script /etc/rc.local (viene eseguito al boot del server):
# Creo un tunnel che accetti connessioni alla porta 27018 e le inoltri alla porta 27017 per MongoDB.
( while (true); do /usr/local/bin/netcat -L 127.0.0.1:27017 -p 27018; done ) &
# Idem per la porta 37017
( while (true); do /usr/local/bin/netcat -L 127.0.0.1:37017 -p 37018; done ) &