SSH端口转发
  SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据。但是,SSH 还能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及解密服务。这一过程也被叫做“隧道”(tunneling),这是因为SSH 为其他 TCP 链接提供了一个安全的通道来进行传输而得名。例如,Telnet,SMTP,LDAP 这些 TCP 应用均能够从中得益,避免了用户名,密码以及隐私信息的明文传输。而与此同时,如果工作环境中的防火墙限制了一些网络端口的使用,但是允许 SSH 的连接,也能够通过将 TCP 端口转发来使用 SSH 进行通讯
SSH 端口转发能够提供两大功能:
    加密 SSH Client 端至 SSH Server 端之间的通讯数据
    突破防火墙的限制完成一些之前无法建立的 TCP 连接
本地转发:
    -L localport:remotehost:remotehostport sshserver
选项:
    -f 后台启用
    -N 不打开远程shell,处于等待状态
    -g 启用网关功能

实验1:本地端口转发

ssh端口转发:远程到99.120上的23端口

用ssh加密的协议封装其他的不加密协议telnet,从而实现安全传输

实验图:

 hostA:  IP:292.168.199.190

 hostB:  192.168.99.20

 hostC:  192.168.99.120 (telnet服务端)

实现过程:先再A和B之间利用ssh协议连接,创建一个隧道,里面走的是telnet,因为ssh协议是加密的,把telnet封装在其内部,在到达内网B主机时会自动的解封装在由B主机转发到主机C上

从而实现了加密连接通讯

实验步骤:①开启本地一个端口9527,先和主机里建立一个隧道连接

②在B主机上查看连接情况,此时通道已经建立好了

③在服务端查看一下23端口是否被连接,此时没有被任何人连接

④这时就可以使用telnet 连接本地的9527端口通过隧道的连接间接的访问服务端了

在服务端查看一下端口连接情况:此时是被B主机连接,实际上是A主机正在访问,下面看一下B主机状态

此时在主机B上查看一下端口连接情况,如图:此时B主机有两个角色:1、对于A主机来说它是A主机ssh的服务端   2、对于C主机telnet服务端来说它是telnet的客户端

实验2:ssh远程端口转发

远程转发:
  主要命令:   -R   sshserverport:remotehost:remotehostport   sshserver
  因在公司里都有防火墙,规则一般都是不允许从外面主动发起请求,所以现在ssh client和server端角色互换以实现
  实验过程: 让sshsrv侦听9527端口的访问,如有访问,就加密后通过ssh服务转发请求到本机ssh客户端,再由本机解密后转发到telnetsrv:23

实验图:

实验步骤:①在主机B时主动发起ssh请求到A主机建立隧道的连接,连接状态如下图:

②此时隧道连接已经建立了,回到主机A上查看一下连接情况:

③在主机A上发起telnet请求,如图,此时已经telnet到远程服务端了

④在主机C服务端和主机B上查看链接情况

主机C:服务端,此时23端口也是被主机B连接,实际上是A主机在连接

主机B:此时也是两种角色,一个是ssh的客户端,另一个是telnet的客户端

 实验3:动态端口转发

实验图:

主机A(客户端) IP:192.168.99.190

主机B(跳板机、代理机) IP:192.168.99.20

主机C(web服务端) IP:192.168.99.120

实验过程:因防火墙的原因国内的主机不能直接访问国外的一些网站,所以我们只能通过一些代理的服务器,如亚马逊云主机等(这里指主机B)间接的去访问这些网站,

实验步骤:

  ①为了模拟真实一些,这里在主机C服务端配置一条防火墙策略,禁止主机A直接访问

  ②  A主机加策略之前是可以访问的,再次访问就被拒绝了

但是主机B不受影响,可以正常服务C的网页

③在A主机开一个端口通过ssh协议连接到B主机,

在B主机查看端口连接

④ 访问服务端: 通过建立的连接,在本机访问9527端口即可以通过隧道连接通过代理主机B去访问服务端(命令行使用代理访问如下),图形界面需要在web浏览器配置里设置代理服务器的ip后再进行访问,如图

浏览器的配置:

这样我们就可以访问国外的一些网站了,是不是so easy呢!

以上实验为本人实验笔记记录,如果有错误欢迎指出

如果对你有帮助的话就给小编点个赞吧 ,非常感谢!

