8.3. HTTPS/SSL 설정


주의

Red Hat Single Sign-On은 기본적으로 SSL/HTTPS를 처리하도록 설정되어 있지 않습니다. Red Hat Single Sign-On 서버 자체에서 또는 Red Hat Single Sign-On 서버 앞에 있는 역방향 프록시에서 SSL을 활성화하는 것이 좋습니다.

이 기본 동작은 각 Red Hat Single Sign-On 영역의 SSL/HTTPS 모드로 정의됩니다. 이 내용은 서버 관리 가이드에서 자세히 설명하지만 이러한 모드에 대한 몇 가지 컨텍스트와 간략한 개요를 제공합니다.

외부 요청
Red Hat Single Sign-On은 localhost,127.0.0.1,10.x.x ,192.168.x.x, 172.16.x.x 와 같은 개인 IP 주소를 고정하면 SSL 없이 즉시 실행할 수 있습니다. 서버에 SSL/HTTPS가 구성되어 있지 않거나 비개인 IP 주소에서 HTTP를 통해 Red Hat Single Sign-On에 액세스하려고 하면 오류가 발생합니다.
none
Red Hat Single Sign-On에는 SSL이 필요하지 않습니다. 이것은 실제로 사물과 함께 플레이 할 때 개발에만 사용해야합니다.
모든 요청
Red Hat Single Sign-On은 모든 IP 주소에 대해 SSL이 필요합니다.

각 영역의 SSL 모드는 Red Hat Single Sign-On 관리 콘솔에서 구성할 수 있습니다.

8.3.1. Red Hat Single Sign-On 서버에 대해 SSL/HTTPS 활성화

HTTPS 트래픽을 처리하기 위해 역방향 프록시 또는 로드 밸런서를 사용하지 않는 경우 Red Hat Single Sign-On 서버에 HTTPS를 활성화해야 합니다. 여기에는 다음이 포함됩니다.

  1. SSL/HTTP 트래픽에 대한 개인 키 및 인증서가 포함된 키 저장소 가져오기 또는 생성
  2. 이 키 쌍 및 인증서를 사용하도록 Red Hat Single Sign-On 서버 구성.

8.3.1.1. 인증서 및 Java 키 저장소 생성

HTTPS 연결을 허용하려면 Red Hat Single Sign-On 서버를 배포하는 웹 컨테이너에서 HTTPS를 활성화하기 전에 자체 서명된 인증서 또는 타사 서명된 인증서를 가져와서 Java 키 저장소로 가져와야 합니다.

8.3.1.1.1. 자체 서명된 인증서

개발 중에 Red Hat Single Sign-On 배포를 테스트할 수 있는 타사 서명된 인증서가 없으므로 Java JDK와 함께 제공되는 keytool 유틸리티를 사용하여 자체 서명된 인증서를 생성해야 합니다.

$ keytool -genkey -alias localhost -keyalg RSA -keystore keycloak.jks -validity 10950
    Enter keystore password: secret
    Re-enter new password: secret
    What is your first and last name?
    [Unknown]:  localhost
    What is the name of your organizational unit?
    [Unknown]:  Keycloak
    What is the name of your organization?
    [Unknown]:  Red Hat
    What is the name of your City or Locality?
    [Unknown]:  Westford
    What is the name of your State or Province?
    [Unknown]:  MA
    What is the two-letter country code for this unit?
    [Unknown]:  US
    Is CN=localhost, OU=Keycloak, O=Test, L=Westford, ST=MA, C=US correct?
    [no]:  yes
Copy to Clipboard Toggle word wrap

What is your first and last name ? 질문이 표시되면 서버를 설치하는 시스템의 DNS 이름을 입력합니다. 테스트 목적으로 localhost 를 사용해야 합니다. 이 명령을 실행하면 에서 keytool 명령을 실행한 것과 동일한 디렉터리에 keycloak.jks 파일이 생성됩니다.

타사 서명된 인증서를 원하지만 없는 경우 cacert.org 에서 무료로 인증서를 받을 수 있습니다. 그러나 먼저 다음 절차를 사용해야 합니다.

