Quali protocolli di rete utilizza un server di database Postgres?


15

Ho un server Postgres 9.1 in esecuzione sulla porta predefinita 5432 su un server cloud Ubuntu 12.04.

Voglio aprire la porta, quindi posso fare query remote - ma devo aprire la porta su tabelle IP, il che richiede che specifichi un protocollo. Questo documento non menziona TCP / UDP, ecc.

Quale protocollo devo consentire nelle tabelle IP?


4
Non dimenticare di abilitare SSL ... postgresql.org/docs/9.1/static/ssl-tcp.html
Lekensteyn

Risposte:


15

Il protocollo è semplice TCP / IP.

Dalla documentazione posgresql sui protocolli " front-end " e "back-end" :

PostgreSQL utilizza un protocollo basato su messaggi per la comunicazione tra front-end e back-end (client e server). Il protocollo è supportato su TCP / IP e anche su socket di dominio Unix. Il numero di porta 5432 è stato registrato con IANA come numero di porta TCP standard per i server che supportano questo protocollo, ma in pratica è possibile utilizzare qualsiasi numero di porta non privilegiato.

Quindi per quanto riguarda iptables utilizzare il tcpprotocollo, poiché i socket del dominio Unix non sono pensati per essere utilizzati in rete.

esempio iptables :

iptables <other_options> -p tcp -dport 5432 -j ACCEPT

Nota :

Come sottolineato da Lekensteyn , è particolarmente saggio considerare l'attivazione di SSL tramite quella connessione di rete (vedere la documentazione di postgresql sull'uso di TCP-over-SSL ). La regola iptables non cambierebbe in quel caso: stessa porta (5432), stesso protocollo (tcp).


1

Per impostazione predefinita, PostgreSQLt ascolta sulla porta TCP 5432. Utilizzare le seguenti regole iptables consente la richiesta client in entrata (porta aperta 5432).

-A INPUT -p tcp --dport 5432 -s xxx.xxx.xxx.xxx -j ACCEPT

Dove xxx.xxx.xxx.xxx è l'IP del server da cui ti stai connettendo, quindi non stai aprendo Postgres nel mondo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.