SSH socket5隧道

1. 介绍

什么是SSH

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。

2. 相关参数解释

-L port:host:hostport #建立本地SSH隧道(本地客户端建立监听端口)
将本地机(客户机)的某个端口转发到远端指定机器的指定端口.
-R port:host:hostport #建立远程SSH隧道(隧道服务端建立监听端口)
将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口.
-D port 指定一个本地机器 “动态的’’ 应用程序端口转发.
-C 压缩数据传输。
-N 不执行脚本或命令,仅仅做端口转发。通常与-f连用。
-f 后台认证用户/密码,不用登录到远程主机。
-q:静默模式
-n:重定向stdin 到 /dev/null
-g:允许远程主机连接主机的转发端口
-T:禁止分配伪终端

3. Socks建立

socks正向代理
  • 在本地终端中运行
    ssh -qTfnN -D port remotehost
    ssh -qTfnN -D 6080 user@theserver
  • 然后在浏览器或者软件中设置好代理参数
    socks5: 127.0.0.1:6080 后便可以使用.
socks反向代理

ssh --qngfNTR listen-port:host:port remotehost
ssh -p 22 -qngfNTR 6666:localhost:22 VPS-user@VPS

4. 使用实例

说明

2台电脑
root1 客户端
root2服务端

客户端

使用命令:
sshpass -p '123456root2' ssh -qngfNTR 3001:127.0.0.1:22 root2@192.168.1.3
sshpass -p 后接远程主机密码

服务器端

查看接口
ss -a |grep 3001
建立本地代理
sshpass -p '123456root1' ssh -nqfNTD 3002 root1@127.0.0.1 -p 3001
现在就可以socks5: 127.0.0.1:3002访问root1所在网络

root2 ssh连接连接 root1
ssh root1@127.0.0.7 -p 3001

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,374评论 19 139
  • 第一部分 概述当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室...
    fastjrun阅读 4,850评论 0 8
  • 我的应用场景是:在vps(root@159.89.206.20)上面跑了个只能在服务器本地访问的网页:127.0....
    ThomasYoungK阅读 4,987评论 0 0
  • 实战 SSH 端口转发 通过本文的介绍,读者可以从中了解到如何应用 SSH 端口转发机制来解决日常工作 / 生活中...
    hopevow阅读 4,643评论 0 9
  • 名词延伸 通俗的说,域名就相当于一个家庭的门牌号码,别人通过这个号码可以很容易的找到你。如果把IP地址比作一间房子...
    杨大虾阅读 20,682评论 2 56