玉林社区   玉林天天茶座   明白:如何在SSH通道中隐藏OpenVPN流量?
返回列表
查看: 757|回复: 0

明白:如何在SSH通道中隐藏OpenVPN流量?

[复制链接]

3万

主题

3万

帖子

11万

积分

论坛元老

Rank: 8Rank: 8

积分
112840
发表于 2021-8-15 06:32:32 | 显示全部楼层 |阅读模式

马上注册玉林红豆网会员,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

传统防火墙会根据目标 IP 地址和端口号来屏蔽连接,但更高级的防火墙会使用深度包检测(DPI)技术或者状态包检测(SPI)技术来识别不同类型的加密算法和VPN协议。这就意味着它们能够检测出OVPN流量并将其标识出来,以方便管理员决定是否屏蔽目标服务器。通过[url=http:///www.manageengine.cn/products/ad-manager/]AD域管理与维护[/url]的现状可以看出市场前景比较广阔,有利于我们进行参考和投资。[align=center]

                               
登录/注册后可看大图
[/align]
有三种方法可以绕过这种检测:使用混淆()代理,使用 SSL 通道或者使用 SSH 通道。在本教程中,我们将讨论最后一种方法。SSH 通道会将你已经加密的链接封装在另一层加密中,这样防火墙就无法进行识别。这种方法可以用在绕过部署有完备 DPI 和 SPI 防火墙的或像天朝这种具有重度审查机制的。


但基于 SSH 通道的 OVPN 也有几个缺点。第一个就是双重加密必然会导致效率的降低。其次是虽然 OVPN 的指纹不在会被防火墙检出,但有些防火墙同样也会屏蔽 SSH 流量。就像 N(美国一家在线影片租赁提供商) 会禁止使用任何类型加密代理的连接,无论是 OVPN、SSH 还是其他方式。在这种情况下,我们建议你使用混淆代理,其会使加密流量呈现出正常和未加密流量的样子。混淆代理非常强大,但为此付出的代价是,混淆代理难以的配置和运行。


不幸的是,据我所知,具有混淆功能的OVPN 只能工作在桌面端,而使用 SSH 通道则还可以用在安卓或 IOS 等移动端。


本文假设你已经拥有一台配置好 OVPN 的服务器,并且能够通过 OVPN GUI 或者 APP 连接上服务器。同样的你也能够通过 SSH 连接上服务器,无论是使用 M 的终端还是在 PC 上使用 PTT。本文会以 PTT 进行演示。


通过 SSH 配置 OVPN


打开 PTT 加载你的 VPN 服务器配置。在侧栏中选择 C  SSH  T,确保 D8080 包含在列表中。如果没有,那么如下图所示在 S  中输入8080,并选择 A 和 D,然后点击添加(A)按钮。这样你就有了一个运行在 8080 端口的 SSH 代理了。如果你想保存设置,可以返回 S 选项卡进行保存。






       



点击 O 按钮登录到你的服务器,定位到  文件并使用如下命令检查配置:








这会显示你 OVPN 服务器的配置文件,像如下内容:


1194


-


1


10401 10402


-


3









       



最重要的事是,第二行设置为 TCP 而不是 UDP。如果你需要修改它,你可以使用以下命令:


  


然后使用 CTRL+O (字母不是数字零)保存文件,CTRL+X 退出编辑。


客户端配置


在你的本地机器上,定位到 OVPN 客户端的配置文件。如果你使用默认的安装目录,那么应该在 C FOVPN。


复制一份原先的配置文件当备份,或者直接新建一个配置文件。使用记事本或者其他编辑器以管理员身份运行,打开或创建一个新的配置文件,如下所示:


-


  1194


1194


1





- 1


10402 10401


--


- 127001 8080


注意第二行的  使用  而不是远程 OVPN 服务器的 IP 地址,然后在末尾增加两行配置 OVPN 使用代理。其余的配置跟以前一样。


将新的配置文件保存到 OVPN 的目录下面。


配置应用程序


最后一步就是配置你的应用程序使用 8080 端口的代理了。这跟配置基本的 SSH 代理步骤一样。许多应用又可以设置代理,有些甚至能够自动检测代理。如果你需要手动进行设置,下面三部分信息是你需要的:


H: 127001 P: 8080 P : SOCKS5 (或者 SOCKS 5)


下面以 F 和 C 为例来说:


F 中:


选择 选项  高级  络  连接  设置  手动设置代理 设置 SOCKS 主机为 127001 ,端口号设置为 8080 (或者你 PTT 里设置的端口号) 点击确定保存


C P S 中:


点击图标进入配置界面 随便命名一个新的模式,然后在人工配置下面,设置SOCKS 主机为 127001 ,端口号设置为 8080 (或者你 PTT 里设置的端口号) 点击报错,然后切换使用新建的模式


译者注:P S已经停止更新了,C 下面可以使用 SO,还是跟上面一样的配置。






       



现在使用 PTT 连接到你的服务器,然后使用新的配置文件运行 VPN。这样你就可以使用基于 SSH 通道的 OVPN 上了。


移动端


下面我们开始讲解如何在安卓上使用 OVPN+SSH,对于 IOS 端我们就不说了大同小异。


在开始前有几个注意事项。首先,此方法仅适用于浏览 W。这是因为不像桌面端,在安卓或 IOS 设备上你无法随心所欲的打开端口,这意味着其他 A 无法直接使用 SSH 代理。为了解决这个问题,你可以选择进行  或越狱手机,然后使用像 PD 或 C U  来配置代理。


本教程以在安卓上面运行火狐浏览器为例,你需要安装如下应用:


OVPN A(注意不是OVPN C) CB 或者同样的 SSH 终端应用(JSSH 挺不错的,但在转发端口上需要额外的开销) 一个文件管理器,例如:F C F 或者其他能够配置代理的浏览器


你还需要一些可以将文件从电脑传输到手机上的方法,一根 USB 传输线是必须的,我会选择使用 IB 的同步文件夹。


找到电脑上的  和  配置文件,将它们上传到手机上。同样的还有服务器主机的  密钥文件,这个文件应该位于与  文件相同的文件夹下,用于 PTT 认证使用的。如果丢失了这个文件,你必须重新创建一个。


(可选)你也可以使用标准的  配置文件而不使用 SSH。这样你所有的 A 都就可以使用 VPN 连接上,而不仅仅只限于浏览器,另外这样也可以用来进行排错。


配置CB


在手机上运行 CB,点击右上角的三个点进行管理公钥。再次点击第二页上面的点,然后点击导入,这样应该会启动你安装的文件管理器。找到上传的  文件并选择它,这样它应该会在公钥列表中出现并带有一个红色锁的标识。点击让其图标变绿,然后返回到 CB 主界面。






       



在底部的  终端中输入你的  信息,像如下所示:


@:22


将上面替换为为你的 OVPN 服务器地址和用户名,然后点击登录按钮使用 SSH 登录到服务器。这一切步骤都会被保存,所以之后就无需在重复进行,但以后你可能会需要再次更换公钥。


一旦你成功连接,再次点击右上角的三个点并断开连接。此时你的配置文件应该已经得以保存并显示在 CB 的主页上。长按配置文件打开菜单,在点击编辑端口转发(E  ),然后在点击那三个点选择增加端口转发(A  )。按你的喜好随意取个名字,随后选择类型为动态(SOCKS)端口为 8080,在点击创建端口转发(  )。


这样 CB 就配置好了,但我们还没有创建连接,让我们来先配置好 OVPN 吧。


配置OVPN  A


运行 OVPN  A。点击右上角带有向下箭头的方形按钮进行导入配置。找到你的  配置文件并选中它。






       



这时,在找到你的  文件并选中,再点击右下角色的保存按钮。


这样你的新配置文件就应该出现在 A 的首页上了。


在连接前,让我们在检查下服务器的防火墙,在用户配置中赠加自定义的 TCP 规则,允许端口 22,1194和8080。


现在是时候开始连接了。首先打开 CB,选择我们刚才创建的 SSH 连接上服务器,确保公钥已经加载,不然会提示密码错误。在成功连接上后,切换到 OVPN A 选择你的配置文件进行连接。






       



当你连接上后,OVPN 日志末尾应该会显示为CONNECTED,SUCCESS。


请注意,因为我们使用了同电脑相同的  和  文件,在同一时刻内你只能使用一台设备进行登录。当你想在移动端进行连接时,请确保电脑没有进行连接。如果你想同时连接多台设备,你需要为每一台设备生成新的凭证( 和 )。


配置 F 使用代理


最后,我们需要配置 F 使用代理。移动端的 C 和 S 浏览器没有配置代理选项,这也是为什么我们推荐使用 F。你可以在 - 环境下设置代理,但当你不再需要使用代理的时候要来回进行切换。






       



在 F 的地址栏中,输入 :,然后在搜索栏中输入 ,这样我们就可以进行设置代理了,在相应的位置输入以下配置:


: 127001 _: 8080 (或者你 PTT 里设置的端口号) : 1


这样你的 F 流量就会通过 OVPN 和 SSH 了,你也可以随心所欲的使用 VPN 进行上而不用在担心深度包检测了。


如果你只想通过 SSH 代理而不使用 OVPN 进行上,只需要使用 CB SSH 登录服务器,同时不连接 OVPN 即可。同样的,如果你只想使用 OVPN 而不使用 SSH,则可以只导入基本的  配置文件使用 OVPN 进行连接,而不使用 SSH 通道。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

收藏:1 | 帖子:8万



侵权举报:本页面所涉内容均为用户发表并上传,岭南都会网仅提供存储服务,岭南都会网不承担相应的法律责任;如存在侵权问题,请权利人与岭南都会网联系删除!