frphttps隧道和tcp隧道有什么区别

frphttps隧道和tcp隧道有什么区别,第1张

SSH隧道是一种通过加密的SSH连接传输任意网络数据的方法。它可以用来为任何应用程序添加加密通道;也可以用它来实现和跨防火墙访问局域网的服务。

SSH是一个通过不受信任的网络进行安全远程登录和文件传输的标准。通过SSH隧道传输TCP/IP数据,它还提供了一种使用端口转发保护任何给定应用程序数据流量的方法。采用了这种方法后,应用程序的数据流量都会走SSH的加密连接,从而不会被窃听或拦截。对于本身不支持加密的应用程序来说,使用SSH隧道可以很方便地添加网络安全性。

上图简要介绍了SSH隧道。不可信网络的安全连接建立在SSH客户端和SSH服务器之间。这个连接是加密的,可用于保护机密性和完整性,并且可以对通信方进行身份验证。

客户端应用使用SSH来连接到服务端应用。隧道启用后

通过上面的转发,无需修改应用程序,就能保证应用程序客户端和服务端通信的安全。

这个方式的缺点是,任何能登陆服务器的用户都可以启用端口转发。内部IT人员经常在他们的家里的机器或云上的服务器上启用转发,从而能在企业内网中,从工作机器上访问家里的机器或云上的服务器。黑客或恶意软件会利用类似的方式在局域网中留一个后门。还可以在多个设备上开启隧道,攻击者通过在这些隧道中跳来跳去来隐藏踪迹。

本地代理用于将端口从客户端计算机转发到服务端计算机。SSH客户端监听来自某个端口的连接,当它收到连接时,将请求通过隧道转发到SSH服务器;然后SSH服务器将请求转到目标端口。

本地转发比较常见的场景有:

在OpenSSH中,使用 -L 参数开启本地转发

这个命令工作的过程如下图

默认情况下,其他的机器都能够连接到本地的SSH客户端指定的端口;为了安全起见,一般绑定地址,将连接来源限制在同一主机的程序

也可以在 OpenSSH客户端的配置中 配置本地转发,这样就不用单独输入命令行了

比如在~/ssh/config中这样写

这样在开启转发的时候只需要输入 ssh serverfw 而不用再输入完整的命令了

如果希望通过本地计算机,让远程服务器 remote 可以连接到 server 上的服务,可以使用SSH远程转发。

使用SSH远程转发一个典型的用途是,在企业内部开一个后门,让公网的计算机可以访问到企业的某个内部服务,这个是有一定风险的,使用的时候需要特别小心。

在OpenSSH中,远程转发通过 -R 参数开启,在本地计算机上输入命令

上面命令的工作过程如下

默认情况下,OpenSSH仅允许从服务器主机(上图的 remote )连接到远程转发端口 server:p2 ,如果想要其他的主机也能连上 server:p2 ,需要在 sshd_config 文件中设置

如果需要指定来源IP,可以将配置改为

比如

将只允许52192173到端口8080的连接

OpenSSH的远程转发支持多个规则,比如

同样的,可以在 ~/ssh/config 配置host,比如

1、如果计算机中开启了系统防火墙,可以先关闭后再重试。

2、如果有安装路由器的用户,也建议重启一下路由器。

3、部分网络如校园网、广电网、长城宽带、宽带通,也容易出现800错误,需要与网络接入部门联系。

4、桌面右键单击“我的电脑”或“计算机”选择打开管理,在服务和应用程序中,点击“服务”,找到 IPsec Policy Agent服务,检查有没有禁用该服务。改为自动,服务状态已启动。

有时候我们在登录服务器的时候,会遇到这样的提示:

“错误800:不能建立连接,服务器可能不能到达,或者此连接的安全参数没有正确配置”或“错误800:未简历远程链接,因为尝试的隧道失败。服务器可能无法访问。如果该连接尝试使用L2TP/IPSec隧道,则IPSec协议所需的安全参数可能配置错误。”

这分别是Windows XP系统和Windows 7系统的提示,本文就为您介绍一下,错误800的原因及解决方法。

连接错误800解决方法

1、检查配置中的“目的地的主机名或IP地址”使用的是域名而不是IP地址,由于隧道需要定期进行维护,我们有可能变更隧道服务器的IP地址,但域名不会改变。

2、您所在网络与我们的隧道服务器没有正确的通道,请尝试更换配置中的“目的地的主机名或IP地址”,将其调整为我们的登陆服务器IP地址或者域名。

3、临时性故障,多半是由于您使用的DNS服务器繁忙无法对服务器IP地址或者域名的名字进行解析所引起,可以使用以下 *** 作:开始—运行—打开:cmd—确定,执行命令ipconfig /flushdns后再进行连接尝试。

4、您机器上的防火墙规则设置过于严格,导致无法对外进行连接,请调整或关闭所有防火墙再进行尝试。

连接提示错误800主要是没有关闭防火墙和路由固件过期所致,用户可以先排除是否是防火墙没有关闭,再进行下一步 *** 作。如果有安装家庭网关的用户,也建议重启一下家庭网关设备。

如果以上方法均不起作用的话,则可能是由于系统内部的故障会导致配置(注册表信息)出现异常,这是Windows系统中常见的问题。处理方法是删除原隧道连接的配置,重新建立一个新的隧道连接即可。

参考资料

闪电下载吧闪电下载吧[引用时间2018-1-21]

A是我们手上的电脑,B是外国服务器(公网我们的), C是外国服务器(如Google),
A能访问B, A不能访问C, B不能访问A, B能访问C
那么,我想想上Google,该怎么办

-N 不执行任何命令
-f 后台运行

-L参数的行为。-L X:Y:Z的含义是,将IP为Y的机器的Z端口通过中间服务器B映射到本地机器的X端口
那么,在A上访问127001:2121就是访问C的网站了

在A上执行

然后在B上执行

使用SSH的方式不够稳定,使用AutoSSH可以自动在连接断开时自动重连,再把AutoSSH加入系统服务自动启动,则可以做到稳定的连接
1安装AutoSSH

2执行AutoSSH命令

-M:在5555端口上监听连接的变化,只要断开就重连
少了-f 参数,因为AutoSSH本来就在后台运行

有A,B,C 3台服务器, A,C有公网IP, B是某IDC的服务器无公网IP A通过B连接C的80端口(A=>B=>C),
那么在B上执行如下命令即可:

-D port
指定一个本地机器 “动态的'’ 应用程序端口转发 工作原理是这样的,
本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接,
该连接就经过安全通道转发出去, 根据应用程序的协议可以判断出远程主机将和哪里连接
目前支持 SOCKS4 协议, 将充当 SOCKS4 服务器 只有 root 才能转发特权端口 可以在配置文件中指定动态端口的转发

通过provixyl这样代理软件,全局代理(就是把所有的A电脑上访问所有ip,0000 都转发到本地1080端口)
同时把访问的那些ip映射到B服务器, 让B去访问 最终就是A 利用 B作为跳板, 访问了那些IP

{办公电脑A, 公司内网服务器B(内网192xxx), [AB在同一个局域网]}, 生产环境上的C(内网ip:101440x)
A能链接B,不能链接C, B能链接C(同过一台公网服务器, 上面介绍到的, 公网访问内网)

实现B(192xxx)链接C(通过一台公网服务器D) B通过D连接C的8000端口(B=>D=>C)

接收有A访问的ip, 如101440x:80, 通过provixyl这样软件, 把接收到的101440x转发到本地1080端口


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10842905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存