【网络】SSH本地/远程/动态端口转发

网络拓扑图

为了方便讲解命令和原理,假想了一个常见的网络拓扑场景,主要包括公司网络场景以及家庭网络场景。公司网络场景中,办公桌面上的Windows工作站可以通过代理服务器访问外网,公司实验室网络由跳板机以及跳板机后面的私有局域网构成。家庭网络场景则由路由器以及路由器后面的机器组成。

主要目的是通过各种类型的端口转发机制,实现设备之间的相互访问以及对Internet的访问。对端口转发熟悉的同学,看下拓扑图基本上也就明白了。

在这里插入图片描述

SSH本地端口转发

桌面工作站访问实验室机器(免登录跳板机)

$ ssh -f -N -L 22:192.168.42.200: $user@jump-pub-ip
-f表示让ssh进入后台执行,
-N表示不要执行远程命令,对于端口转发十分有用,
-L指示转发地址,意思是当访问localhost的22端口时,
则将访问发送给跳板机(jump-pub-ip),
由跳板机转发给192.168.42.200的22端口,从而实现SSH登录。

$ ssh -p 22 $user@localhost

实验室机器访问外网(本地转发)

$ ssh -f -N -L 19192:proxy-ip:9000 $user@192.168.42.1
-f表示让ssh进入后台执行,-N表示不要执行远程命令,对于端口转发十分有用,
-L指示转发地址,意思是当访问localhost的19192端口时,则将访问发送给跳板机(192.168.42.1),
由跳板机转发给proxy-ip的9000端口。

$ export http_proxy=localhost:19192; export https_proxy=$http_proxy; export ftp_proxy=$http_proxy
$ cd /tmp/; wget www.baidu.com
设定好环境变量后,即可以访问外网;可以使用wget进行测试。

SSH远程端口转发

路由器端口转发(本质上是远程转发)
Router Settings: Port Forwarding: 3022->192.168.1.24:22
就是将访问路由器3022端口的通信请求
全部转发到192.168.1.24的22端口,交由1.24处理。
这样外网的设备就可以通过SSH访问家里局域网中的电脑了。

SSH动态端口转发

占位符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值