3장. HSM(Hardware Security Module) 어플라이언스와 OpenStack Key Manager(barbican) 통합


Red Hat OpenStack Platform 배포를 HSM(하드웨어 보안 모듈) 어플라이언스와 통합하여 하드웨어 기반 암호화 처리를 사용하여 보안 상태를 개선합니다. OpenStack Key Manager와 HSM 어플라이언스의 통합을 계획할 때 지원되는 암호화 유형 및 HSM 어플라이언스를 선택하고, 일반 백업을 설정하고, 배포에 영향을 줄 수 있는 기타 정보 또는 제한 사항을 검토해야 합니다.

3.1. OpenStack Key Manager(barbican)와 Atos HSM 통합

PKCS#11 백엔드를 Trustway Proteccio Net HSM 어플라이언스와 통합하려면 매개변수가 포함된 구성 파일을 생성하여 barbican을 HSM에 연결합니다. atos_hsms 매개변수 아래에 두 개 이상의 HSM을 나열하여 HA를 활성화할 수 있습니다.

계획

기본적으로 HSM에는 최대 32개의 동시 연결이 있을 수 있습니다. 이 수를 초과하면 PKCS#11 클라이언트에서 메모리 오류가 발생할 수 있습니다. 다음과 같이 연결 수를 계산할 수 있습니다.

  • 각 컨트롤러에는 하나의 barbican-api 및 하나의 barbican-worker 프로세스가 있습니다.
  • 각 Barbican API 프로세스는 N Apache 작업자(기본값은 CPU 수)로 실행됩니다.
  • 각 작업자는 HSM에 대한 하나의 연결이 있습니다.

barbican-worker 프로세스에는 데이터베이스에 대한 하나의 연결이 있습니다. BarbicanWorkers heat 매개변수를 사용하여 각 API 프로세스의 Apache 작업자 수를 정의할 수 있습니다. 기본적으로 Apache 작업자 수는 CPU 수와 일치합니다.

예를 들어 각각 32개의 코어가 있는 컨트롤러 3개가 있는 경우 각 컨트롤러의 Barbican API는 32개의 Apache 작업자를 사용합니다. 결과적으로 하나의 컨트롤러는 사용 가능한 모든 32 HSM 연결을 사용합니다. 이러한 경합을 방지하려면 각 노드에 구성된 Barbican Apache 작업자 수를 제한합니다. 이 예에서는 세 컨트롤러 모두 HSM에 대해 10 개의 동시 연결을 만들 수 있도록 BarbicanWorkers 를 10으로 설정합니다.

사전 요구 사항

  • Atos HSM에 대한 공급 업체 소프트웨어를 제공하는 암호로 보호되는 HTTPS 서버
Expand
표 3.1. HTTPS 서버에서 제공하는 파일
파일예제제공자

Proteccio 클라이언트 소프트웨어 ISO 이미지 파일

Proteccio1.09.05.iso

HSM 벤더

SSL 서버 인증서

proteccio.CRT

HSM 관리자

SSL 클라이언트 인증서

client.CRT

HSM 관리자

SSL 클라이언트 키

client.KEY

HSM 관리자

