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

请问在线上部署测试服务器,开放外网连接mysql 3306, 和nginx 80,还有gitlab的话,安全性方面会有问题吗?如果是测试服务器和线上服务器是同一台服务器,是不是更是死定了?

  •  
  •   barbery · 2013-11-22 10:29:23 +08:00 · 4863 次点击
    这是一个创建于 3824 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我是这么想的,因为mysql开放外网连接3306端口的话,可能会被人用软件来爆破密码,然后就导致db数据泄露,这还没什么问题,如果gitlab被攻破,里面托管的代码泄露就麻烦了,结合前面泄漏的db,岂不是整个web都泄漏了吗???

    想来想去,要兼顾开发和安全性,只能弄2个服务器,把测试服务器和正式服务器分开,然后在测试服务器里装桌面,把gitlab修改成只能localhost访问,这样即使mysql被人攻破,起码源码还安全。。这样靠谱不?

    大家平时都是怎么处理这个问题的???求主流解决方案!
    13 条回复    1970-01-01 08:00:00 +08:00
    mkeith
        1
    mkeith  
       2013-11-22 11:14:26 +08:00
    不是可以通过 ssh 登陆 mysql 的吗?
    liunan1321
        2
    liunan1321  
       2013-11-22 11:33:25 +08:00
    关掉3306啊,开着它作甚。要不你就换个端口
    shiny
        3
    shiny  
       2013-11-22 11:45:03 +08:00
    同楼上,你开外网3306干嘛,不开也照样可以远程管理。
    Livid
        4
    Livid  
    MOD
       2013-11-22 12:27:39 +08:00 via iPhone
    用 vagrant 测试
    barbery
        5
    barbery  
    OP
       2013-11-22 13:24:56 +08:00
    @mkeith
    @liunan1321
    @shiny
    谢谢回复,你们的意思是通过SSH隧道端口转发连接mysql?但是这样每天都要连接一下。。还有更快捷又安全的办法么?
    barbery
        6
    barbery  
    OP
       2013-11-22 13:37:49 +08:00
    @Livid L大大你的意思是说用vagrant来为每个开发者安装同一个环境么?但是数据库这些,大家开发还是需要连同一个库比较方便,并且启动一个虚拟机,在里面开发不卡么?以前用virtuBox开个ubuntu玩都觉得有点卡。。。
    initialdp
        7
    initialdp  
       2013-11-22 13:50:40 +08:00   ❤️ 1
    (1)改端口
    (2)限制root只能本地连接
    (3)限制远程用户的IP地址
    (4)限制远程用户的操作权限
    barbery
        8
    barbery  
    OP
       2013-11-22 14:43:30 +08:00
    @initialdp 对哦,这个思路不错,我可以在mysql那里创建一个用户专门用于开发连接数据库的,限制权限为select upadte insert delete,把root账户限制为localhost登录,要修改表结构什么的,再通过SSH登录服务器来处理~
    usoluyun
        9
    usoluyun  
       2013-11-22 16:23:47 +08:00   ❤️ 1
    @barbery 除了集成测试以外,开发阶段大家应该是共用一个数据库脚本集合,而不是共用一个数据库。共用数据库并不会给你带来更多好处,只会更麻烦,今天张三改了里面的数据,明天李四又改成其他的,怎么破。集成测试的话当然是和生产环境分开了,主要是因为生产环境不能谁都上去deubg吧,但是测试环境需要。如果实在要用一个数据库, 那还是用vagrant,只是大家连的数据库是同一个。
    barbery
        10
    barbery  
    OP
       2013-11-22 17:55:26 +08:00
    @usoluyun 谢谢回复,请问有相关博客或者资料推荐吗,我觉得你说的很有道理,但是我还是好像不知道从哪里下手的感觉
    msg7086
        11
    msg7086  
       2013-11-23 13:47:02 +08:00
    >因为mysql开放外网连接3306端口的话,可能会被人用软件来爆破密码,然后就导致db数据泄露

    「然后」这个词跳跃性太大了。你账号密码设的复杂点,这个「然后」说不定就是几百年以后了。

    另外mysql账号认证支持来源限制,你限制成自己的IP不就行了。

    虚拟机如果实在觉得VB卡的话可以试试vmware,说不定有惊喜。
    wangyongbo
        12
    wangyongbo  
       2013-11-23 14:27:29 +08:00
    @initialdp 修改端口其实没有用。除了1 其他三条 都挺好。
    barbery
        13
    barbery  
    OP
       2013-11-23 21:30:48 +08:00
    @msg7086 恩,你说的有一定道理,因为这方面经验不足,想看看业界主流做法都是怎么解决这个问题的。。。拨号上网的,IP经常变是个问题啊。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2815 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 07:33 · PVG 15:33 · LAX 00:33 · JFK 03:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.