为了保护数字有机体系统免受攻击和恶意程序的破坏,同时,也为了给用户提供可靠的安全产品,本公司研发和使用了一些安全措施。我们把这些安全措施统称为“数字有机体安全组件”。
数字有机体安全组件是由多种软件和方法来实现的,它主要包括:独立的用户认证和访问控制、加密文件系统、安全对象存储、主机鉴别和安全通信、数字有机体防火墙。
数字有机体系统建立独立于主机的用户管理和认证机制。主机的用户和数字有机体系统的用户无关,防止主机用户非法访问数据。系统用户可以在任意一台主机上登录,并按照Unix文件自主访问控制机制访问系统内的文件。
数字有机体加密文件系统采用多种加密算法中的随机一种作为某个文件的加密算法,并在建立文件时随机生成其加密密钥。用户写入文件的数据被自动加密,读取出的仍然是明文,因此加解密对用户是透明的。其主要的用途是防止入侵者窃取磁盘上的数据文件,或者通过截获通信来获得明文数据。其特点有:
(1)透明的自动的加解密,使存储和传输的是密文,防止数据泄密。
(2)文件加密或不加密可根据需求设定,同一个文件系统中可以部分目录是加密的,部分目录不是加密的。
(3)随机的加密算法和加密密钥,增强了破解难度。
(4)密钥等信息采用强化的安全对象存储机制自动存储,无需用户管理。
安全对象存储用于存储小于30MB的数据,主要包括密钥、指纹数据、敏感信息等。数据采用以下措施安全保存:
(1)数据被分拆为多段保存在不同的主机上,增强完整窃取难度。
(2)每段数据同时保存在多台主机上,增加数据的可靠性。
(3)每段数据都独立的进行完整性校验,并通过多副本比对的方式防止篡改。
(4)用户使用接口透明地存取数据对象,安全保存由系统自动完成。
数字有机体系统支持主机鉴别和安全通信的功能。主机鉴别采用的是RSA证书机制。在可靠的主机上分别制作各台主机的数字签名证书,主机间使用公钥鉴别证书真伪,并且在每次通信时都进行鉴别,从而避免仿冒主机攻击。安全通信采用SSL(安全的Socket层)机制,加密算法为多种加密算法中的随机一种,加密的密钥随机协商,密钥用RSA加密传输。SSL是现在通用的安全通信机制。
数字有机体防火墙基于Linux内核的网络数据包过滤机制实现,通过统一配置系统各台主机的防火墙规则,达到控制各台主机通信的目的。系统的各台主机将根据配置的规则独立设置本机的数据包处理规则,从而阻止网络上的非法访问和攻击。
数字有机体系统基于Linux操作系统研发。对单台主机来说,Linux操作系统所具有的各项安全功能也能在数字有机体系统上采用。例如,数字有机体的安全组件还包括SELinux、系统安全加固和入侵检测。
SELinux是Linux系统自有的强制访问控制机制。该功能已经成熟可用。数字有机体系统使用它达到以下几个目的:
(1)增强数字有机体文件系统的保护,防止本地用户篡改和访问系统的文件数据。
(2)建立分权机制,防止主机root用户的权限过大。
(3)修改规则,使数字有机体系统的各项服务正常运行。
系统安全加固:采用Linux自有的各种安全手段加固主机系统。
入侵检测:采用Suricata和prelude进行主机和网络入侵检测。