절차

  1. Barbican에 대한 configure-barbican.yaml 환경 파일을 생성하고 다음 매개변수를 추가합니다.

    parameter_defaults
      BarbicanSimpleCryptoGlobalDefault: false
      BarbicanPkcs11CryptoGlobalDefault: true
      BarbicanPkcs11CryptoLogin: ********
      BarbicanPkcs11CryptoSlotId: 1
      ATOSVars:
        atos_client_iso_name: Proteccio1.09.05.iso
        atos_client_iso_location: https://user@PASSWORD:example.com/Proteccio1.09.05.iso
        atos_client_cert_location: https://user@PASSWORD:example.com/client.CRT
        atos_client_key_location: https://user@PASSWORD:example.com/client.KEY
        atos_hsms:
          - name: myHsm1
            server_cert_location: https://user@PASSWORD:example.com/myHsm1.CRT
            ip: 192.168.1.101
          - name: myHsm2
            server_cert_location: https://user@PASSWORD:example.com/myHsm2.CRT
            ip: ip: 192.168.1.102
    Copy to Clipboard Toggle word wrap
    참고

    atos_hsms 매개변수는 더 이상 사용되지 않고 향후 릴리스에서 제거될 atos_hsm_ip_addressatos_server_cert_location 매개변수를 대체합니다.

    Expand
    표 3.2. heat 매개변수
    매개변수현재의

    BarbicanSimpleCryptoGlobalDefault

    simplecrypto 가 글로벌 기본값인지 여부를 결정하는 부울입니다.

    BarbicanPkcs11GlobalDefault

    PKCS#11 이 글로벌 기본값인지 여부를 결정하는 부울입니다.

    BarbicanPkcs11CryptoSlotId

    Barbican에서 사용할 Virtual HSM의 슬롯 ID입니다.

    ATOSVars

    atos_client_iso_name

    Atos 클라이언트 소프트웨어 ISO의 파일 이름입니다. 이 값은 atos_client_iso_location 매개변수의 URL의 파일 이름과 일치해야 합니다.

    atos_client_iso_location

    사용자 이름 및 암호를 포함한 URL은 Proteccio 클라이언트 소프트웨어 ISO 이미지의 HTTPS 서버 위치를 지정합니다.

    atos_client_cert_location

    사용자 이름 및 암호를 포함한 URL은 SSL 클라이언트 인증서의 HTTPS 서버 위치를 지정합니다.

    atos_client_key_location

    사용자 이름 및 암호를 포함한 URL은 SSL 클라이언트 키의 HTTPS 서버 위치를 지정합니다. 이는 위의 클라이언트 인증서와 일치하는 키여야 합니다.

    atos_hsms

    HSM의 이름, 인증서 위치 및 IP 주소를 지정하는 하나 이상의 HSM 목록입니다. 이 목록에 두 개 이상의 HSM을 포함하는 경우 Barbican은 부하 분산 및 고가용성을 위해 HSM을 구성합니다.

  2. 배포 명령에 사용자 지정 configure-barbican.yaml , barbican.yaml 및 ATOS 특정 barbican-backend-pkcs11-atos.yaml 환경 파일을 포함하고 배포와 관련된 기타 환경 파일을 포함합니다.

    $ openstack overcloud deploy \
        --timeout 100 \
        --templates /usr/share/openstack-tripleo-heat-templates \
        --stack overcloud \
        --libvirt-type kvm \
        --ntp-server clock.redhat.com \
        -e /home/stack/containers-prepare-parameter.yaml \
        -e /home/stack/templates/config_lvm.yaml \
        -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
        -e /home/stack/templates/network/network-environment.yaml \
        -e /home/stack/templates/hostnames.yml \
        -e /home/stack/templates/nodes_data.yaml \
        -e /home/stack/templates/extra_templates.yaml \
        -e /usr/share/openstack-tripleo-heat-templates/environments/services/barbican.yaml \
        -e /usr/share/openstack-tripleo-heat-templates/environments/barbican-backend-pkcs11-atos.yaml \
        -e /home/stack/templates/configure-barbican.yaml \
        --log-file overcloud_deployment_with_atos.log
    Copy to Clipboard Toggle word wrap

검증

  1. 테스트 보안을 생성합니다.

    $ openstack secret store --name testSecret --payload 'TestPayload'
    +---------------+------------------------------------------------------------------------------------+
    | Field         | Value                                                                              |
    +---------------+------------------------------------------------------------------------------------+
    | Secret href   | https://192.168.123.163/key-manager/v1/secrets/4cc5ffe0-eea2-449d-9e64-b664d574be53 |
    | Name          | testSecret                                                                         |
    | Created       | None                                                                               |
    | Status        | None                                                                               |
    | Content types | None                                                                               |
    | Algorithm     | aes                                                                                |
    | Bit length    | 256                                                                                |
    | Secret type   | opaque                                                                             |
    | Mode          | cbc                                                                                |
    | Expiration    | None                                                                               |
    +---------------+------------------------------------------------------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. 방금 생성한 시크릿의 페이로드를 검색합니다.

    openstack secret get https://192.168.123.163/key-manager/v1/secrets/4cc5ffe0-eea2-449d-9e64-b664d574be53 --payload
    +---------+-------------+
    | Field   | Value       |
    +---------+-------------+
    | Payload | TestPayload |
    +---------+-------------+
    Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동