4장. Ceph 온-wire 암호화


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

Ceph의 유선 프로토콜의 두 번째 버전인 msgr2 에는 다음과 같은 몇 가지 새로운 기능이 포함되어 있습니다.

  • 네트워크를 통해 이동하는 모든 데이터를 암호화하는 보안 모드입니다.
  • 인증 페이로드 적용 개선 사항.
  • 광고 및 협상의 개선 사항은 다음과 같습니다.

Ceph 데몬은 여러 포트에 바인드되어 legacy, v1-compatible 및 새로운 v2-compatible, 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 입니다.
참고

메시징 프로토콜 v1 또는 v2 를 사용하는 Ceph 데몬 또는 클라이언트는 메시지 큐 증가를 제한하는 메커니즘인 제한을 구현할 수 있습니다. 드문 경우지만 데몬 또는 클라이언트는 제한을 초과하여 메시지 처리 지연이 발생할 수 있습니다. 제한에 도달하면 다음과 같은 하위 수준 경고 메시지가 표시됩니다.

Throttler Limit has been hit.
Some message processing may be significantly delayed.

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

  • crc

    • wget으로 연결을 설정하는 경우 강력한 초기 인증을 제공합니다.
    • 비트 플립으로부터 보호하기 위해 crc32c 무결성 검사를 제공합니다.
    • 악의적인 메시지 가로채기(man-in-the-middle) 공격에 대한 보호를 제공하지 않습니다.
    • 도파이어가 모든 인증 후 트래픽을 볼 수 없도록 하지 않습니다.
  • 보안

    • wget으로 연결을 설정하는 경우 강력한 초기 인증을 제공합니다.
    • 모든 인증 후 트래픽에 대한 전체 암호화를 제공합니다.
    • 암호화 무결성 검사를 제공합니다.

기본 모드는 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 을 사용하여 주소를 지정하면 새 주소 형식이 지원됩니다.

연결 단계

암호화된 연결을 수행하기 위한 네 가지 단계가 있습니다.

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

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.