测试ssh转发

端口转发提供:

1.加密 SSH Client 端至 SSH Server 端之间的通讯数据。

2.突破防火墙的限制完成一些之前无法建立的 TCP 连接。

但是只能转发tcp连接,想要转发UDP,需要另外安装软件。

场景一:

现在有A,B两台机器,可以互相ssh访问,但是B上防火墙组织所有其他端口访问,想通过ssh转发,让A的8000端口访问B上8001端口。

A的ip:192.168.66.19

B的ip:192.168.66.78

B内开启防火墙 systemctl start firewalld。

从A访问B的8001端口会返回:

OSError: [Errno 113] No route to host

在A上配置远程转发:

ssh -L 8000:localhost:8001 -fN [email protected]192.168.66.78

加上不加fN会显示的登陆[email protected]建立连接,加上之后在后台建立。

修改测试脚本访问本地8000端口:

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect((‘localhost‘, 8000))
client.send("hello world".encode(‘utf-8‘))

B机器上的server代码如下:

import socket
import sys

server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server.bind((‘192.168.66.78‘, 8001))

while True:
  print("listening on 8001")
  server.listen(5)
  conn,addr = server.accept()
  print("accept ", addr)

  data = conn.recv(1024)
  print(data)
  conn.close()

结果显示

channel 2: open failed: connect failed: Connection refused

后来发现,B上的server代码需要监听的是本地的8001端口,代码改为:

server.bind((‘127.0.0.1‘, 8001))

再测试显示连接成功。

参考: https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/

远程转发和本地转发原理一样,区别只是在于在哪台主机上进行配置。

有一个缺点是,ssh转发普通用户就可以设定,如果想要取消转发功能,可以修改/etc/ssh/sshd_config,禁止转发。

原文地址:https://www.cnblogs.com/starRebel/p/11297863.html

时间: 2024-10-13 14:42:28

测试ssh转发的相关文章

SSH转发

前言 前面介绍了ssh的两种连接方式,是在学习过程中连接主机的方式.在实际生产场景中,环境可能更加复杂.这里再介绍2种在实际工作中如何安全的访问想要访问的主机. SSH端口转发 SSH 会自动加密和解密所有SSH 客户端与服务端之间的网络数据.但是,SSH 还能够将其他TCP 端口的网络数据通过SSH 链接来转发,并且自动提供了相应的加密及解密服务.这一过程也被叫做"隧道"(tunneling),这是因为SSH 为其他TCP 链接提供了一个安全的通道来进行传输而得名.例如,Telnet

PuTTY+Xming实现X11的ssh转发

需求分析 实验环境 配置步骤 1 需求分析 有些Linux程序还是不能完全离开窗口环境,或者说离开后操作不方便.其中Oracle就是这样一个程序,其工具程序大多数能够在纯命令行静默执行,如 OCI,DBCA,NetCA等,但是工作在图形界面时更加方便.为此,需要利用X11的XServer和XClient跨网工作原理进行远程显示.而更加方便的是,SSHD远程协议完全支持对X11协议的转发,这样我们就可以只需在服务器端开启一个sshd服务即可通过转发X11来实现远程桌面. 2 实验环境: 服务器端:

Windows下如何实现SSH转发

需要: Power Shell或Git Shell(集成了Power Shell) 步骤: 在Power Shell或Git Shell中直接运行命令:ssh -C -D 7070 [email protected] -qfnN     注意:username和host替换成你自己的值 -C 表示压缩传输 -D 本机的转发端口,通过该端口的数据会直接经过[email protected]主机(VPN) 运行效果: 测试一下,在firefox下安装autoproxy,使用ssh -D代理,效果如下

SSH转发机制

第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我们带来什么好处吧! 端口转发概述 让 我们先来了解一下端口转发的概念吧.我们知道,SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据.但是,SSH 还同时提供了一个非常有用的功能,这就是端口转发.它能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及

利用SSH端口转发实现远程访问内网主机远程桌面(一) 建立SSH转发

近期家里更换了移动的宽带,拨号后拿到的是10开头的内网IP,就不能像之前一样通过路由器的端口映射实现从外网访问主机的远程桌面.这种情况下可以利用一台具有公网IP的服务器充当中转,利用SSH的隧道转发功能将远程桌面请求转发至内网主机. SSH隧道 SSH 会自动加密和解密所有SSH 客户端与服务端之间的网络数据,除此之外SSH 还能够将其他TCP端口的网络数据通过SSH链接来转发,并且自动提供了相应的加密及解密服务,这一功能也称为“SSH隧道”.SSH隧道分为本地转发.远程转发和动态转发. 本地转

Linux渗透+SSH内网转发

http://www.jb51.net/hack/58514.html http://blog.chinaunix.net/uid-756931-id-353243.html http://blog.163.com/czg_e/blog/static/46104561201552423342331?ignoreua http://www.noah.org/wiki/SSH_tunnel http://www.myhack58.com/Article/60/63/2013/38396_3.htm

SSH端口转发详解及实例

一.SSH端口转发简介 SSH会自动加密和解密所有SSH客户端与服务端之间的网络数据.但是,SSH还能够将其他TCP端口的网络数据通SSH链接来转发,并且自动提供了相应的加密及解密服务.这一过程也被叫做"隧道"(tunneling),这是因为SSH为其他TCP链接提供了一个安全的通道来进行传输而得名.例如,Telnet ,SMTP ,LDAP这些TCP应用均能够从中得益,避免了用户名,密码以及隐私信息的明文传输.而与此同时,如果工作环境许中的防火墙限制了一些网络端口的使用,但是允许SS

SSH高级应用(端口转发-防火墙穿透)

SSH应用简述 一.非标准端口启动SSH ssh的默认端口是22这是大家都知道的事情,但是在有些时候Cracker会扫描Internet上面的22号端口,因此有些时候有些ISP厂商会在会在入口处关闭22号端口. 为了提高安全性我们可以将SSH的端口开放在非标准的端口,这样Cracker就不会扫描到该端口,ISP厂商也不会对该端口进行关闭,它可以和SSH一样正常使用. 比如我们将SSH端口设定为22和23(前提是23端口不可以被占用)两个端口监听的方式,配置如下: 修改SSH配置文件 vim /e

ssh配置及端口转发

生成密钥 默认密钥 ssh-keygen -t rsa -C [email protected] 生成自定义文件名密钥 ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C [email protected] 多密钥配置 添加文件~/.ssh/config,内容如下 Host test-github #网站本地别称,建议设置成网站域名,该行不要直接复制,具体见下文 Hostname github.com #网站实际地址 IdentityFile ~/.ssh/