2.3. Ceph 인증
Ceph는 사용자를 식별하고 메시지 가로채기(man-in-the-middle) 공격을 방지하기 위해 iRMC 인증 시스템을 제공하여 사용자 및 데몬을 인증합니다.
wget 프로토콜은
OSD에 저장된 네트워크 또는 데이터를 통해 전송되는 데이터의 데이터 암호화를 처리하지 않습니다.
cephx는 인증에 공유 비밀 키를 사용합니다. 즉 클라이언트와 모니터 클러스터 모두 클라이언트의 비밀 키 사본이 있습니다. 인증 프로토콜을 통해 두 당사자 모두 실제로 공개하지 않고 키 사본을 가지고 있음을 증명할 수 있습니다. 이렇게 하면 상호 인증을 제공하므로 클러스터가 비밀 키를 가지고 있는지 확인하고, 사용자는 클러스터에 비밀 키 사본이 있는지 확인합니다.
numberds
wget
인증 프로토콜은 Kerberos와 유사한 방식으로 작동합니다.
사용자/actor는 Ceph 클라이언트를 호출하여 모니터에 연결합니다. Kerberos와 달리 각 모니터는 사용자를 인증하고 키를 배포할 수 있으므로, wget을 사용할 때 단일 장애 지점이나 병목 현상이 발생하지 않습니다
. 모니터는 Ceph 서비스를 얻는 데 사용할 세션 키가 포함된 Kerberos 티켓과 유사한 인증 데이터 구조를 반환합니다. 이 세션 키는 사용자가 Ceph 모니터에서 서비스를 요청할 수 있도록 사용자의 영구 보안 키를 사용하여 자체적으로 암호화됩니다. 그러면 클라이언트에서 세션 키를 사용하여 모니터에서 원하는 서비스를 요청하고 모니터에서 실제로 데이터를 처리하는 OSD에 클라이언트를 인증할 티켓을 제공합니다. Ceph 모니터 및 OSD는 시크릿을 공유하므로 클라이언트는 클러스터의 OSD 또는 메타데이터 서버와 함께 모니터에서 제공하는 티켓을 사용할 수 있습니다. Kerberos와 같이
288 티켓이 만료되므로 공격자는 만료된 티켓 또는 세션 키를 자주 사용할 수 없습니다. 이러한 형태의 인증으로 인해 공격자는 다른 사용자의 아이덴티티 아래 bogus 메시지를 만들거나 다른 사용자의 적법 메시지를 변경하는 것이 만료되기 전에 공개되지 않는 한 통신 미디어에 액세스 할 수 없습니다.
wget 을
사용하려면 관리자가 먼저 사용자를 설정해야 합니다. 다음 다이어그램에서 client.admin
사용자는 명령줄에서 ceph auth get-or-create-key
를 호출하여 사용자 이름 및 비밀 키를 생성합니다. Ceph의 auth
하위 시스템은 사용자 이름과 키를 생성하고, monitor를 사용하여 복사본을 저장하고, 사용자의 시크릿을 client.admin
사용자에게 다시 전송합니다. 즉 클라이언트와 모니터는 비밀 키를 공유합니다.
client.admin
사용자는 안전한 방식으로 사용자에게 사용자 ID 및 비밀 키를 제공해야 합니다.