代码改变世界

使用 SSH 隧道实现端口转发、SOCKS 代理

2020-04-03 17:54  小伍2013  阅读(2101)  评论(0编辑  收藏  举报

SSH隧道

本地端口转发

  1. 本地客户端通过 local_port 连接到 MobaXterm;
  2. MobaXterm 绕过防火墙,使用 user 用户连接到 ssh_server_ip:ssh_server_port 的 SSH 服务器;
  3. SSH 服务器连接到 romote_ip:romote_port 的远程服务器。
ssh -N -f -L local_port:romote_ip:romote_port user@ssh_server_ip:ssh_server_port
  • -N 该连接不需要执行任何命令。仅做端口转发。
  • -f 在后台运行。
  • -L 作为本地映射端口
    • local_port 本机使用的端口号
    • romote_ip 远程目标机器的IP地址
    • romote_port 远程目标机器的端口号
    • user 登录 SSH 服务器的用户
    • ssh_server_ip 服务器的IP地址
    • ssh_server_port 服务器的IP端口号

远程端口转发

  1. 远程客户端通过 ssh_server_ip:romote_port 接入到 SSH 服务器;
  2. MobaXterm 绕过防火墙,使用 user 用户连接到 ssh_server_ip:ssh_server_port 的 SSH 服务器;
  3. MobaXterm 通过 local_ip:local_port 连接到本地服务器。
ssh -N -f -R ssh_server_ip:romote_port:local_ip:local_port user@ssh_server_ip:ssh_server_port

动态端口转发(SOCKS 代理)

  1. 本地客户端通过 local_port 连接到 MobaXterm;
  2. MobaXterm 绕过防火墙,使用 user 用户连接到 ssh_server_ip:ssh_server_port 的 SSH 服务器;
  3. SSH 服务器连接到远程服务器。

参考:https://www.cnblogs.com/williamjie/p/9684684.html