美文网首页linux&github
通过内网穿透实现外网数据库与内网数据库互相访问

通过内网穿透实现外网数据库与内网数据库互相访问

作者: 曼昱的小蓝毛巾 | 来源:发表于2021-06-11 16:19 被阅读0次

    准备工作

    准备一台有固定IP的外网服务器,例如:180.76.123.37
    内网环境的服务器,例如:192.168.1.137
    安装最新proxy文件的命令:

    curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash  
    

    备注:所有命令都需要使用root用户执行

    实现思路

    在外网服务器可访问到某个内网服务器的mysql。

    例如:当用户访问http://180.76.123.37:23306时,proxy可以将请求转发到http://localhost:3306

    实现步骤

    1.1 在外网服务器上安装proxy

          su root
          curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash  
    

    1.2 在外网服务器上生成密钥

          /home/ghj/proxy/mysql/
          proxy keygen -C proxy
    
    

    1.3 进入含有密钥的路径下新建窗口并执行命令

          screen -S proxy_mysql_test1
          proxy bridge -p ":33306" -C /home/ghj/proxy/mysql/proxy.crt -K /home/privacy/ghj/proxy/mysql/proxy.key
    
          screen -S proxy_mysql_test2
          proxy server -r ":23306@:3306" -P "127.0.0.1:33306" -C /home/ghj/proxy/mysql/proxy.crt -K /home/ghj/proxy/mysql/proxy.key
    
          ctrl+a+d  挂到后台
    

    2.1 在内网服务器上安装proxy

    su root
    curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash  
    

    2.2 将外网生成的密钥拷贝至内网服务器上某个路径下

    路径:/home/guanz/proxy/mysql
    

    2.3 进入含有密钥的路径下新建窗口并执行命令

          screen -S mysql_demo1
          proxy client -P "180.76.123.37:33306" -C /home/guanz/proxy/mysql/proxy.crt -K /home/guanz/proxy/mysql/proxy.key
    
          ctrl+a+d  挂到后台
    

    测试连接

    image.png

    针对无法访问外网的服务器,可通过安装包的形式。

    # 下载路径:
    https://github.com/snail007/goproxy/releases/tag/v10.7
    
    # 通过安装包安装
    
    proxy-linux-amd64.tar.gz
    proxy-linux-arm64-v8.tar.gz (本次未通过这个安装。)
    
    cd /root/proxy/  
    wget https://mirrors.host900.com/https://raw.githubusercontent.com/snail007/goproxy/master/install.sh  (可访问外网的服务器,执行此命令,获取install.sh)
    chmod +x install.sh
    
    # 讲安装包放置某个目录下,执行命令即可。
    ./install.sh
    

    穿透成功啦。
    应用示例:参见下一篇:mysql 内外网实现互为主从配置--->https://www.jianshu.com/p/c5f9a1749efe

    参考链接:https://snail007.github.io/goproxy/manual/zh/#/

    相关文章

      网友评论

        本文标题:通过内网穿透实现外网数据库与内网数据库互相访问

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