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
网友评论