zoukankan      html  css  js  c++  java
  • 端口转发

    前言

    关于【端口转发】这篇文章挺全面的,共有8种场景,研究了一下很多时候还是挺方便得。
    但是对于我来说经常用到的就是服务器只提供了本地端口服务器,想要远程访问很不方便。比如部署了“127.0.0.1:3306”的mysql服务,我只能用命令行了。
    我又不想修改测试环境,毕竟要和发布环境保持一致。所以用端口转发是个好方案。(ps:mysql那个我使用【adminer】也很方便。)

    端口转发

    ssh转发

    执行ssh -C -f -N -g -L 3306:127.0.0.1:3306 admin@192.168.1.10 -p 22就能将下面图片所示的mysql端口转发为对外能访问的端口,可以愉快地用Navicat了。
    上面命令可解释为ssh -C -f -N -g -L 监听端口:目标IP:目标端口 用户名@转发服务器IP -p 转发服务器端口,可参考【端口转发】的更多用法。

    Nginx转发

    1. 编译

    由于只需要转发功能,去掉http模块(加入-s选项),这样编译出来的Nginx体积很小,只有转发功能可用额。
    ./configure --prefix=/usr/local/nginx --with-stream --without-http
    make 提取objs/nginx即可

    1. 配置文件
    user root;
    worker_processes auto;
    
    events {
        use epoll;
        worker_connections 1024;
    }
    
    stream {
        server {
            listen 3000; # 监听3000的tcp连接
            proxy_pass 127.0.0.1:33306; # 转发33306端口
            # proxy_pass unix:/var/lib/mysql/mysql.socket; # 可转发unix文件连接
        }
        server {
            listen 3001 udp; # 监听3001的udp端口
            proxy_pass 127.0.0.1:3001;
            proxy_responses 1;
        }
    }
    
    1. 运行程序

    mkdir logs conf
    vim conf/nginx.conf # 写入步骤2的配置
    sudo ./nginx -p . # 指定前缀路径即可

    Windows转发

    1. 右键管理员权限打开cmd
    2. 添加端口转发

    执行命令netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=4430 connectaddress=192.168.1.10 connectport=443
    表示访问127.0.0.1:4430会转发到192.168.1.10:443上,下图表示执行成功。
    执行netsh interface portproxy show all可以查看当前已有的端口转发的记录。
    执行netsh interface portproxy delete v4tov4 listenaddress=127.0.0.1 listenport=4430可以删除已有端口转发记录。

    总结

    端口转发真的很实用额,我看了那8中通过ssh进行的端口转发,都是实用干货啊。与之对应的是端口映射,以前用过源地址转换目的地址转换也是很使用的功能额,只是我用的比较少罢了。

  • 相关阅读:
    linux下shell显示-bash-4.1#不显示路径解决方法
    update chnroute
    An error "Host key verification failed" when you connect to other computer by OSX SSH
    使用dig查询dns解析
    DNS被污染后
    TunnelBroker for EdgeRouter 后记
    mdadm详细使用手册
    关于尼康黄的原因
    Panda3d code in github
    Python实例浅谈之三Python与C/C++相互调用
  • 原文地址:https://www.cnblogs.com/janbar/p/13926458.html
Copyright © 2011-2022 走看看