欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 操作系统 > LINUX

在SSH代理中实现秘密握手的方法

发布时间:2016-08-29 作者:佚名 来源:互联网
这篇文章主要介绍了在SSH代理中实现秘密握手的方法,文中的怪物即是指国内拦截用户正常访问网站的...需要的朋友可以参考下

恰好今天看到所用的ssh代理服务供应商开始在server上部署和测试Obfuscation功能,以增强抵御某怪物干扰用户正常使用ssh代理的能力。

1. 原理

以下是ISP提供的说明:

In cryptography, obfuscation refers to encoding the input data before it is sent to a hash function or other encryption scheme. This technique helps to make brute force attacks unfeasible, as it is difficult to determine the correct cleartext. 从密码学角度上讲,Obfuscation(混淆)指的是在将所输入的数据发送至哈希公式或者其他加密公式 前对其进行编码,该技术使得暴利破解难以见效,因为要确认正确的明文非常困难。

概念蛮绕口的,然后我那烂翻译也……不过意思还是很清楚的,实际上就是将handshake易容,这样怪物就看不出来数据传输用的ssh协议了,然后ssh代理满血归来。

2. 解决方案

牛人Bruce Leidl为openssh写了个很给力的补叮它可以在创建加密SSH连接时将握手信号(handshake)进行混淆处理。这样一个加密的握手信号就可以骗过怪物所用的深度包检测设备,顺利完成使命,进而保证了网络的安全性与稳定性。

(1)准备

你需要有一台位于怪物控制范围的Linux服务器,然后在服务器上配置好Obfuscated-openssh补叮

Obfuscated-openssh点此下载,然后执行下述命令编译安装:

复制代码代码如下:./configure make make install

建议将其与常规的SSH守护进程分开安装。

(2)配置

作为SSH代理的话,没有必要让用户通过ssh登陆服务器,因此需要将此部分权限给限制掉,让用户只能使用SOCKS代理。要做到这点,需要创建专用的用户账号。

以下即为添加一个名为“golengssh”而密码为“goleng.com”用户的命令,该用户无法远程登入服务器。

复制代码代码如下:sudo useradd -m -s /usr/sbin/nologin -p goleng.com golengssh

相关推荐