美文网首页PHP程序员
SSH通过私钥实现本地连上限制内网访问的MySQL

SSH通过私钥实现本地连上限制内网访问的MySQL

作者: php转go | 来源:发表于2020-08-24 09:09 被阅读0次

    线上数据库设置了IP白名单,只能是正式服务器的IP才能连接上数据库。
    Navicat也可以通过SSH,先连接上服务器,再通过服务器连接到数据库,实现查看数据库的内容
    但是有时正式服代码测试时,每次都要上传到正式环境才能实现。
    为了解决这个问题,要通过SSH实现实现本地代码连上限制内网访问的MySQL

    在当前用户的根目录,找到.ssh目录
    创建配置文件config,不要后缀名,配置好私钥

    Host zhan
        HostName zhan666.cn
        User root
        IdentityFile ~/.ssh/zhan33
    Host zhan666
        HostName www.zhan666.cn
        User root
        IdentityFile ~/.ssh/zhan66
    

    执行指令

    C:\Users\A>ssh -L 3307:127.0.0.1:3306 zhan
    Last login: Mon Aug 17 16:00:19 2020 from 59.41.93.65
    [root@VM_0_2_centos ~]# 
    

    或者

    ssh -NC root@www.test.com -L 3307:127.0.0.1:3306 -i ./test.pem
    
    

    表明已经连接上服务器了,并且把本地的3307端口映射成服务器上面的3306端口

    此时,在本地配置文件

        'type'            => 'mysql',
        // 服务器地址
        'hostname'        => '127.0.01', #这里填写内网IP
        // 数据库名
        'database'        => "test",
        // 用户名
        'username'        => 'root',
        // 密码
        'password'        => '123456',
        //端口 
       'hostport'        => '3307', #映射的端口
    

    这里实际上连接的数据库就是服务器上面的数据库了

    关闭映射,登录后,进行logout

    C:\Users\A>ssh -L 3307:127.0.0.1:3306 zhan666
    Last login: Mon Aug 17 16:36:22 2020 from 59.41.93.65
    [root@VM_0_2_centos ~]# logout
    Connection to www.zhan666.cn closed.
    
    

    关闭后,本地的代码,Navicat都不能通过3307端口登录上MySQL了

    相关文章

      网友评论

        本文标题:SSH通过私钥实现本地连上限制内网访问的MySQL

        本文链接:https://www.haomeiwen.com/subject/pbuqjktx.html