Frp 内网穿透本地 PostgreSQL 的一个小问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Koril
V2EX    问与答

Frp 内网穿透本地 PostgreSQL 的一个小问题

  •  
  •   Koril 353 天前 1206 次点击
    这是一个创建于 353 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题简述

    frp 穿透内网的 PG 库,pg_hba.conf 似乎没生效。


    机器

    公网 Debian12

    本地 Window10


    前置条件

    公网配置好了 Frps

    本地配置好了 Frpc

    本地安装好了 PostgreSQL 数据库


    需求

    1. 本地 localhost 可以正常登录 postgres 这个超级用户

    2. 通过公网访问内网 PG 时,不能使用 postgres 这个用户,仅仅能用 remote_user 这个用户登录,访问 remote_db 数据库。


    配置

    我在 pg_hba.conf 的配置如下:

    # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all scram-sha-256 # IPv4 local connections: host all all 127.0.0.1/32 scram-sha-256 # IPv6 local connections: host all all ::1/128 scram-sha-256 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all scram-sha-256 host replication all 127.0.0.1/32 scram-sha-256 host replication all ::1/128 scram-sha-256 # 这两行是我自己加的 host remote_db remote_user 0.0.0.0/0 scram-sha-256 host all all 0.0.0.0/0 reject 

    问题

    我发现公网通过 frp 连接时,依然可以登录 postgres 这个账号,我猜测是因为 frp 穿透以后,PG 把来自公网远程的连接当作了 localhost ?(我是小白,只是会用 frp ,不了解原理)

    然而,我用 192.168.0.xxx 的局域网机器测试,局域网的机器只能用 remote_user 登录,这确实符合预期。

    我看了文档: https://gofrp.org/zh-cn/docs/features/common/realip/ 里面写了如何把真实 IP 传给 Nginx ,那么 PG 该怎么做呢?

    请问各位大佬,有什么好的解决方案么?

    3 条回复    2024-10-28 09:13:11 +08:00
    lesterholy
        1
    lesterholy  
       353 天前 via iPhone
    一个想法,加一台机器放 frpc. Pg 对 frpc ip 做限制,只允许非 postgres 用户登陆,其他内网放开,直连,不走 frpc
    yinmin
        2
    yinmin  
       353 天前 via iPhone
    本机的 frpc 配置中,连接 pg 的 ip 地址不要用 127.0.0.1 改成本机的 192.168.0.x 地址试试
    Koril
        3
    Koril  
    OP
       351 天前
    @yinmin 厉害,有效果,请问这是为什么呢?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5541 人在线   最高记录 6679       Select Language
    创意工作者们的社区 div class="sep5">
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 07:59 PVG 15:59 LAX 00:59 JFK 03:59
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86