Problemas de Conexión remota con Foxpro y Postgresql

591 views
Skip to first unread message

Rafael Morales

unread,
Oct 7, 2014, 1:40:18 PM10/7/14
to publice...@googlegroups.com
Hola a todos, tengo un sistema en Foxpro 9 sp1,  conectado a Postgresql 9.1 . 
Mi pregunta es: 

Desde un sistema hecho en Foxpro conectado a un motor de base de datos como postgresql ¿puedo acceder desde cualquier computadora que tenga conexión a internet, sin importar la ubicación o la distancia?, o ¿solo se puede acceder siempre y cuando la pc cliente forme parte de una red LAN?

Hasta ahora solo he logrado que las pc clientes se conecten al servidor pero solo dentro de mi red local. Cuando intento conectarme desde un lugar lejano fuera de mi red LAN, no se puede. He buscado información al respecto y leí que usan un programa llamado hamachi, el cual crea una VPN, mi duda está alli porque hasta ahora pensé que utilizando posgresql podria conectar mi sistema fox a la base de datos desde cualquier lugar si importar la distancia, y sin tener que hacer uso de una VPN, ni de un ESCRITORIO REMOTO.

Estos son los archivos que modifiqué en el postgresql 9.1, pero hasta ahora solo puedo acceder a la base de datos solo desde una pc cliente que este dentro de mi red local. Les agradezco cualquier comentario al respecto, Gracias.

postgresql.conf :

            # - Connection Settings –

            listen_addresses = '*' # what IP address(es) to listen on;


pg_hba.conf :

   # IPv4 local connections:

            host    all             all             127.0.0.1/32            md5
            host    all         all         192.168.1.0/24          password
            host    all         all         192.168.0.0/24          password


--
Rafael Morales

David Salazar

unread,
Oct 7, 2014, 3:52:46 PM10/7/14
to publice...@googlegroups.com
Creo que el problema que tienes es de concepto,
puedes responderte esto, como hago para poder conectarte desde fuera de tu red a una computadora????, si por ejemplo tu estas en españa y yo en El salvador, como sabe mi computadora que quiero conectarme a la tuya????.

Con hamachi puedes tener un enlace bastante seguro y muy confiable en cuanto a funcionamiento, en velocidad varia un poquito, pero se puede trabajar, siempre y cuando tu bd este bien trabajada.

Y otra forma de trabajar es con "no-ip", y otros similares, solo es cuestión de hacer ajustes.

Saludos.

Rafael Morales

unread,
Oct 7, 2014, 7:03:15 PM10/7/14
to publice...@googlegroups.com
Gracias David por tu comentario. ¿Entonces un motor de base de datos como postgres, mysql, sql server, etc. no permiten conexiones fuera de una red local?, o el problema está en que mi sistema está hecho en foxpro. Perdón por la ignorancia, pero tengo una confusión terrible, creí que usando Postgres u otro gestor de base de datos podría acceder a la información desde cualquier parte con solo tener conexion a internet, sin importar la distancia.
--
Rafael Morales

Rafael Morales

unread,
Oct 7, 2014, 7:10:46 PM10/7/14
to publice...@googlegroups.com
Leyendo bien tu comentario creo que ya me respondiste la pregunta. Bueno, no me queda otra que acudir a una VPN, u otro medio para solucionar este problema, lo bueno de esto es que dejé de utilizar las tablas locales de foxpro y aprendí a usar un motor de base de datos. Gracias David. Saludos desde Argentina.
--
Rafael Morales

David Salazar

unread,
Oct 7, 2014, 7:21:04 PM10/7/14
to publice...@googlegroups.com
Que bueno, lo de las tablas locales no es malo, yo incluso tengo sistemas funcionando así y no hay quejas de los clientes, pero desde hace tiempo también trabajo con mysql , postgres y ayer que instale mariadb, y en todos los casos dejo la opción de poder trabajar de forma remota, donde no importa la distancia en la que están los usuarios del sistema, siempre pueden trabajar en el sistema.

Si tienes dudas con la VPN con hamachi puedes consultar, y si es con no-ip pues igual, jajajajaja.

Rafael Morales

