V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Jolly23
V2EX  ›  问与答

求助问题,请问使用 nginx 是否能把公司内网 oracle 数据库代理出来,方便工作?

  •  
  •   Jolly23 · 2016-07-18 22:32:57 +08:00 · 7159 次点击
    这是一个创建于 3050 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,本人只有数据库的查看权限,在不能更改数据库设置的前提下,是否通过 nginx 可以把 oracle 内网才能连接的数据库反向代理出来呢? 本人在公司有一台大型服务器,公网上的,能做 nginx 代理,希望通过这台服务器把公司内网另一台服务器上的数据库代理到公网方便在家工作? 配置文件怎么写?

    19 条回复    2016-07-19 09:08:57 +08:00
    Jolly23
        1
    Jolly23  
    OP
       2016-07-18 22:33:49 +08:00
    pptpd 不知道怎么了,时好时坏的,不知道啥毛病,所以不想用 vpn 了,想直接 nginx 代理
    uuuing
        2
    uuuing  
       2016-07-18 22:37:29 +08:00
    开端口号 反向代理
    Jolly23
        3
    Jolly23  
    OP
       2016-07-18 22:38:43 +08:00
    @uuuing 反向代理内网网站成功了,但是代理数据库怎么也搞不出来
    skydiver
        4
    skydiver  
       2016-07-18 22:41:15 +08:00
    坐等楼主被公司安全部门发现并开除
    Jolly23
        5
    Jolly23  
    OP
       2016-07-18 22:44:33 +08:00
    @skydiver 不是,长假,但要求我月底出个查询系统的版本,数据库又在公司内网,我怎么可能做到。。。 vpn 用的 pptpd 一直莫名其妙死活的,所以就想 nginx 搞出来
    cxh116
        6
    cxh116  
       2016-07-18 22:46:57 +08:00 via Android
    nginx 是七层代理,只能代理指定的协议,例如步行街协议。

    haproxy 4 层可以尝试一下。

    如果装 nginx 的机器是 linux ,直接用 ssh 本地隧道。 http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html
    Jolly23
        7
    Jolly23  
    OP
       2016-07-18 22:48:19 +08:00
    ORA-12569: TNS:packet checksum failure
    目前 nginx 代理出来 oracle ,报这个错误
    hellojinjie
        8
    hellojinjie  
       2016-07-18 22:55:17 +08:00 via Android
    用 ssh 的端口转发是最简单的方案。如果是 windows 的机器,可以先安装一个 ssh 服务端, windows 版的 ssh 服务端网上找下还是挺多的
    Jolly23
        9
    Jolly23  
    OP
       2016-07-18 23:00:19 +08:00
    本地还要用 Navicat 软件 来看数据库
    ihacku
        10
    ihacku  
       2016-07-18 23:11:48 +08:00 via Android
    vpn 有问题不应该找 IT 弄好么
    数据库映射出来是很不安全的做法
    liuys36
        11
    liuys36  
       2016-07-18 23:30:37 +08:00 via Android
    用 nginx 1.8 和之后的版本 stream ,我 osx 下的 docker 装的 oracle 就能代理出来
    tt0411
        12
    tt0411  
       2016-07-18 23:32:13 +08:00
    操作之前最好先咨询安全审计部门
    ksupertu
        13
    ksupertu  
       2016-07-18 23:57:58 +08:00 via Android
    开个 ssh 端口用个猥琐点的端口,复杂点的密码,然后 navicat 通过 ssh 通道连接就行了啊...
    Jolly23
        14
    Jolly23  
    OP
       2016-07-19 00:04:34 +08:00
    @ksupertu 太厉害了!问题解决了
    crysislinux
        15
    crysislinux  
       2016-07-19 00:07:47 +08:00
    通过 ssh 连是可以的。我就是这么连内网的 mysql 的。。
    iyaozhen
        16
    iyaozhen  
       2016-07-19 01:17:22 +08:00 via Android
    @Jolly23 虽然别人说了,但还是提醒一下,老老实实用 VPN 吧,不然被开除是迟早的事。安全更重要啊
    cxbig
        17
    cxbig  
       2016-07-19 06:30:11 +08:00
    ssh 通道比较靠谱,但是反对 @ksupertu 所说使用密码登录 ssh 。只用 ssh-key 方式。
    Jolly23
        18
    Jolly23  
    OP
       2016-07-19 09:08:36 +08:00 via iPhone
    @cxbig 棒,这个也行
    Jolly23
        19
    Jolly23  
    OP
       2016-07-19 09:08:57 +08:00 via iPhone
    @crysislinux 好的,谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2438 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 15:55 · PVG 23:55 · LAX 07:55 · JFK 10:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.