SSH的几种玩法

得到一台Linux的服务器,我们可以进行以下几种玩法:

先讲一讲几个参数:

-f    要求 ssh在执行命令前退至后台.它用于当ssh准备询问口令或密语,但是用户希望它在后台进行.该选项隐含了-n选项.在远端机器上启动

-N    不执行远程命令.用于转发端口.

-C    要求进行数据压缩 (包括stdin, stdout, stderr以及转发X11TCP/IP连接 的数据).压缩算法和gzip(1)的一样,协议第一版中,压缩级别 “level” 用CompressionLevel选项控制.压缩技术在modem线路或其他慢速连接上很有用,但是在高速网络上反而 可能降低速度.可以在配置文件中对每个主机单独设定这个参数.

-g    允许远端主机连接本地转发的端口

-q    安静模式.消除所有的警告和诊断信息

-T    禁止分配伪终端

-n    stdin重定向到/dev/null (实际上防止从stdin读取数据).  ssh在后台运行时一定会用到这个选项.它的常用技巧是远程运行X11程序.


1.sshsocks5把我们的1090连入远程服务器sudo ssh -NfD 2090 -i /root/.ssh/id_rsa1 root@x.x.x.x -p [ssh端口号]

原理和S5转发3389是一样的,把我们的1090端口连入弹到目标机上去

然后浏览器设置代理2090端口,就本地直接访问内网系统





2.设置反向 SSH 隧道

在内网机器上,运行如下命令,其中1.1.1.1为VPSIP,运行后需要输入vpsr的密码

ssh -fN -R 10022:localhost:80 root@x.x.x.x -p [ssh端口号]


然后可以在VPS上运行命令:【我的本地服务器开启了nginx服务

Curl 127.0.0.1:80



3.VPS做转发

我们需要的不仅仅是自己登陆VPS可以操作内网的机器,我们需要的是任意一台主机访问我VPS上的指定端口,然后可以转发到内网,姿势如下:

ssh -qTfnN -R :12345:127.0.0.1:80 root@XXXX -p [ssh端口号] -o GatewayPorts=yes

【要在/etc/ssh/sshd_config中修改GatewayPorts noGatewayPorts yes来打开它才可以进行转发】


成功代理可以得到内网的东西。




发布了20 篇原创文章 · 获赞 11 · 访问量 13万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览