검색

3.6. Ceph 온-선 암호화

download PDF

enger 버전 2 프로토콜을 사용하여 네트워크를 통한 모든 Ceph 트래픽에 대해 암호화를 활성화할 수 있습니다. v2의 보안 모드 설정은 Ceph 데몬과 Ceph 클라이언트 간의 통신을 암호화하여 엔드 투 엔드 암호화를 제공합니다.

Ceph의 on-wire 프로토콜의 두 번째 버전인 msgr2 에는 몇 가지 새로운 기능이 포함되어 있습니다.

  • 네트워크를 통해 이동하는 모든 데이터를 암호화하는 보안 모드입니다.
  • 인증 페이로드의 캡슐화 개선
  • 광고 및 협상에 대한 개선 사항

Ceph 데몬은 여러 포트에 바인딩되므로 레거시 v1-호환 및 새로운 v2 호환 Ceph 클라이언트가 동일한 스토리지 클러스터에 연결할 수 있습니다. Ceph Monitor 데몬에 연결하는 Ceph 클라이언트 또는 기타 Ceph 데몬은 가능한 경우 v2 프로토콜을 먼저 사용하려고 하지만 그렇지 않은 경우 레거시 v1 프로토콜이 사용됩니다. 기본적으로 두 프로토콜 모두 v1v2 가 활성화되어 있습니다. 새로운 v2 포트는 3300이며 레거시 v1 포트는 기본적으로 6789입니다.

v2 프로토콜에는 v1 또는 v2 프로토콜 사용 여부를 제어하는 두 가지 구성 옵션이 있습니다.

  • ms_bind_msgr1 - 이 옵션은 데몬이 v1 프로토콜을 알리는 포트에 바인딩되는지 여부를 제어합니다. 기본적으로 true 입니다.
  • ms_bind_msgr2 - 이 옵션은 데몬이 v2 프로토콜을 알리는 포트에 바인딩되는지 여부를 제어합니다. 기본적으로 true 입니다.

마찬가지로 사용되는 IPv4 및 IPv6 주소를 기반으로 하는 두 가지 옵션 제어

  • ms_bind_ipv4 - 이 옵션은 데몬이 IPv4 주소에 바인딩되는지 여부를 제어합니다. 기본적으로 true 입니다.
  • ms_bind_ipv6 - 이 옵션은 데몬이 IPv6 주소에 바인딩되는지 여부를 제어합니다. 기본적으로 true 입니다.

msgr2 프로토콜은 다음 두 가지 연결 모드를 지원합니다.

  • crc

    • cephx 를 사용하여 연결이 설정된 경우 강력한 초기 인증을 제공합니다.
    • 비트 플립으로부터 보호하기 위해 crc32c 무결성 검사를 제공합니다.
    • 악의적인 중간자 공격에 대한 보호 기능을 제공하지 않습니다.
    • 도청자가 모든 인증 후 트래픽을 보는 것을 방지하지 않습니다.
  • 보안

    • cephx 를 사용하여 연결이 설정된 경우 강력한 초기 인증을 제공합니다.
    • 모든 인증 후 트래픽에 대한 완전한 암호화를 제공합니다.
    • 암호화 무결성 검사를 제공합니다.

기본 모드는 crc 입니다.

암호화 오버헤드를 포함하도록 Red Hat Ceph Storage 클러스터를 계획할 때 클러스터 CPU 요구 사항을 고려해야 합니다.

중요

현재 보안 모드 사용은 Red Hat Enterprise Linux에서 CephFS 및 krbd 와 같은 Ceph 커널 클라이언트에서 지원됩니다. Ceph 클라이언트에서는 OpenStack Nova, Glance, Cinder와 같은 librbd 를 사용하여 보안 모드를 사용할 수 있습니다.

주소 변경

동일한 스토리지 클러스터에 공존하는 두 버전의 워커 프로토콜의 경우 주소 형식이 변경되었습니다.

  • 이전 주소 형식인 IP_ADDR:PORT/CLIENT_ID 입니다(예: 1.2.3.4:5678/91011 ).
  • 새 주소 형식은 PROTOCOL_VERSION:IP_ADDR:PORT/CLIENT_ID 입니다 (예: v2:1.2.3.4:5678/91011 ). 여기서 PROTOCOL_VERSIONv1 또는 v2 입니다.

이제 Ceph 데몬이 여러 포트에 바인딩되므로 데몬은 단일 주소 대신 여러 주소를 표시합니다. 다음은 모니터 맵 덤프의 예입니다.

epoch 1
fsid 50fcf227-be32-4bcb-8b41-34ca8370bd17
last_changed 2021-12-12 11:10:46.700821
created 2021-12-12 11:10:46.700821
min_mon_release 14 (nautilus)
0: [v2:10.0.0.10:3300/0,v1:10.0.0.10:6789/0] mon.a
1: [v2:10.0.0.11:3300/0,v1:10.0.0.11:6789/0] mon.b
2: [v2:10.0.0.12:3300/0,v1:10.0.0.12:6789/0] mon.c

또한 mon_host 구성 옵션을 사용하고 -m 을 사용하여 명령줄에서 주소를 지정하면 새 주소 형식을 지원합니다.

연결 단계

암호화된 연결을 만들기 위한 4단계가 있습니다.

배너
연결 시 클라이언트와 서버 모두 배너를 보냅니다. 현재 Ceph 배너는 ceph 0n 입니다.
인증 교환
전송 또는 수신되는 모든 데이터는 연결 기간 동안 프레임에 포함됩니다. 서버에서 인증이 완료되었는지와 연결 모드를 결정합니다. 프레임 형식은 고정되어 있으며 사용 중인 인증 플래그에 따라 세 가지 형태로 있을 수 있습니다.
메시지 흐름 핸드셰이크 교환
피어는 서로를 식별하고 세션을 설정합니다. 클라이언트는 첫 번째 메시지를 보내고 서버는 동일한 메시지로 응답합니다. 클라이언트가 잘못된 데몬과 통신하면 서버가 연결을 닫을 수 있습니다. 새 세션의 경우 클라이언트와 서버는 메시지 교환을 진행합니다. 클라이언트 쿠키는 세션을 식별하는 데 사용되며 기존 세션에 다시 연결할 수 있습니다.
메시지 교환
연결이 닫힐 때까지 클라이언트와 서버는 메시지 교환을 시작합니다.

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.