nginx 代理postgresql

首先,Nginx为我们的数据库增加了额外的安全层。Nginx提供了一整套的选项,这使得管理访问和保护数据库变得很容易。例如,我们可以配置为只有一小部分IP地址可以访问数据库。

PostgreSQL不使用HTTP或HTTPS,而是使用一个新块儿stream。

  1. stream
    该指令定义了stream服务器。与http块平级,定义在main块中。
bash 复制代码
 stream {
     server {
         ......
     }
 }
  1. server
    该指令定义一个虚拟主机,与http块中的server类似。我们可以在stream块中定义多个server块。
bash 复制代码
stream {
     server {
         ......
     }
     server {
         ......
     }
 }
  1. listen
    该指令定义虚拟主机server要监听的socket的地址和端口。
  2. allow配置允许访问的IP
    作用域:stream, server
bash 复制代码
# 允许192.168.110.1访问
 allow 192.168.110.1;
 
 # 允许192.168.110.1到192.168.255.254
 allow 192.168.110.0/16;
 
 # 允许192.168.110.1到192.168.110.254
 allow 192.168.110.0/24;
 
 # 允许所有的IP访问
 allow all;
  1. deny 配置不可访问ip
    作用域:stream, server
bash 复制代码
# 禁止192.168.110.1访问
 deny 192.168.110.1;
 
 # 禁止192.168.110.1到192.168.255.254
 deny 192.168.110.0/16;
 
 # 禁止192.168.110.1到192.168.110.254
 deny 192.168.110.0/24;
 
 # 禁止所有的IP访问
 deny all;
  1. 配置实例
bash 复制代码
stream {
    upstream pgsql_socket {
         server 192.168.214.133:32222;
     }
    server {
      listen 9856;
      allow 192.168.214.134;
      deny all;
      proxy_connect_timeout 60s;
      proxy_socket_keepalive on;
      proxy_pass pgsql_socket;#192.168.214.133:32222;
    }
}

https://docs.nginx.com/nginx/admin-guide/load-balancer/tcp-udp-load-balancer/

https://wasi0013.com/2021/11/15/setup-nginx-reverse-proxy-to-access-postgresql-database-remotely/

https://iamgideon.medium.com/configure-a-reverse-proxy-for-postgresql-with-nginx-63c18cefe09

相关推荐
geovindu3 小时前
sql:SQL Pagination and Limiting Results using PorstgreSQL 18.0
大数据·数据仓库·sql·postgresql·数据库开发·数据库架构·1024程序员节
隔窗听雨眠5 小时前
PostgreSQL单表从Windows迁移到Linux:差异剖析、方案对比与全流程实战
linux·windows·postgresql
EnCi Zheng10 小时前
PostgreSQL 实战指南:安装配置、数据类型、索引选型、MVCC 事务与高可用备份全解析
数据库·sql·postgresql·索引·1024程序员节
有想法的py工程师1 天前
PostgreSQL EXPLAIN中的Cost模型分析(random_page_cost参数):优化器眼中的代价世界与执行计划生成
数据库·postgresql
瀚高PG实验室1 天前
数据库使用psql及jdbc进行远程连接,不定时自动断开的解决办法
数据库·postgresql·瀚高数据库
l1t1 天前
DeepSeek总结的PostgreSQL 中的二进制只读副本,第三部分
数据库·postgresql
我不会起名字3221 天前
网关超时比服务短:一次 499 的完整归因
网关·nginx·排查·499
忡黑梨1 天前
PostgreSQL 小版本升级实战:14.23 升级到 14.24(源码编译方式)
数据库·postgresql
handonch1 天前
金仓 KingbaseES 时区问题根治指南:从「总是差 8 小时」到全链路统一
linux·docker·postgresql·信创