测试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 ] No route to host
在A上配置本地转发:
ssh -L :localhost: -fN test@192.168.66.78 #ssh -L <localport>:<remotehost>:<remoteport> <SSHhostname> 这里<remotehost>和<SSHhostname>都是B机器,<SSHhostname>表示接受ssh连接的机器,而<remotehost>表示最终被转发的机器,两者可以是两个机器,实现穿透防火墙。
加上不加fN会显示的登陆test@192.168.66.78建立连接,加上之后在后台建立。
修改测试脚本访问本地8000端口:
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('localhost', ))
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 : open failed: connect failed: Connection refused
后来发现,B上的server代码需要监听的是本地的8001端口,因为配置转发的时候是“8000:localhost:8001”,表示在B机器上会转发到localhost:8001。代码改为:
server.bind(('127.0.0.1', 8001))
再测试显示连接成功。
参考:https://blog.csdn.net/nimasike/article/details/73289777
https://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/
https://blog.csdn.net/weixin_41919236/article/details/85015781
远程转发和本地转发原理一样,区别只是在于在哪台主机上进行配置。
有一个缺点是,ssh转发普通用户就可以设定,如果想要取消转发功能,可以修改/etc/ssh/sshd_config,配置“AllowTcpForwarding no”禁止转发,默认是开启转发。
测试ssh转发的更多相关文章
- ssh转发代理:ssh-agent用法详解
SSH系列文章: SSH基础:SSH和SSH服务 SSH转发代理:ssh-agent用法详解 SSH隧道:端口转发功能详解 使用ssh-agent之前 使用ssh公钥认证的方式可以免去ssh客户端(如 ...
- iperf测试流量转发(nginx反向代理tcp/udp)
一.准备工作 服务器1:192.168.33.102 搭建nginx服务,作为反向代理的中转站 服务器2:192.168.33.103 nginx要反向代理的服务器 服务器3:192.1 ...
- 【奇技淫巧】使用 SSH 转发 Sock5 流量
标题:使用 SSH 转发 Sock5 流量 日期:2018-06-27 介绍:使用 ssh 来做个 sock5 的代理,穿透到内网中做后渗透 0x01. 基本信息 在 ubuntu(10.211.55 ...
- SSH转发机制
第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我 ...
- PuTTY+Xming实现X11的ssh转发
1 需求分析 有些Linux程序还是不能完全离开窗口环境,或者说离开后操作不方便.其中Oracle就是这样一个程序,其工具程序大多数能够在纯命令行静默执行,如 OCI,DBCA,NetCA等,但是工作 ...
- 通过 SSH 转发TCP连接数据
设定 首先双方的/etc/ssh/sshd_config设定以下四项: AllowAgentForwarding yes AllowTcpForwarding yes GatewayPorts yes ...
- ssh转发
ssh有3种转发:本地转发,远程转发,动态转发. 1.本地转发:当client和ssh-client的方向一致的时候,就是本地转发. 限制:1)client直接访问server被防火墙阻挡.2)ssh ...
- SSH 转发学习【转】
本地端口转发 假定有三台主机A.B.C.由于种种原因(无论是防火墙还是路由原因),AC两台主机之间无法连通.但是B却可以和A.C连通.这时候就可以用本地端口转发来实现A和C通过B来连通. A 192. ...
- nginx配置文件+本地测试请求转发到远程服务器+集群
1 在本地测试1 众所周知,nginx是一个反向代理的服务器,主要功能即为实现负载均衡和动静分离.在别的我别的文章有详细的nginx(Windows)相关介绍教程. 由于自己安装的nginx在本地的计 ...
随机推荐
- vscode入门记
蒟蒻也是第一次从Dev转过来呢, 因为vsc界面,实用性,美观性,以及稳定性(Dev那注释中的乱码不想吐槽.)都比Dev强,... fzy: _GC: 扶苏: water_lift: ych: 不想做 ...
- BZOJ2730 [HNOI2012]矿场搭建[点双连通分量]
看到删去一个点,需要剩下的都和关键点连通,有端联想到找点双,因为他怎么删点都是连通的. 对于一个孤立的点双,至少要设两个关键点. 如果两个点双以一个割点连接,假设断掉这个割点,两个块至少要各设一个关键 ...
- API接口防止参数篡改和重放攻击
{近期领导要求我对公司业务的支付类的ocr接口做研究,是否存在支付接口重放攻击,so.....} API重放攻击(Replay Attacks)又称重播攻击.回放攻击.他的原理就是把之前窃听到的数据原 ...
- jvm虚拟机笔记<六> 运行期优化
这节我们总结一下JVM运行期的优化问题. https://www.cnblogs.com/zhouyuqin/p/5224573.html JVM运行期优化 即时编译器(JIT) 编译对象与触发条件 ...
- OFDM符号速率与子载波间隔的关系
一般采样速率fs等于符号速率Rb: 采样速率表示采样的快慢,现有N个采样点: 类似于路程(N)除以速度(fs)等于时间(Tb): 采样一个点所需时间Tb = N/fs: 即一个子载波持续时间为Tb = ...
- 路由器配置——OSPF协议(2)
一.实验目的:使用OSPF协议达到全网互通的效果 二.拓扑图 三.具体步骤配置 (1)R1路由器配置 Router>enableRouter#configure terminalEnter co ...
- HGOI20191114 CSP模拟赛 反思
Problem A 宇宙魔方 有一个$N \times N \times N$的魔方,每一次操作可以整体转动该魔方,也可以对于一层整体+X. 给出最后魔方的最终状态,其中有一个位置为-1.利用其它位置 ...
- Eclise快捷键(最全)
Eclipse常用快捷键 Eclipse常用快捷键 1几个最重要的快捷键 代码助手:Ctrl+Space(简体中文操作系统是Alt+/) 快速修正:Ctrl+1 单词补全:Alt+/ 打开外部Java ...
- OnUpdateError
DataSetProvider1.OnUpdateError void __fastcall TFrmItem::Query1UpdateError(TDataSet *ASender, EFDExc ...
- AGC032E modulo pairing
题意 原题 给出\(2n\)个\(\leq m\)的数,求最优的两两配对方案 使\(n\)组\((x,y)\)的\((x+y)mod \space m\)最大值最小 \(n\leq 10^5,m \l ...