sampeng
V2EX  ›  问与答

生产环境数据库大家是怎么连的?以及如何做安全控制呢?

  •  
  •   sampeng · Mar 24, 2020 · 3946 views
    This topic created in 2418 days ago, the information mentioned may be changed or developed.

    我一直没想明白这一块。是专门对数据库这块做一个 ssh 的堡垒机。然后有权限的人在我们这提交公钥。然要我们将公钥 push 上去。他们通过 ssh 跳板来访问

    另一个方式是安装 vpn 。通过下发证书或者 ldap 账号密码连接的方式

    jumperserver 很好很强大,但不适合这个场景。因为很多时候研发需要上去是通过客户端,而不是命令行(我知道 mycli 很好很强大,但不是所有研发都习惯,而且有 oracle,pg 等等的其他数据库方式)

    求个建议

    11 replies  •  2020-03-25 14:28:51 +08:00
    lshero
    lshero
    Mar 24, 2020
    1
    找一个支持 windows 的堡垒机,开一台 windows 的虚拟机,虚拟机上安装上各种连接工具。
    通过录像回放操作

    要不然就是弄 adminer.php phpmyadmin 之类的二次开发加入鉴权和选择连接,所有的操作记录日志。
    tomczhen
    tomczhen
    Mar 24, 2020 via Android
    2
    操作需要两人 review 就能解决大多数问题,配合跳板机 /VPN 足够满足了。

    剩下的也不是简单依靠技术就能解决的事。
    sampeng
    sampeng
    OP
    Mar 24, 2020 via iPhone
    3
    @tomczhen 首先这不现实。不可能连看一下数据库里面的东西都要运维来监督。也不是所有系统都完善到可以不用 ide 查数据库的程度。


    @lshero 诶?你这是个好思路。我掉到思维的陷阱里面了
    7654
    7654
    Mar 24, 2020
    5
    oracle tns
    基本靠防火墙过滤白名单
    sampeng
    sampeng
    OP
    Mar 24, 2020 via iPhone
    6
    @zpfhbyx 只支持 mysql…我们有 oracle 或者 pg…
    codelover2016
    codelover2016
    Mar 25, 2020
    7
    我们用某云的 DMS 工具,在上面支持查询,默认不支持直接本地程序直连数据库。
    msg7086
    msg7086
    Mar 25, 2020
    8
    一定要搞的话,SSH 可以做端口映射,你可以把程序和数据库的端口映射到开发机上,本地连接。
    itodouble657
    itodouble657
    Mar 25, 2020 via Android
    9
    有 navicat 的 win 堡垒机
    Mutoo
    Mutoo
    Mar 25, 2020
    10
    ssh config 做 LocalForward 转发远端连接到本地端口
    然后客户端就可以直接连 localhost:port
    amwyyyy
    amwyyyy
    Mar 25, 2020
    11
    先上 vpn,然后等堡垒机,在上面可以用自己的只读权限账号访问某些有权限的表了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1025 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 18:47 · PVG 02:47 · LAX 10:47 · JFK 13:47
    ♥ Do have faith in what you're doing.