검색

5.9. 구성 파일에서 암호 암호화

download PDF

기본적으로 AMQ Broker는 구성 파일의 모든 암호를 일반 텍스트로 저장합니다. 권한이 없는 액세스를 방지하기 위해 모든 구성 파일을 올바른 권한으로 보호하십시오. 또한 일반 텍스트 암호를 암호화하거나 마스크 하여 원하지 않는 뷰어가 읽을 수 없도록 할 수 있습니다.

5.9.1. 암호화된 암호 정보

암호화되거나 마스킹된 password는 일반 텍스트 암호의 암호화된 버전입니다. 암호화된 버전은 AMQ Broker에서 제공하는 마스크 명령줄 유틸리티에 의해 생성됩니다. 마스크 유틸리티에 대한 자세한 내용은 명령줄 도움말 설명서를 참조하십시오.

$ <broker_instance_dir>/bin/artemis help mask

암호를 마스킹하려면 일반 텍스트 값을 암호화된 값으로 바꿉니다. 마스킹된 암호는 실제 값이 필요할 때 암호를 해독하도록 식별자 ENC() 로 래핑해야 합니다.

다음 예에서 구성 파일 < broker_instance_dir> /etc/bootstrap.xml 에는 keyStorePasswordtrustStorePassword 매개변수에 대한 마스크된 암호가 포함되어 있습니다.

<web bind="https://localhost:8443" path="web"
     keyStorePassword="ENC(-342e71445830a32f95220e791dd51e82)"
     trustStorePassword="ENC(32f94e9a68c45d89d962ee7dc68cb9d1)">
    <app url="activemq-branding" war="activemq-branding.war"/>
</web>

다음 구성 파일에서 마스킹된 암호를 사용할 수 있습니다.

  • broker.xml
  • bootstrap.xml
  • management.xml
  • artemis-users.properties
  • login.config ( LDAPLoginModule과 함께 사용하는 경우)

구성 파일은 < broker_instance_dir> /etc 에서 찾을 수 있습니다.

참고

Artemis-users.properties 는 해시된 암호만 지원합니다. 사용자가 브로커 생성 시 생성될 때 artemis-users.properties 에는 기본적으로 해시된 암호가 포함됩니다. 기본 PropertiesLoginModuleartemis-users.properties 파일에서 암호를 디코딩하지 않지만 입력을 해시하고 암호 확인을 위해 해시된 두 값을 비교합니다. 해시된 암호를 마스킹된 암호로 변경하면 AMQ Broker 관리 콘솔에 액세스할 수 없습니다.

broker.xml,bootstrap.xml,management.xml, login.config 는 마스킹되었지만 해시되지 않은 암호를 지원합니다.

5.9.2. 구성 파일에서 암호 암호화

다음 예제에서는 broker.xml 구성 파일에서 cluster-password 의 값을 마스킹하는 방법을 보여줍니다.

절차

  1. 명령 프롬프트에서 마스크 유틸리티를 사용하여 암호를 암호화합니다.

    $ <broker_instance_dir>/bin/artemis mask <password>
    result: 3a34fd21b82bf2a822fa49a8d8fa115d
  2. 마스킹할 일반 텍스트 암호가 포함된 < broker_instance_dir> /etc/broker.xml 구성 파일을 엽니다.

    <cluster-password>
      <password>
    </cluster-password>
  3. 일반 텍스트 암호를 암호화된 값으로 바꿉니다.

    <cluster-password>
      3a34fd21b82bf2a822fa49a8d8fa115d
    </cluster-password>
  4. ENC() 식별자로 암호화된 값을 래핑합니다.

    <cluster-password>
      ENC(3a34fd21b82bf2a822fa49a8d8fa115d)
    </cluster-password>

이제 설정 파일에 암호화된 암호가 포함됩니다. 암호가 ENC() 식별자로 래핑되므로 AMQ Broker가 사용하기 전에 암호를 해독합니다.

추가 리소스

5.9.3. 암호를 암호화하고 암호 해독하기 위해 codec 키 설정

암호를 암호화하고 해독하는 데 코드c가 필요합니다. 사용자 정의 코드c가 구성되지 않은 경우 mask 유틸리티는 기본 코드c를 사용하여 암호를 암호화하고 AMQ Broker는 동일한 기본 코드c를 사용하여 암호 해독을 수행합니다. codec는 암호를 암호화하고 해독하기 위해 기본 암호화 알고리즘에 제공하는 기본 키로 구성됩니다. 기본 키를 사용하면 악의적인 행위자가 키를 사용하여 암호 해독을 수행할 위험이 노출됩니다.

마스크 유틸리티를 사용하여 암호를 암호화하는 경우 기본 codec 키를 사용하지 않도록 고유한 키 문자열을 지정할 수 있습니다. 그런 다음 ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY 환경 변수에서 동일한 키 문자열을 설정해야 브로커가 암호를 해독할 수 있습니다. 환경 변수에서 키를 설정하면 구성 파일에 유지되지 않으므로 더 안전합니다. 또한 브로커를 시작하기 직전에 키를 설정하고 브로커가 시작된 직후에 설정을 해제할 수 있습니다.

절차

  1. mask 유틸리티를 사용하여 구성 파일의 각 암호를 암호화합니다. key 매개변수에 대해 암호를 암호화할 문자 문자열을 지정합니다. 동일한 키 문자열을 사용하여 각 암호를 암호화합니다.

    $ <broker_instance_dir>/bin/artemis mask --key <key> <password>
    주의

    마스크 유틸리티를 실행하여 암호를 암호화할 때 지정하는 키 문자열의 레코드를 보관해야 합니다. 브로커가 암호 해독을 허용하도록 환경 변수에 동일한 키 값을 구성해야 합니다.

    구성 파일의 암호를 암호화하는 방법에 대한 자세한 내용은 5.9.2절. “구성 파일에서 암호 암호화” 을 참조하십시오.

  2. 명령 프롬프트에서 ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY 환경 변수를 각 암호를 암호화할 때 지정한 키 문자열로 설정합니다.

    $ export ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY= <key>
  3. 브로커를 시작합니다.

    $ ./artemis run
  4. ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY 환경 변수를 설정 해제합니다.

    $ unset ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY
    참고

    브로커를 시작한 후 ARTEMIS_DEFAULT_SENSITIVE_STRING_CODEC_KEY 환경 변수를 설정 해제하는 경우 나중에 브로커를 시작하기 전에 동일한 키 문자열로 다시 설정해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.