7.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.0.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 관리 콘솔에서 구성할 수 있습니다.

7.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 서버 구성.

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

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

7.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

서버를 설치하는 시스템의 DNS 이름과 관련된 첫 번째 및 성이란 무엇입니까? 질문에 대답해야 합니다. 테스트 목적으로 localhost 를 사용해야 합니다. 이 명령을 실행하면 에서 keytool 명령을 실행한 것과 동일한 디렉터리에 keycloak.jks 파일이 생성됩니다.

타사 서명된 인증서를 원하지만 없는 경우 cacert.org 에서 무료로 인증서를 받을 수 있습니다. 이 작업을 수행하기 전에 먼저 설정해야합니다.

가장 먼저 해야 할 일은 인증서 요청을 생성하는 것입니다.

$ keytool -certreq -alias yourdomain -keystore keycloak.jks > keycloak.careq

여기서 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-----

이 ca 요청을 CA로 보냅니다. CA는 서명된 인증서를 발급하여 사용자에게 보냅니다. 새 인증서를 가져오기 전에 CA의 루트 인증서를 가져와서 가져와야 합니다. 다음과 같이 CA에서 인증서를 다운로드하고 (예: root.crt) 가져올 수 있습니다.

$ keytool -import -keystore keycloak.jks -file root.crt -alias root

마지막 단계는 새 CA가 생성한 인증서를 키 저장소로 가져오는 것입니다.

$ keytool -import -alias yourdomain -keystore keycloak.jks -file your-certificate.cer

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

이제 적절한 인증서가 있는 Java 키 저장소가 있으므로 이를 사용하려면 Red Hat Single Sign-On 설치를 구성해야 합니다. 첫 번째 단계는 키 저장소 파일을 배포의 구성/ 디렉터리로 이동하고 standalone.xml,standalone-ha.xml 또는 domain.xml 파일을 편집하여 키 저장소를 사용하고 HTTPS를 활성화하는 것입니다. ( 운영 모드를참조하십시오.

독립 실행형 또는 도메인 구성 파일에서 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>

요소 서버 name="default-server"( system xmlns="urn:jboss:domain:undertow:4.0"의 하위요소)를 찾아 다음을 추가합니다.

<subsystem xmlns="urn:jboss:domain:undertow:4.0">
   <buffer-cache name="default"/>
   <server name="default-server">
      <https-listener name="https" socket-binding="https" security-realm="UndertowRealm"/>
   ...
</subsystem>
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동