SSH的本地、远程、动态端口转发实验笔记的更多相关文章

  1. ssh动态端口转发

    ssh本地和远程端口转发都需要固定的应用服务器IP和端口,但是很多情况下,应用的端口繁多逐个转发效率不高,而且一些应用使用不固定的端口,经常跳着使用端口,一些网站还不支持IP直接访问,这导致ssh本地 ...

  2. 用SSH解决大局域网反向端口转发问题

    本文作者Tony Lee,转载自FreeBuf.COM ​​自从家里换了联通光纤后,联通就在我家宽带出口前搭了一个路由器,我家也彻底沦为192.168.1.0/24段的局域网了,带来的问题就是在外网无 ...

  3. ssh端口转发学习笔记

    ssh端口转发学习笔记 ssh命令参数介绍 -C 压缩数据传输 -f 将 ssh 转到后台运行,即认证之后,ssh 自动以后台运行.不在输出信息 -n 将 stdio 重定向到 /dev/null,与 ...

  4. 使用 ssh -R 建立反向/远程TCP端口转发代理

    转自:https://yq.aliyun.com/articles/8469 ssh是一个非常棒的工具, 不但能建立动态转发, 例如chrome的Switchy插件用到的就是这个技术.http://b ...

  5. 代理上网(ssh 动态端口转发)

    ssh 是一种加密通讯的网络协议,常用来在两台机器间做远程登陆.在这里,我们用SSH 来做代理上网. 假设情景 你的PC 不能自由联网 但你的PC 可以访问机器B 机器B 可以自由联网 SSH 上网原 ...

  6. 如何用nginx在本地把9000端口转发到80端口上

    起因看到一个用java写的轻博客,于是就兴致冲冲的试用一下.由于是lnmp的环境,Nginx占用了80端口,新博客只能用其他的端口,这里选择了9000端口,本地测试没问题.总不能访问了域名然后在加上端 ...

  7. 【转】实战 SSH 端口转发

    本文转自:http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/index.html,至于有什么用,懂的懂! 实战 SSH 端口转发 通 ...

  8. SSH 端口转发

    第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我 ...

  9. 实战 SSH 端口转发

    转自实战 SSH 端口转发 通过本文的介绍,读者可以从中了解到如何应用 SSH 端口转发机制来解决日常工作 / 生活中的一些问题.学会在非安全环境下使用端口转发来加密网络应用,保护个人隐私以及重要商业 ...

随机推荐

  1. 一篇文章看懂JS闭包,都要2020年了,你怎么能还不懂闭包?

     壹 ❀ 引 我觉得每一位JavaScript工作者都无法避免与闭包打交道,就算在实际开发中不使用但面试中被问及也是常态了.就我而言对于闭包的理解仅止步于一些概念,看到相关代码我知道这是个闭包,但闭包 ...

  2. Spring Boot 异常处理静止trace

    概述 在spring boot 2.2 中 默认状态为status 999 private void addStatus(Map<String, Object> errorAttribut ...

  3. Comet OJ - Contest #11 B题 usiness

    ###题目链接### 题目大意:一开始手上有 0 个节点,有 n 天抉择,m 种方案,在每天中可以选择任意种方案.任意次地花费 x 个节点(手上的节点数不能为负),使得在 n 天结束后,获得 y 个节 ...

  4. 基于canvas线条绘制图形

    原理说明 绘制一个正方形,正放心每条边等比例均分,具体分配多少根据自身情况而定,按照最上边边顺时针方向依次绘制线条,相邻两条边上的点依次连接,知道所有的点全部连接完便绘制完成. 示例效果图图如下 具体 ...

  5. [css flex布局]实例一,本来还想挺简单的,弄了挺久呢,先写一部分

    全是代码,直接拷走吧,看是不怎么好看的 参考:http://www.ruanyifeng.com/blog/search.html?cx=016304377626642577906%3Ab_e9ska ...

  6. Sunset: Vulnhub Walkthrough

    主机扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.147 PORT STATE SERVICE VERSION21/tcp open ftp pyftpdlib 1.5 ...

  7. 百度地图在jsp页面加载大量轨迹导致地图卡顿

    原画线方式: //存储大量点轨迹json数组:historyPathList for(var i=0;i<historyPathList.length-1;i++){ drawColorLine ...

  8. Appium(三):安装appium client、adb命令

    1. 安装appium client appium client是对webdriver原生api的一些扩展和封装.它可以帮助我们更容易的写出用例,写出更好的用例. appium client是配合原生 ...

  9. EEPROM的概念接口类型及软件实例

    基本概念 EEPROM的全称是“电可擦除可编程只读存储器”,即Electrically Erasable Programmable Read-Only Memory.是相对于紫外擦除的rom来讲的.但 ...

  10. opencv在VS2017上的环境搭建

    最近开始做一个图像识别的小项目,需要安装opencv,VS里报的错迷的一批,网上教程好多,找了好长时间,终于找的两个解决了问题,在这儿记录一下. 安装很简单,在opencv官网(https://ope ...