절차

  1. 인증서 요청을 생성합니다.

    $ keytool -certreq -alias yourdomain -keystore keycloak.jks > keycloak.careq
    Copy to Clipboard Toggle word wrap

    여기서 yourdomain 은 이 인증서가 생성되는 DNS 이름입니다. keytool은 요청을 생성합니다.

    -----BEGIN NEW CERTIFICATE REQUEST-----
    MIIC2jCCAcICAQAwZTELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAk1BMREwDwYDVQQHEwhXZXN0Zm9y
    ZDEQMA4GA1UEChMHUmVkIEhhdDEQMA4GA1UECxMHUmVkIEhhdDESMBAGA1UEAxMJbG9jYWxob3N0
    MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr7kck2TaavlEOGbcpi9c0rncY4HhdzmY
    Ax2nZfq1eZEaIPqI5aTxwQZzzLDK9qbeAd8Ji79HzSqnRDxNYaZu7mAYhFKHgixsolE3o5Yfzbw1
    29RvyeUVe+WZxv5oo9wolVVpdSINIMEL2LaFhtX/c1dqiqYVpfnvFshZQaIg2nL8juzZcBjj4as
    H98gIS7khql/dkZKsw9NLvyxgJvp7PaXurX29fNf3ihG+oFrL22oFyV54BWWxXCKU/GPn61EGZGw
    Ft2qSIGLdctpMD1aJR2bcnlhEjZKDksjQZoQ5YMXaAGkcYkG6QkgrocDE2YXDbi7GIdf9MegVJ35
    2DQMpwIDAQABoDAwLgYJKoZIhvcNAQkOMSEwHzAdBgNVHQ4EFgQUQwlZJBA+fjiDdiVzaO9vrE/i
    n2swDQYJKoZIhvcNAQELBQADggEBAC5FRvMkhal3q86tHPBYWBuTtmcSjs4qUm6V6f63frhveWHf
    PzRrI1xH272XUIeBk0gtzWo0nNZnf0mMCtUBbHhhDcG82xolikfqibZijoQZCiGiedVjHJFtniDQ
    9bMDUOXEMQ7gHZg5q6mJfNG9MbMpQaUVEEFvfGEQQxbiFK7hRWU8S23/d80e8nExgQxdJWJ6vd0X
    MzzFK6j4Dj55bJVuM7GFmfdNC52pNOD5vYe47Aqh8oajHX9XTycVtPXl45rrWAH33ftbrS8SrZ2S
    vqIFQeuLL3BaHwpl3t7j2lMWcK1p80laAxEASib/fAwrRHpLHBXRcq6uALUOZl4Alt8=
    -----END NEW CERTIFICATE REQUEST-----
    Copy to Clipboard Toggle word wrap
  2. 이 CA 요청을 CA(인증 기관)로 보냅니다.

    CA는 서명된 인증서를 발급하여 사용자에게 보냅니다.

  3. CA의 루트 인증서를 가져와서 가져옵니다.

    CA(즉, root.crt)에서 인증서를 다운로드하고 다음과 같이 가져올 수 있습니다.

    $ keytool -import -keystore keycloak.jks -file root.crt -alias root
    Copy to Clipboard Toggle word wrap
  4. 새 CA가 생성한 인증서를 키 저장소로 가져옵니다.

    $ keytool -import -alias yourdomain -keystore keycloak.jks -file your-certificate.cer
    Copy to Clipboard Toggle word wrap

8.3.1.2. 키 저장소를 사용하도록 Red Hat Single Sign-On 구성

이제 적절한 인증서가 있는 Java 키 저장소가 있으므로 이를 사용하려면 Red Hat Single Sign-On 설치를 구성해야 합니다.

절차

  1. keystore를 사용하고 HTTPS를 활성화하도록 standalone.xml,standalone-ha.xml 또는 host.xml 파일을 편집합니다.
  2. 키 저장소 파일을 배포의 구성/ 디렉터리로 이동하거나 선택한 위치에 있는 파일을 이동하고 절대 경로를 제공합니다.

    절대 경로를 사용하는 경우 구성에서 relative-to 매개변수를 제거합니다( 운영 모드참조).

  3. CLI를 사용하여 새로운 security-realm 요소를 추가합니다.

    $ /core-service=management/security-realm=UndertowRealm:add()
    
    $ /core-service=management/security-realm=UndertowRealm/server-identity=ssl:add(keystore-path=keycloak.jks, keystore-relative-to=jboss.server.config.dir, keystore-password=secret)
    Copy to Clipboard Toggle word wrap

    도메인 모드를 사용하는 경우 /host=< host_name>/ 접두사를 사용하여 모든 호스트에서 명령을 실행해야 합니다(모두 security-realm 을 생성하려면). 다음은 각 호스트에 대해 반복할 예제입니다.

    $ /host=<host_name>/core-service=management/security-realm=UndertowRealm/server-identity=ssl:add(keystore-path=keycloak.jks, keystore-relative-to=jboss.server.config.dir, keystore-password=secret)
    Copy to Clipboard Toggle word wrap

    독립 실행형 또는 호스트 구성 파일에서 security-realms 요소는 다음과 같아야 합니다.

    <security-realm name="UndertowRealm">
        <server-identities>
            <ssl>
                <keystore path="keycloak.jks" relative-to="jboss.server.config.dir" keystore-password="secret" />
            </ssl>
        </server-identities>
    </security-realm>
    Copy to Clipboard Toggle word wrap
  4. 독립 실행형 또는 각 도메인 구성 파일에서 security-realm 의 인스턴스를 검색합니다.
  5. 생성된 영역을 사용하도록 https-listener 를 수정합니다.

    $ /subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=security-realm, value=UndertowRealm)
    Copy to Clipboard Toggle word wrap

    도메인 모드를 사용하는 경우 /profile=<profile _name>/과 함께 사용되는 프로필로 명령에 접두사를 붙입니다.

    하위 시스템 xmlns="urn:jboss:domain:undertow:12.0"의 하위 요소인 결과 요소 server name="default-server" 에서는 다음 스탠자를 포함해야 합니다.

    <subsystem xmlns="urn:jboss:domain:undertow:12.0">
       <buffer-cache name="default"/>
       <server name="default-server">
          <https-listener name="https" socket-binding="https" security-realm="UndertowRealm"/>
       ...
    </subsystem>
    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