[Gfoss] Aprire postgres verso l'esterno con indirizzo IP statico.

Salve a tutti,

vorrei fare una prova: ho un server linux con postgres e una connessione ADSL con contratto business (quindi dovrei avere il mio indirizzo IP). Vorrei provare ad abilitare postgres a ricevere e inviare i dati via web da un netbook con chiavina per la connessione.
Si tratta di inviare i dati ad una tabella con 12 campi della lunghezza max di 30 caratteri. Solo due sono di tipo descrittivo aperto e potrebbero contenere descrizioni lunghe.

Ora, qualcuno mi sa dire cosa devo settare in postgres per aprire le porte verso l’esterno? Chiedo a voi perchp se guardo la doc e basta faccio i danni di sicuro, visto che si tratta del DB buono e non di prova!!!

In realtà avrei anche un db postgres su di un imac dell’ufficio. Posso abilitare anche quello a prendere chiamate dall’esterno?

ciao a tutti e grazie

luca

On Thu, May 13, 2010 at 01:02:45PM +0200, Luca Mandolesi wrote:

Ora, qualcuno mi sa dire cosa devo settare in postgres per aprire le porte
verso l'esterno? Chiedo a voi perchp se guardo la doc e basta faccio i danni
di sicuro, visto che si tratta del DB buono e non di prova!!!

Cosa vuoi fare? Connetterti con Qgis oppure con client psql al
database quando sei in remoto? Si può fare.

Suppongo che Postgres stia su un PC interno alla LAN, invece il
tuo indirizzo IP pubblico sta sul router ADSL.

Allora devi ridirigere la porta 5432 TCP dal router verso il PC.
Ogni router lo fa a modo suo, di solito tramite l'interfaccia web
di amministrazione. Ogni router chiama questa funzione come gli
pare: virtual server, NAT, port forward, chi più ne ha più ne
metta. In pratica devi indicare la porta (5432/TCP) e l'indirizzo
del computer che ospita Postgres (es. 192.168.1.33).

Fatto questo assicurati che Postgres sia in ascolto su tutte le
interfacce di rete mettendo in postgresql.conf

listen_addresses = '*'

e assicurati di avere abilitato almeno un accesso via tcp/ip
con username/password mettendo in pg_hba.conf qualcosa del tipo:

# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all username 0/0 md5

Al posto di "username" ci metti il nome utente Postgres che vuoi
usare.

Non è certo il massimo della sicurezza, ma se hai scelto una
buona password, un utente in sola lettura e magari usi la
connessione criptata SSL si può fare.

--
Niccolo Rigacci
Firenze - Italy

Il 13 maggio 2010 13.02, Luca Mandolesi <mandoluca@gmail.com> ha scritto:

Ora, qualcuno mi sa dire cosa devo settare in postgres per aprire le porte
verso l'esterno? Chiedo a voi perchp se guardo la doc e basta faccio i danni
di sicuro, visto che si tratta del DB buono e non di prova!!!

leggi questo [0] (tutti i neofili di postgis dovrebbero farlo), a pagina 4 e 5 c'è quello che serve a te

In realtà avrei anche un db postgres su di un imac dell'ufficio. Posso
abilitare anche quello a prendere chiamate dall'esterno?

ciao a tutti e grazie
luca

ciao
Luca

[0] http://www.lulu.com/product/paperback/postgresqlpostgis-il-geodatabase-libero/2422316

Ho realizzato un semplice plugin in python/sqlachemy per qgis che manda i dati (solo testo) a postgres e vorrei utilizzarlo dagli scavi archeologici, senza però spendere cifre in hdsl (si parla di 600 eur min mensili), ma utilizzarlo con una scrausa l’ADSL. Il mio flusso di dati, è piccolo, quindi dovrebbe bastare, ma finchè non provo!! 8 )
Postgres sta su un server linux.

Grazie Niccolo ora provo a vedere e grazie anche a luca, me lo compro subitissimo!!!

Ciao!!

Vi farò sapere!

Luca

2010/5/13 Luca Mandolesi <mandoluca@gmail.com>:

Ho realizzato un semplice plugin in python/sqlachemy per qgis che manda i
dati (solo testo) a postgres e vorrei utilizzarlo dagli scavi archeologici,
senza però spendere cifre in hdsl (si parla di 600 eur min mensili), ma
utilizzarlo con una scrausa l'ADSL. Il mio flusso di dati, è piccolo, quindi
dovrebbe bastare, ma finchè non provo!! 8 )

secondo me a livello di sicurezza sarebbe meglio creare una
interfaccia web e comunicare via http sulla porta 80 col db
credo che ti basti poco per modificare il plugin e farlo funzionare in
questo modo
P

--
Paolo Corti
GIS Architect and Developer
web: http://www.paolocorti.net
twitter: @paolo_corti

Si è spargugliato il thread. Rispondo anche qua: non saprei da dove partire. Se devo fare come dici tu, l’interfaccia web deve risiedere sul mio server, ma a questo punto come fa ad essere un plugin per qgis? diventerebbe un’altra cosa…no? Oppure è possibile farsi un plugin per qgis in python che lavora via http, ma non comprendo come faccia. Help!

2010/5/13 Paolo Corti <pcorti@gmail.com>

2010/5/13 Luca Mandolesi <mandoluca@gmail.com>:

Ho realizzato un semplice plugin in python/sqlachemy per qgis che manda i
dati (solo testo) a postgres e vorrei utilizzarlo dagli scavi archeologici,
senza però spendere cifre in hdsl (si parla di 600 eur min mensili), ma
utilizzarlo con una scrausa l’ADSL. Il mio flusso di dati, è piccolo, quindi
dovrebbe bastare, ma finchè non provo!! 8 )

secondo me a livello di sicurezza sarebbe meglio creare una
interfaccia web e comunicare via http sulla porta 80 col db
credo che ti basti poco per modificare il plugin e farlo funzionare in
questo modo
P


Paolo Corti
GIS Architect and Developer
web: http://www.paolocorti.net
twitter: @paolo_corti

2010/5/13 Luca Mandolesi <mandoluca@gmail.com>:

Si è spargugliato il thread. Rispondo anche qua: non saprei da dove partire.
Se devo fare come dici tu, l'interfaccia web deve risiedere sul mio server,
ma a questo punto come fa ad essere un plugin per qgis? diventerebbe
un'altra cosa...no? Oppure è possibile farsi un plugin per qgis in python
che lavora via http, ma non comprendo come faccia. Help!

io farei un web service, magari REST, sul web server (scegli tu l'ambiente).
Poi dal plugin, con python, potrei interrogare il web service
utilizzando ad es urllib, come mostrato su questo esempio di utilizzo
dei web services di Yahoo:

http://developer.yahoo.com/python/python-rest.html

buon divertimento :smiley:
P

--
Paolo Corti
GIS Architect and Developer
web: http://www.paolocorti.net
twitter: @paolo_corti