ceph客户端使用_Ceph 基础篇 认证

f07e1ae9102dfa165492fbc3da191424.png

Ceph 认证概念及原理


官方地址:http://docs.ceph.org.cn/man/8/ceph-authtool/

Mon 进程还需要负责另外的一个功能:认证;

包括Ceph 客户端到Ceph 集群数据,是非常重要的,我们不允许非授权访问,任何客户端,接入Rados Cluster 存储池之前 ,都需要提供用户名和密码进行认证;Mon 还负责维护整个集群的用户名和密码等;

各个组件如OSD 连接到 ceph mon ,其实也需要认证,认证使用的协议叫CephX,Ceph mon 负责维护认证信息并进行认证;任何组件间进行访问,都需要进行认证,所以如果客户端量很大的话,mon有可能成为瓶径,这也是mon多个的原因,由于mon 本身是无状态的,所以在认证的时候 ,每个节点都可以进行认证;

CephX 认证机制

Ceph 使用CephX协议对客户端进行身份认证,集群中每一个 Monitor 节点都可以接受客户端请求,并对客户端进行身份验证,所以不存在单点故障和性能瓶颈;CephX 仅用于 Ceph 集群中的各组件,而不能用于非 Ceph 组件,它并不解决数据传输加密问题,但也可以提高访问控制安全性问题。

CephX认证授权流程

Ceph 客户端与 Mon 之间在创建时,存在一对域共享密钥;

1. 客户端向 Monitor 发出请求时,Monitor 会返回用于验证用户身份的数据结构,其中包含获取 Ceph 服务时用到的临时 Session key,这个是加密的;

2. 客户端拿到这个临时加密的 Session key后,客户端通过密钥进行解密 Seesion key;(其实这里双方提前有一个域共享密钥,只有有了它之后,才可以对临时 Session key 进行解密)

3. 然后客户端使用解密的 Session key 向 mon 请求所需要的服务,比如OSD,然后 mon 给出一个令牌 ticket ,并且 mon 还需要检查这个 Session key 的合法性;并且 mon 提供一个 ticket需要使用Session key 对ticket进行对称加密,然后发送给客户端,客户端也具有这个Session key,所以他可以解密出ticket;

4. 客户端然后通过tocket 去访问对应的服务,这里以OSD为例,去访问OSD服务;

注意session key与 ticket 都会有过期时间的,就算用户拿到了 session key与ticket,过一段时间后就失效了,这里大家可以看到,客户端与ceph 组件服务并没有一直使用域共享密钥进行通信;域共享密钥,只有在客户端与 Monitor 在共享 Session key的时候使用到;我们还可以发现域共享密钥并没有在互联网上面进行传输;

72e93445f4a45b804baf859143c5e467.png

(CephX 验证流程)

CephX 身份验证功能仅限制Ceph的各组件之间,它不能扩展到其它非Ceph组件,它并不解决数据传输加密的问题;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值