unread,
Oct 7, 2014, 7:30:09 PM10/7/14
to publice...@googlegroups.com
como es eso de dejas la opción de poder trabajar en forma remota y los usuarios pueden trabajar desde cualquier lugar sin importar la distancia. Lo logras usando Hamachi o No-Ip   me imagino, o solo lo logras con la el gestor de base de datos. Ya hace un mes que vengo tratando de conectar a mi servidor desde una pc fuera de mi red pero me rompi la cabeza tratando y ya no me quedan opciones. 
--
Rafael Morales

David Salazar

unread,
Oct 7, 2014, 7:38:19 PM10/7/14
to publice...@googlegroups.com
mira este video, https://www.youtube.com/watch?v=0AsnfDzRTTU
Luego veras que es bien fácil. solo colocas la dirección virtual de tu server en la conexión o el nombre del mismo, da igual. Yo prefiero trabajar con el nombre del server, asi no tengo que preocuparme si por algun problema me toca reinstalar el hamachi.

Rafael Morales

unread,
Oct 7, 2014, 7:59:33 PM10/7/14
to publice...@googlegroups.com
Esta muy bueno el video, se ve fácil, hare pruebas para conocerlo un poco mas, luego comento los resultados. Gracias David por tu tiempo.
--
Rafael Morales

David Salazar

unread,
Oct 7, 2014, 8:06:36 PM10/7/14
to publice...@googlegroups.com
Aca te dejo otro video mucho mas explicado https://www.youtube.com/watch?v=ghnE_9EiiQM

SISTEMAS VFPSTEAM

unread,
Oct 7, 2014, 8:16:18 PM10/7/14
to publice...@googlegroups.com
Hola, 

Los servidores de base de datos como MySQL, SQL Server, PostgreSQL, etc. no necesitan una VPN para poder conectarse remotamente, ya que la forma de conexión es vía TCP/IP, solo se necesita abrir los puertos en el módem o router y en el caso de PostgreSQL habilitar las configuraciones en el archivo pg_hba.conf

Configuración remota PostgreSQL

1.- Abrir el archivo postgresql.conf  editar y/o agregar estas lineas:
     listen_addresses = '*'
     password_encryption = on

2.- Guardar la información

3.- Abrir el archivo pg_hba.conf editar y/o agregar al final del archivo la siguiente linea:
     host all all 0.0.0.0 0.0.0.0 md5

4.- Guardar la información

Una vez realizado estos paso reiniciar el servidor PostgreSQL, ( Esto lo puede hacer directamente en la consola de servicios de windows )

5.-  En el firewall de windows abrir el puerto 5432 y de igual forma hacerlo en el modem o router de acceso a internet.

Realizado todos estos pasos ya solo tienes que saber la ip publica de internet donde esta instalado el servidor PostgreSQL y conectarte sin problema desde cualquier parte del mundo ( puedes usar www.cualesmiip.com ), 

También si deseas algo mas dinámico usar el no-ip.com que te asigna una direccion de dominio replicando la ip publica de internet asi esta cambie.

Saludos.

VFPSTEAM BI

Gustavo Mora Rivera

unread,
Oct 7, 2014, 8:29:56 PM10/7/14
to publice...@googlegroups.com
exacto, me parece que tu problema es por la IP,,,,   que no es publica...
 
solo montas un server con el IIS,, y el sqlexprees y listo,, yo tengo tablas en el sql de mas de 5 millones de registros sin problema alguno y se consultan de cualquier lado

Rafael Morales

unread,
Oct 7, 2014, 8:32:01 PM10/7/14
to publice...@googlegroups.com
hola gracias por los comentarios, entonces debo utilizar la ip publica de internet en lugar de la ip de mi servidor, en el momento en que hago la conexión a la base de datos?


conectar ="Driver={PostgreSQL ANSI}; Server= 192.168.100.180; Database = MibasedeDatos; uid=  postgres; pwd = MyPasword;
nu_conexion=sqlstringconnect(conectar)

suponiendo que la ip de mi servidor es 192.168.100.180, debo cambiarla por la ip publica de internet?
--
Rafael Morales

Gustavo Mora Rivera

