XenServer

Workload Balancing 인증서

XenServer와 Workload Balancing은 HTTPS를 통해 통신합니다. Workload Balancing 구성 중에 마법사는 자체 서명된 테스트 인증서를 자동으로 만듭니다. 이 자체 서명 테스트 인증서를 사용하면 Workload Balancing에서 XenServer에 대한 TLS 연결을 설정할 수 있습니다. 기본적으로 워크로드 밸런싱은 XenServer와의 이 TLS 연결을 자동으로 생성합니다. 이 TLS 연결을 생성하기 위해 Workload Balancing을 구성하는 동안이나 구성 후에 인증서 구성을 수행할 필요가 없습니다.

참고:

자체 서명된 인증서는 HTTPS 통신을 지원하기 위한 자리 표시자일 뿐이며 신뢰할 수 있는 인증 기관에서 발급된 것이 아닙니다. 보안을 강화하려면 신뢰할 수 있는 인증 기관에서 서명한 인증서를 사용하는 것이 좋습니다.

상업 기관의 서명된 인증서 등 다른 인증 기관의 인증서를 사용하려면 Workload Balancing과 XenServer를 구성하여 해당 인증서를 사용해야 합니다.

기본적으로 XenServer는 Workload Balancing에 연결하기 전에 인증서의 ID를 확인하지 않습니다. 특정 인증서를 확인하도록 XenServer를 구성하려면 인증서 서명에 사용된 루트 인증서를 내보냅니다. 인증서를 XenServer에 복사하고 워크로드 밸런싱에 연결될 때 인증서를 확인하도록 XenServer를 구성합니다. 이 시나리오에서는 XenServer가 클라이언트 역할을 하고 Workload Balancing은 서버 역할을 합니다.

보안 목표에 따라 다음 중 하나를 수행할 수 있습니다.

 XenServer는 Workload Balancing 가상 장비가 TLS를 통해 해당 인증서에 연결되도록 하기 전에 특정 인증서가 있는지 확인합니다. 이 경우 실제 인증서 (개인 키가 있는 인증서) 는 Workload Balancing 서버에 있습니다. 서명하는 데 사용된 인증서는 XenServer 풀 코디네이터에 있습니다.

참고:

인증서 확인은 원치 않는 연결을 방지하도록 설계된 보안 방법입니다. Workload Balancing 인증서가 엄격한 요구 사항을 충족해야 하며 그렇지 않으면 인증서 확인이 실패합니다. 인증서 확인에 실패하면 XenServer는 연결을 허용하지 않습니다.

인증서 확인에 성공하려면 XenServer가 인증서를 찾을 것으로 예상되는 특정 위치에 인증서를 저장해야 합니다.

자체 서명된 인증서를 확인하도록 XenServer를 구성합니다

XenServer가 Workload Balancing의 연결을 허용하기 전에 Citrix Workload Balancing 자체 서명 인증서가 인증되었는지 확인하도록 XenServer를 구성할 수 있습니다.

중요:

XenServer Workload Balancing 자체 서명 인증서를 확인하려면 해당 호스트 이름을 사용하여 Workload Balancing에 연결해야 합니다. Workload Balancing 호스트 이름을 찾으려면 가상 장비에서 hostname 명령을 실행합니다.

