传输中的数据加密
传输中的数据可以在NAS协议层进行加密、Google Cloud网络本身也会进行加密、如以下各节所述。
Google Cloud网络
Google Cloud按中所述在网络级别对流量进行加密 "传输中加密" 在Google文档中。如"云卷服务架构"一节所述、Cloud Volumes Service 是通过NetApp控制的PSA生产商项目交付的。
对于CVS-SW、生产者租户运行Google VM来提供服务。Google会自动对用户VM和Cloud Volumes Service VM之间的流量进行加密。
虽然在网络层上、CVS-Performance的数据路径未完全加密、但NetApp和Google会结合使用 "IEEE 802.1AE加密(MAC秒)", "封装" (数据加密)和受物理限制的网络、用于保护Cloud Volumes Service CVS-Performance服务类型与Google Cloud之间传输的数据。
NAS协议
NFS和SMB NAS协议可在协议层提供可选的传输加密。
SMB加密
"SMB加密" 为SMB数据提供端到端加密、并防止数据在不可信的网络上被窃听。您可以同时为客户端/服务器数据连接(仅适用于具有SMB3.x功能的客户端)和服务器/域控制器身份验证启用加密。
启用SMB加密后、不支持加密的客户端将无法访问共享。
Cloud Volumes Service 支持使用RC4 HMAC、AES-128-CTS-HMAC-SHA1和AES-256-CTS-HMAC-SHA1安全密码进行SMB加密。SMB协商到服务器支持的最高加密类型。
NFSv4.1 Kerberos
对于NFSv4.1、CVS-Performance可提供Kerberos身份验证、如中所述 "RFC7530"。您可以按卷启用Kerberos。
当前最强的Kerberos加密类型为AES-256-CTS-HMAC-SHA1。NetApp Cloud Volumes Service 支持适用于NFS的AES-256-CTS-HMAC-SHA1、AES-128-CTS-HMAC-SHA1、DES3和DES。它还支持对CIFS/SMB流量使用ARCFOUR-HMAC (RC4)、但不支持对NFS使用。
Kerberos为NFS挂载提供了三种不同的安全级别、这些安全级别可以选择Kerberos安全性的强程度。
根据RedHat的要求 "通用挂载选项" 文档:
sec=krb5 uses Kerberos V5 instead of local UNIX UIDs and GIDs to authenticate users. sec=krb5i uses Kerberos V5 for user authentication and performs integrity checking of NFS operations using secure checksums to prevent data tampering. sec=krb5p uses Kerberos V5 for user authentication, integrity checking, and encrypts NFS traffic to prevent traffic sniffing. This is the most secure setting, but it also involves the most performance overhead.
一般来说、Kerberos安全级别必须执行的操作越多、性能就越差、因为客户端和服务器会花费时间对发送的每个数据包的NFS操作进行加密和解密。许多客户端和NFS服务器都支持将AES-NI负载分流到CPU、以获得更好的整体体验、但Kerberos 5p (完全端到端加密)的性能影响远远大于Kerberos 5 (用户身份验证)的影响。
下表显示了每个级别在安全性和性能方面的差异。
安全级别 | 安全性 | 性能 |
---|---|---|
NFSv3—系统 |
|
|
NFSv4.x—系统 |
|
|
NFS—krb5 |
|
|
NFS—krb5i |
|
|
NFS—krb5p |
|
|
在Cloud Volumes Service 中、配置的Active Directory服务器用作Kerberos服务器和LDAP服务器(从RFC2307兼容模式查找用户身份)。不支持其他Kerberos或LDAP服务器。NetApp强烈建议您在Cloud Volumes Service 中使用LDAP进行身份管理。有关NFS Kerberos在数据包捕获中的显示方式的信息、请参见链接:ncs-gcCloud volume-service-architution.html#Packet nosing/trace注意事项["数据包探查/跟踪注意事项"]