行云管家自身安全性阐述
世上没有绝对意义的安全,安全只能是相对的攻守平衡
一、行云管家安全概述
衡量行云管家自身安全性的两个主要维度:
(1)通信安全:
-
开放的通信端口:行云管家都开放了哪些通信端口?
-
可信性:如何确保和行云管家通信者的身份可信性?
-
可靠性:如何确保和行云管家通信内容的可靠性?
(2)数据安全:
- 一些核心业务数据在行云管家中是如何存储的?
二、行云管家通信安全
2.1、用户与行云管家门户之间进行通信
(1)用户与行云管家门户之间进行通信的过程:
(2)用户与行云管家门户之间进行通信的安全考量
所有的通信安全性问题基本可以概括为两个问题:
-
可信性:如何确保当前通信者的身份是值得信任的?
-
可靠性:如何确保当前通信双方的通信内容不会被窃取,不会被篡改?
针对用户与行云管家门户之间进行通信的过程,则可以归纳为以下两个问题:
-
用户的身份可信吗?
-
用户与门户之间的通信内容可靠吗?
(3)用户的身份可信吗?
-
(a)通过设置用户的密码强度策略,减少因为弱密码而产生的登录信息泄露的问题
-
(b)通过设置用户的双因子认证(二次身份验证)机制,增强用户的身份认证强度
-
(c)通过开启用户登录防暴力破解机制,避免用户登录信息被撞库的风险
-
(d)通过开启用户异地登录提醒,及时提醒用户可能出现的安全风险
总结:行云管家通过上述机制以确保当前登录用户的身份是值得信任的
(4)用户与门户之间的通信内容可靠吗?
-
(a)行云管家支持HTTP协议与HTTPS协议
-
(b)我们强烈建议您采用HTTPS协议
-
(c)一旦采用HTTPS协议,所有的通信内容全部会被加密,这意味着即便您通过不可靠的通信链路(如互联网)访问行云管家门户,其通信内容也不会被窃取、不会被篡改
2.2、门户与主机之间网络互通时用户打开主机的远程会话
(1)什么是会话中转服务:
一般而言,用户很多的操作行为都是由“门户”负责响应的,如:查询当前的主机列表、查询用户的审计日志等等,一旦用户需要创建某台主机的会话(暨远程桌面),会话的承建者则由“行云管家会话中转服务”承担。行云管家会话中转服务本质上是一个网络通信服务,它监听下述通信端口并解析相应的网络协议。门户服务和会话中转服务可以部署在同一个虚拟机之中,也可以独立部署,独立部署的好处是:当并发会话数量过大时,能够将负载压力有效的均衡分布在多个会话中转服务之上;
门户与主机之间网络互通时用户打开主机会话的过程:
(2)门户服务与会话中转服务之间的安全性如何保证?
-
(a)系统管理员通过行云管家管理控制台进行会话中转服务的安装、配置与管理
-
(b)可信性:每一个会话中转服务在安装时,都会保存由门户下发的证书,会话中转服务通过此证书向门户验证自己的身份
-
(c)可靠性:会话中转服务与门户服务之间的通讯建立在HTTPS之上(WebSocket over Https),这意味着通讯内容是不可窃取、不可篡改的
(3)会话中转与主机之间的安全性如何保证?
-
(a)通常而言,当会话中转服务与目标主机之间可以网络互通时,往往意味着这两者位于同一个企业内网,具备天然的网络隔离性
-
(b)可信性:会话中转与主机之间并不需要验证双方之间的身份,会话中转只是应用户的要求主动连接目标主机的远程端口
-
(c)可靠性:RDP/SSH作为目前主流的远程终端协议,本身均支持加密通道技术,因此,会话中转与目标主机之间的通讯内容可以认为是不可窃取、不可篡改的
(4)会话中转与用户之间的安全性如何保证?
-
(a)话中转服务与门户服务部署在同一个域名,部署同一个HTTPS证书
-
(b)可信性:会话中转对用户是否信任由行云管家门户负责验证
-
(c)可靠性:用户与会话中转服务之间的通讯也是基于HTTPS(更确切的说法是WebSocket over Https)
2.3、行云管家Proxy的安装、注册以及控制通路的建立
(1)什么是行云管家Proxy:
- (a)堡垒机经常遇到的场景是:内网穿透问题
企业内网的IT设备,可以通过互联网访问到部署于公网环境的堡垒机,但堡垒机无法直接访问企业内网的IT设备
- (b)行云管家解决方案:在企业内网部署行云管家Proxy即可解决企业内网与公网环境的互通问题
行云管家Proxy是一个独立的软件模块,支持Windows与Linux等操作系统
一个企业内网只需要部署一个行云管家Proxy即可(也可部署多个Proxy实例以起到负载均衡的目的)
行云管家Proxy所在主机并不需要具备公网IP地址,只需要能够访问公网即可(确切说法是Proxy只需能够访问行云管家运行实例即可)
(2)行云管家Proxy的安装、注册以及控制通路的建立过程
(3)Proxy与门户和会话中转服务之间的安全性如何保证?
-
(a)行云管家Proxy在向门户注册时,门户会为每一个Proxy生成一个证书
-
(b)可信性:行云管家Proxy在与门户和会话中转服务之间建立通信时,会通过此证书来验证自己的身份
-
(c)可靠性:行云管家Proxy在和门户以及会话中转服务之间的通讯建立在HTTPS之上(确切的说法是WebSocket over Https),这意味着通讯内容是不可窃取、不可篡改的
2.4、用户通过行云管家Proxy与目标主机建立会话
(1)用户通过行云管家Proxy与目标主机建立会话的过程
(2)Proxy与目标主机之间的安全性如何保证?
-
(a)通常而言,Proxy与目标主机之间通常位于同一个企业内网,具备天然的网络隔离性
-
(b)可信性:Proxy与主机之间并不需要验证双方之间的身份,Proxy只是应用户的要求主动连接目标主机的远程端口
-
(c)可靠性:RDP/SSH作为目前主流的远程终端协议,本身均支持加密通道技术,因此,会话中转与目标主机之间的通讯内容可以认为是不可窃取、不可篡改的
三、行云管家数据安全
3.1、常用加密算法
(1)对称加密
-
(a)加密和解密使用同一个密钥,通过此密钥可将明文加密成密文,也可通过此密钥将密文解出明文
-
(b)对称加密常用于需要对加密后的密文进行解密还原等场景
(2)非对称加密
-
(a)对称加密算法需要两个密钥:公开密钥(Public Key)和私有密钥(Private Key),通过公钥加密只能通过私钥解密,反之亦然
-
(b)非对称加密常用于身份认证等场景
(3)消息摘要
-
(a)消息摘要是一种单向算法,用户可以通过某种算法对目标信息生成一段特定长度的唯一值,却不能通过这个值重新获得目标信息
-
(b)消息摘要算法常用在不可还原的密码存储、信息完整性校验等场景
3.2、对称加密在行云管家中的应用实践
(1)在行云管家中有一些敏感的且需要反向解密的业务数据:
- 如主机的登录信息(如root用户的登录密码)、云账户的Access Key等
(2)这些信息行云管家在存储时需要明确的进行加密以避免出现信息泄露
(3)但同时,这些信息行云管家又需要进行解密还原成明文,以使用在登录验证等场合
- 如在登录Linux主机时,我们需要把加密存储的root账户密码进行解密,才能够通过Linux登录验证
(4)针对这类信息,行云管家会利用对称加密进行敏感数据的加密
(5)这意味着一旦这些信息被通过各种途径暴露出去,由于其暴露的是密文,也不会产生信息泄露
3.3、非对称加密在行云管家中的应用实践
(1)非对称加密在行云管家中主要的应用场景是验证通信双方的身份信任问题
(2)Proxy与门户、Proxy与会话中转、会话中转与门户之间的信任关系,本质上都是基于非对称加密算法的证书身份认证
3.4、消息摘要算法在行云管家中的应用实践
(1)在行云管家中有一些不需要反向解密的业务数据需要进行加密存储
-
如用户登录行云管家门户时需要验证自己的密码是否正确
-
我们并不需要拿到解密后的明文进行对比,我们只需要对比密码的消息摘要值是否一致即可
(2)针对这类信息行云管家只会存储目标信息的消息摘要算法结果值即可
(3)这意味着一旦存储的消息摘要算法结果值通过各种途径暴露出去,由于其暴露的是消息摘要算法的结果值,并没有办法将其反向还原成明文,因此杜绝了信息泄露的可能性
四、总结
(1)永远不存在绝对意义的安全,行云管家亦是如此
(2)但行云管家采取了一系列科学的、且经过工业质量验证的手段,确保您的通信安全和数据安全
(3)行云管家自发布之日起,始终保持平均每1.5个月一个版本的迭代频率
(4)如果您有任何安全方面的担心或者遇到安全方面的困惑,请您随时联络我们