자체 서명된 인증서를 확인하도록 XenServer를 구성하려면 다음 단계를 완료하십시오.

  1. Workload Balancing 가상 장비에서 풀 코디네이터로 자체 서명된 인증서를 복사합니다. XenServer Workload Balancing 자체 서명 인증서는 /etc/ssl/certs/server.pem에 저장됩니다. 풀 코디네이터에서 다음 명령을 실행합니다.

    scp root@<wlb-ip>:/etc/ssl/certs/server.pem .
    <!--NeedCopy-->
    
  2. wlb-ip의 신뢰성을 설정할 수 없다는 메시지가 표시되면 yes을 입력하여 계속합니다.

  3. 메시지가 표시되면 Workload Balancing 가상 장비 루트 암호를 입력합니다. 인증서가 현재 디렉터리에 복사됩니다.

  4. 인증서를 설치합니다. 인증서를 복사한 디렉터리에서 다음 명령을 실행합니다.

    xe pool-certificate-install filename=server.pem
    <!--NeedCopy-->
    
  5. 풀 코디네이터에서 다음 명령을 실행하여 인증서가 올바르게 설치되었는지 확인합니다.

    xe pool-certificate-list
    <!--NeedCopy-->
    

    인증서를 올바르게 설치한 경우 이 명령의 출력에 내보낸 루트 인증서가 포함됩니다. 이 명령을 실행하면 설치한 인증서를 포함하여 설치된 모든 TLS 인증서가 나열됩니다.

  6. 코디네이터의 인증서를 풀의 모든 호스트와 동기화하려면 풀 코디네이터에서 다음 명령을 실행합니다.

    xe pool-certificate-sync
    <!--NeedCopy-->
    

    코디네이터에서 pool-certificate-sync 명령을 실행하면 모든 풀 호스트의 인증서 및 인증서 취소 목록이 코디네이터와 동기화됩니다. 이렇게 하면 풀의 모든 호스트가 동일한 인증서를 사용할 수 있습니다.

    이 명령의 출력은 없습니다. 하지만 이 단계가 성공적으로 수행되지 않으면 다음 단계가 올바로 수행되지 않습니다.

  7. Workload Balancing Virtual Appliance에 연결하기 전에 인증서를 확인하도록 XenServer에 지시합니다. 풀 코디네이터에서 다음 명령을 실행합니다.

    xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool
    <!--NeedCopy-->
    

    팁:

    Tab 키를 누르면 풀의 UUID가 자동으로 채워집니다.

  8. (선택 사항) 이 절차가 제대로 작동하는지 확인하려면 다음 단계를 수행하십시오.

    1. 인증서가 풀의 다른 호스트와 동기화되었는지 테스트하려면 해당 호스트에서 pool-certificate-list 명령을 실행합니다.

    2. XenServer가 인증서를 확인하도록 설정되었는지 테스트하려면 param-name=wlb-verify-cert 매개 변수를 사용하여 pool-param-get 명령을 실행합니다. 예:

      xe pool-param-get param-name=wlb-verify-cert uuid=uuid_of_pool
      <!--NeedCopy-->
      

인증 기관 인증서를 확인하도록 XenServer를 구성합니다

신뢰할 수 있는 인증 기관에서 서명한 인증서를 확인하도록 XenServer를 구성할 수 있습니다.

신뢰할 수 있는 기관 인증서의 경우 XenServer에는 공개 키가 포함된 .pem 형식으로 내보낸 인증서 또는 인증서 체인 (중간 및 루트 인증서) 이 필요합니다.

Workload Balancing에서 신뢰할 수 있는 기관 인증서를 사용하도록 하려면 다음 작업을 수행합니다.

  1. 인증 기관에서 서명된 인증서를 가져옵니다.

  2. 새 인증서를 지정하고 적용합니다.

  3. 인증서 체인을 풀로 가져옵니다.

이러한 작업을 시작하기 전에 다음을 확인하십시오.

  • XenServer 풀 코디네이터의 IP 주소를 알고 있습니다.

  • XenServer가 Workload Balancing 호스트 이름을 확인할 수 있습니다. (예를 들어, 풀 코디네이터를 위해 XenServer 콘솔에서 워크로드 밸런싱 FQDN을 핑해 볼 수 있습니다.)

인증 기관에서 서명된 인증서 받기

인증 기관에서 인증서를 얻으려면 CSR (인증서 서명 요청) 을 생성해야 합니다. Workload Balancing 가상 장비에서 개인 키를 생성하고 해당 개인 키를 사용하여 CSR을 생성합니다.

일반 이름 지정 지침

CSR을 생성할 때 지정하는 CN(일반 이름)은 Workload Balancing 가상 장비의 FQDN과 정확히 일치해야 합니다. 또한 WLB 서버에 연결 대화 상자의 주소 상자에 지정한 FQDN 또는 IP 주소와 일치해야 합니다.

이름이 일치하도록 하려면 다음 지침 중 하나를 사용하여 일반 이름을 지정합니다.

  • WLB 서버에 연결 대화 상자에서 지정한 것과 동일한 인증서 일반 이름 정보를 지정합니다.

    예를 들어 Workload Balancing 가상 장비의 이름이 wlb-vpx.yourdomain(으)로 지정된 경우 WLB 서버에 연결 대화 상자에서 wlb-vpx.yourdomain을(를) 지정하고 CSR을 생성할 때 일반 이름으로 wlb-vpx.yourdomain을(를) 제공합니다.

  • 풀을 IP 주소별로 Workload Balancing에 연결한 경우 FQDN을 일반 이름으로 사용하고 IP 주소를 SAN (주체 대체 이름) 으로 사용합니다. 그러나 이 방법은 모든 상황에서 작동하지 않을 수 있습니다.

프라이빗 키 파일 생성