unread,
Oct 7, 2014, 8:35:00 PM10/7/14
to publice...@googlegroups.com
pues si,, si queres accesar los datos desde fuera de tu LAN, debes poner un serverweb,, y conectarse con esa IP,,,solo que en vez de correr tu programa en un browser, se correra en tu programa de VFP pero la conexion sera por ip

SISTEMAS VFPSTEAM

unread,
Oct 7, 2014, 8:35:28 PM10/7/14
to publice...@googlegroups.com
Hola, exacto usa la ip de Internet o como te comente instala el no-ip y te da un dominio que replica tu ip publica, no olvides abrir el puerto 5432 en el frirewall de windows y en el módem o router de tu proveedor de Internet

saludos

VFPSTEAM BI

Rafael Morales

unread,
Oct 7, 2014, 8:40:37 PM10/7/14
to publice...@googlegroups.com
ok, gracias a todos, es un alivio saber que si es posible acceder desde cualquier parte con postgres, ya que me tomo mucho trabajo implementar un gestor de base de datos. Voy a hacer los cambios que me recomendaron y luego comento como me fue, y de que manera lo solucione. Saludos.
--
Rafael Morales

Alejandro Isla

unread,
Oct 7, 2014, 10:33:27 PM10/7/14
to publice...@googlegroups.com
Hola Rafael, como ya viste, es necesario la ip publica para conectarse desde afuera, justamente porque las "otras", la ip privadas tienen por objetivo que nadie desde afuera pueda "verlas".

Aparte de abrir los puertos como bien indican, lo más seguro es que tengan que redireccionarlos hacia tu servidor, hay casos y casos, pero recordá que por lo general la ip publica está "dentro del modem/router" y tu servidor tiene una ip privada y está "fuera del moden/router", por lo que las peticiones de datos a la base van a llegar al modem, y el modem no sabe un peinode bases de datos :-)

Según el tipo de modem / router será la forma de redireccionar la petición al lugar de la red interna donde está tu servidor.

Saludos.

Rafael Morales

unread,
Oct 8, 2014, 12:06:05 AM10/8/14
to publice...@googlegroups.com
gracias por el dato Alejandro, haré algunas pruebas.
--
Rafael Morales

Gustavo Mora Rivera

unread,
Oct 8, 2014, 12:44:21 PM10/8/14
to publice...@googlegroups.com
yo lo que hago es que pongo el "server" en el DMZ,, o si el ADSL o cablemoden hay veces que permite configurarse para tener dos IPs,, entonces una va directo al server y otra a la red interna. asi es mas agil y no choca con paquetes para otras maquinas.. esto lo puedes consultar a tu proveedro de internet....

tambien esta la opcion de contratar un hostin web... solo para el uso del motor de BD
 
----- Original Message -----

Rafael Morales

unread,
Oct 8, 2014, 3:33:01 PM10/8/14
to publice...@googlegroups.com
Ok, gracias Gustavo, lo tendré en cuenta.
--
Rafael Morales

Alejandro Isla

unread,
Oct 8, 2014, 8:15:46 PM10/8/14
to publice...@googlegroups.com
Poner el server en la "DMZ" es rápido y fácil, ergo tiene que haber un problema; y es que es una mala practica porque deja expuesto el server a los ataques, tendrías que tener un buen firewall en el servidor.
Aun con un buen firewall, siempre es recomendable solo tener abierto en los servidores los puertos mínimos necesarios. Uno debe trabajar un poco con la paranoia activada.

Saludos.

Gustavo Mora Rivera

unread,
Oct 8, 2014, 8:52:31 PM10/8/14
to publice...@googlegroups.com
pues el servidor por si solo, debe tener todas las medidas de seguridad necesarias....   y si es para un server de bd real, pues no es bueno tenerlo en el mismo vecindario de la red local,,,

Alejandro Isla

unread,
Oct 8, 2014, 10:01:08 PM10/8/14
to publice...@googlegroups.com
Si Gustavo, pero para este caso, me parece que es un entorno más básico y no creo que por ahora pueda hacer toda una topología de red como mandan los libros, por eso mi opinion de tratar de direccionar solo un puerto a su red interna antes que dejar toda una pc en una dmz.
Lo que decís es muy correcto, muy "paranoico" como jovialmente se dice.
Reply all
Reply to author
Forward
0 new messages