Workload Balancing 가상 장비에서 다음 단계를 완료합니다.

  1. 다음과 같이 개인 키 파일을 생성합니다.

    openssl genrsa -des3 -out privatekey.pem 2048
    <!--NeedCopy-->
    
  2. 암호 제거:

    openssl rsa -in privatekey.pem -out privatekey.nop.pem
    <!--NeedCopy-->
    

참고:

암호를 잘못 입력하거나 일관되지 않은 경우 사용자 인터페이스 오류가 있음을 나타내는 일부 메시지가 나타날 수 있습니다. 메시지를 무시하고 명령을 다시 실행하여 개인 키 파일을 만들 수 있습니다.

인증서 서명 요청 생성

Workload Balancing 가상 장비에서 다음 단계를 완료합니다.

  1. 개인 키를 사용하여 CSR (인증서 서명 요청) 을 생성합니다.

    openssl req -new -key privatekey.nop.pem -out csr
    <!--NeedCopy-->
    
  2. 화면의 지시에 따라 다음과 같이 CSR 생성에 필요한 정보를 제공합니다.

    국가 이름. 해당 국가의 TLS 인증서 국가 코드를 입력합니다. 예를 들어 캐나다의 경우 CA, 자메이카의 경우 JM이 있습니다. 웹에서 TLS 인증서 국가 코드 목록을 찾을 수 있습니다.

    주 또는 지방 이름 (전체 이름). 풀이 있는 주 또는 시/도를 입력합니다. 예: 매사추세츠 또는 앨버타.

    지역성 이름. 풀이 있는 구/군/시의 이름입니다.

    Organization Name(조직 이름): 회사 또는 조직의 이름입니다.

    Organizational Unit Name(조직 구성 단위 이름): 부서 이름을 입력합니다. 이 필드는 선택 사항입니다.

    일반 이름. Workload Balancing 서버의 FQDN을 입력합니다. 이 값은 풀이 Workload Balancing에 연결하는 데 사용하는 이름과 일치해야 합니다. 자세한 내용은 일반 이름 지정 지침을참조하십시오.

    전자 메일 주소. 이 전자 메일 주소는 인증서를 생성할 때 인증서에 포함됩니다.

  3. 선택적 속성을 제공하거나 Enter 키를 눌러 이 정보 제공을 건너뜁니다.

    CSR 요청은 현재 디렉토리에 저장되며 csr로 이름이 지정됩니다.

  4. Workload Balancing 장비 콘솔에서 다음 명령을 실행하여 콘솔 창에 CSR을 표시합니다.

    cat csr
    <!--NeedCopy-->
    
  5. 전체 CSR을 복사하고 이를 사용하여 인증 기관에 인증서를 요청합니다.

새 인증서 지정 및 적용

이 절차를 사용하여 Workload Balancing에서 인증 기관의 인증서를 사용하도록 지정합니다. 이 절차는 루트 및 (사용 가능한 경우) 중간 인증서를 설치합니다.

새 인증서를 지정하려면 다음 단계를 완료하십시오.

  1. 서명된 인증서, 루트 인증서 및 인증 기관에 인증서가 있는 경우 인증 기관에서 중간 인증서를 다운로드합니다.

  2. Workload Balancing 가상 장비에 인증서를 직접 다운로드하지 않은 경우 다음 방법 중 하나를 사용하여 인증서를 복사합니다.

    • Windows 컴퓨터에서 WinSCP 또는 다른 복사 유틸리티를 사용합니다.

      호스트 이름의 경우 IP 주소를 입력하고 포트를 기본값으로 둘 수 있습니다. 사용자 이름과 암호는 일반적으로 루트 및 구성 중에 설정한 암호입니다.

    • Linux 컴퓨터에서 Workload Balancing 장치로, SCP 또는 다른 복사 유틸리티를 사용합니다. 예:

       scp root_ca.pem root@wlb-ip:/path_on_your_WLB
       <!--NeedCopy-->
      
  3. Workload Balancing 가상 장비에서 모든 인증서 (루트 인증서, 중간 인증서 (있는 경우) 및 서명된 인증서) 의 내용을 하나의 파일로 병합합니다. 다음 명령을 사용할 수 있습니다.

    cat signed_cert.pem intermediate_ca.pem root_ca.pem > server.pem
    <!--NeedCopy-->
    
  4. move 명령을 사용하여 기존 인증서 및 키의 이름을 바꿉니다.

    mv /etc/ssl/certs/server.pem /etc/ssl/certs/server.pem_orig
    mv /etc/ssl/certs/server.key /etc/ssl/certs/server.key_orig
    <!--NeedCopy-->
    
  5. 병합된 인증서를 복사합니다.

    mv server.pem /etc/ssl/certs/server.pem
    <!--NeedCopy-->
    
  6. 이전에 생성한 프라이빗 키를 복사합니다.

    mv privatekey.nop.pem /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  7. 루트에서만 개인 키를 읽을 수 있도록 설정합니다. chmod 명령을 사용하여 권한을 수정합니다.

    chmod 600 /etc/ssl/certs/server.key
    <!--NeedCopy-->
    
  8. stunnel 재시작:

    killall stunnel
    stunnel
    <!--NeedCopy-->
    

인증서 체인을 풀로 가져오기

인증서를 받은 후 XenServer 풀 코디네이터로 가져옵니다. 풀의 호스트를 동기화하여 해당 인증서를 사용합니다. 그런 다음 Workload Balancing이 호스트에 연결할 때마다 인증서 ID 및 유효성을 확인하도록 XenServer를 구성할 수 있습니다.

  1. 인증 기관에서 서명된 인증서, 루트 인증서 및 중간 인증서(인증 기관에 있는 경우)를 XenServer 풀 코디네이터에 복사합니다.

  2. 풀 코디네이터에 루트 인증서를 설치합니다.

    xe pool-install-ca-certificate filename=root_ca.pem
    <!--NeedCopy-->
    
  3. 해당하는 경우 풀 코디네이터에 중간 인증서를 설치합니다.

    xe pool-install-ca-certificate filename=intermediate_ca.pem
    <!--NeedCopy-->
    
  4. 풀 코디네이터에서 다음 명령을 실행하여 두 인증서가 모두 올바르게 설치되었는지 확인합니다.

    xe pool-certificate-list
    <!--NeedCopy-->
    

    이 명령을 실행하면 설치된 모든 TLS 인증서가 나열됩니다. 인증서가 성공적으로 설치되면 이 목록에 나타납니다.

  5. 풀 코디네이터의 인증서를 풀의 모든 호스트와 동기화합니다.

    xe pool-certificate-sync
    <!--NeedCopy-->
    

    코디네이터에서 pool-certificate-sync 명령을 실행하면 모든 풀 호스트의 인증서 및 인증서 취소 목록이 풀 코디네이터와 동기화됩니다. 이렇게 하면 풀의 모든 호스트가 동일한 인증서를 사용할 수 있습니다.

  6. Workload Balancing Virtual Appliance에 연결하기 전에 인증서를 확인하도록 XenServer에 지시합니다. 풀 코디네이터에서 다음 명령을 실행합니다.

    xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool
    <!--NeedCopy-->
    

    팁:

    Tab 키를 누르면 풀의 UUID가 자동으로 채워집니다.

  7. 인증서 확인을 활성화하기 전에 WLB에 연결 대화 상자에서 IP 주소를 지정한 경우 풀을 Workload Balancing에 다시 연결하라는 메시지가 표시될 수 있습니다.

    WLB에 연결 대화 상자의 주소에 Workload Balancing 장치의 FQDN을 인증서의 일반 이름에 표시된 대로 정확하게 지정합니다. FQDN을 입력하여 일반 이름이 XenServer가 연결하는 데 사용하는 이름과 일치하는지 확인합니다.

문제 해결

  • 인증서 확인을 구성한 후 풀을 Workload Balancing에 연결할 수 없는 경우 인증서 확인을 해제하면 풀이 연결할 수 있는지 확인합니다. xe pool-param-set wlb-verify-cert=false uuid=uuid_of_pool 명령을 사용하여 인증서 확인을 비활성화할 수 있습니다. 확인 해제 시 연결할 수 있으면 인증서 구성에 문제가 있는 것입니다. 연결할 수 없는 경우 Workload Balancing 자격 증명 또는 네트워크 연결에 문제가 있는 것입니다.

  • 일부 상용 인증 기관에서는 인증서가 올바르게 설치되었는지 확인하는 도구를 제공합니다. 이러한 절차로 문제를 격리하는 데 도움이 되지 않을 경우 이러한 도구를 실행하는 것이 좋습니다. 이러한 도구에서 TLS 포트를 지정해야 하는 경우 포트 8012 또는 Workload Balancing 구성 중에 설정한 포트를 지정합니다.

  • WLB 탭에 연결 오류가 표시되면 인증서 일반 이름과 Workload Balancing 가상 장비의 이름이 충돌할 수 있습니다. Workload Balancing 가상 장비 이름과 인증서의 일반 이름은 정확히 일치해야 합니다.

자세한 내용은 문제 해결을참조하십시오.

Workload Balancing 인증서