XenMobile Server

네트워크 액세스 제어

NAC(네트워크 액세스 제어) 솔루션을 사용하여 Android 및 Apple 장치에 대한 XenMobile 장치 보안 평가를 확장할 수 있습니다. NAC 솔루션에서 XenMobile 보안 평가를 사용하여 인증 의사 결정을 지원하고 처리할 수 있습니다. NAC 장비를 구성한 후 XenMobile에서 구성한 장치 정책 및 NAC 필터가 적용됩니다.

NAC 솔루션과 함께 XenMobile을 사용하면 QoS를 추가하고 네트워크 내부에 있는 장치를 보다 세밀하게 제어할 수 있습니다. NAC를 XenMobile과 통합하여 얻을 수 있는 장점에 대한 요약은 액세스 제어에서 확인하십시오.

다음은 XenMobile 통합이 지원되는 솔루션입니다.

  • Citrix Gateway
  • Cisco Identity Services Engine(ISE)
  • ForeScout

다른 NAC 솔루션에 대한 통합은 보장되지 않습니다.

네트워크의 NAC 장비 사용:

  • XenMobile은 iOS, Android Enterprise 및 Android 장치의 엔드포인트 보안 기능으로 NAC를 지원합니다.

  • XenMobile에서 필터를 사용하여 규칙 또는 속성에 따라 장치를 NAC 준수 또는 비준수 장치로 설정할 수 있습니다. 예:

    • XenMobile의 관리되는 장치가 지정된 기준을 충족하지 않으면 XenMobile이 해당 장치를 비준수 장치로 표시합니다. 네트워크에서 규정을 준수하지 않는 장치는 NAC 장비에 의해 차단됩니다.

    • XenMobile의 관리되는 장치에 비준수 앱이 설치되어 있는 경우 NAC 필터에 의해 VPN 연결이 차단될 수 있습니다. 따라서 비준수 사용자 장치는 VPN을 통해 앱이나 웹 사이트에 액세스할 수 없습니다.

    • Citrix Gateway를 NAC에 사용하는 경우 분할 터널링을 사용하도록 설정하여 Citrix Gateway 플러그인에서 불필요한 네트워크 트래픽을 Citrix Gateway로 보내는 것을 방지할 수 있습니다. 분할 터널링에 대한 자세한 내용은 분할 터널링 구성을 참조하십시오.

지원되는 NAC 준수 필터

XenMobile Server는 다음과 같은 NAC 준수 필터를 지원합니다.

익명 장치: 장치가 익명 모드인지 확인합니다. 이 확인은 장치가 다시 연결할 때 XenMobile이 사용자를 다시 인증할 수 없는 경우 사용할 수 있습니다.

Samsung Knox 증명 실패: 장치가 Samsung Knox 증명 서버의 쿼리에 실패했는지 확인합니다.

금지된 앱: 장치에 앱 액세스 장치 정책에 정의된 금지된 앱이 있는지 확인합니다. 해당 정책에 대한 자세한 내용은 앱 액세스 장치 정책을 참조하십시오.

비활성 장치: 서버 속성장치 비활성 일 수 임계값 설정에 정의된 대로 장치가 비활성 상태인지 확인합니다. 자세한 내용은 서버 속성을 참조하십시오.

누락된 필수 앱: 앱 액세스 정책에 정의된 대로, 장치에 필수 앱이 누락되었는지 확인합니다.

비추천 앱: 앱 액세스 정책에 정의된 대로, 장치에 비추천 앱이 있는지 확인합니다.

규정을 준수하지 않는 암호: 사용자 암호가 규정을 준수하는지 확인합니다. iOS 및 Android 장치에서 XenMobile은 현재 장치에 있는 암호가 장치로 보낸 암호 정책을 준수하는지 여부를 확인할 수 있습니다. 예를 들어 iOS에서는 XenMobile이 암호 정책을 장치에 보내는 경우 60분 내에 암호를 설정해야 합니다. 사용자가 암호를 설정하기 전에 암호가 규정을 준수하지 않을 수 있습니다.

규정 위반 장치: 규정 위반 장치 속성에 따라 장치가 규정을 위반하는지 여부를 확인합니다. 일반적으로 XenMobile API를 사용하는 자동화된 작업 또는 타사에서는 이 장치 속성을 변경합니다.

해지된 상태: 장치 인증서가 해지되었는지 여부를 확인합니다. 해지된 장치는 다시 권한이 부여될 때까지 다시 등록할 수 없습니다.

루팅된 Android 및 탈옥 iOS 장치: Android 또는 iOS 장치가 탈옥되어 있는지 확인합니다.

관리되지 않는 장치: 장치가 여전히 XenMobile 제어 하에 관리되는 상태에 있는지 확인합니다. 예를 들어 MAM로 등록된 장치나 등록되지 않은 장치는 관리되지 않습니다.

참고:

묵시적 준수/비준수 필터는 XenMobile로 관리되는 장치에만 기본값을 설정합니다. 예를 들어 차단된 앱이 설치된 장치 또는 등록되지 않은 장치는 비준수로 표시됩니다. 이러한 장치는 NAC 장비에 의해 네트워크에서 차단됩니다.

구성 개요

NAC 구성 요소를 나열된 순서대로 구성하는 것이 좋습니다.

  1. NAC를 지원하도록 장치 정책 구성:

    iOS 장치의 경우:NAC를 지원하도록 VPN 장치 정책 구성을 참조하십시오.

    Android Enterprise 장치의 경우:Citrix SSO에 대한 Android Enterprise 관리되는 구성 만들기를 참조하십시오.

    Android 장치의 경우:Android용 Citrix SSO 프로토콜 구성을 참조하십시오.

  2. XenMobile에서 NAC 필터 사용.

  3. NAC 솔루션 구성:

XenMobile에서 NAC 필터 사용

  1. XenMobile 콘솔에서 설정 > 네트워크 액세스 제어로 이동합니다.

    네트워크 액세스 제어 설정의 이미지

  2. 사용하려는 규정 비준수 상태로 설정 필터에 대한 확인란을 선택합니다.

  3. 저장을 클릭합니다.

NAC를 지원하도록 Citrix Gateway 정책 업데이트

VPN 가상 서버에서 고급(클래식 아님) 인증 및 VPN 세션 정책을 구성해야 합니다.

아래의 단계는 다음과 같은 특성의 Citrix Gateway를 업데이트합니다.

  • XenMobile Server 환경과 통합됩니다.
  • 또는 XenMobile Server 환경의 일부가 아닌 VPN용으로 설정되었고 XenMobile에 연결할 수 있습니다.

가상 VPN 서버의 콘솔 창에서 다음을 수행합니다. 명령 및 예제의 IP 주소는 가상의 주소입니다.

  1. VPN 가상 서버에서 클래식 정책을 사용하는 경우 모든 클래식 정책을 제거하고 바인딩 해제합니다. 확인하려면 다음을 입력합니다.

    show vpn vserver <VPN_VServer>

    클래식이라는 단어가 포함된 모든 결과를 제거합니다. 예: VPN Session Policy Name: PL_OS_10.10.1.1 Type: Classic Priority: 0

    정책을 제거하려면 다음을 입력합니다.

    unbind vpn vserver <VPN_VServer> -policy <policy_name>

  2. 다음을 입력하여 해당하는 고급 세션 정책을 만듭니다.

    add vpn sessionPolicy <policy_name> <rule> <session action>

    예: add vpn sessionPolicy vpn_nac true AC_OS_10.10.1.1_A_

  3. 다음을 입력하여 정책을 VPN 가상 서버에 바인딩합니다.

    bind vpn vserver _XM_XenMobileGateway -policy vpn_nac -priority 100

  4. 다음을 입력하여 인증 가상 서버를 만듭니다.

    add authentication vserver <authentication vserver name> <service type> <ip address>

    예: add authentication vserver authvs SSL 0.0.0.0 예제에서 0.0.0.0은 인증 가상 서버가 공개되지 않음을 의미합니다.

  5. 다음을 입력하여 SSL 인증서를 가상 서버에 바인딩합니다.

    bind ssl vserver <authentication vserver name> -certkeyName <Webserver certificate>

    예: bind ssl vserver authvs -certkeyName Star_mpg_citrix.pfx_CERT_KEY

  6. VPN 가상 서버의 인증 가상 서버에 인증 프로필을 연결합니다. 먼저 다음을 입력하여 인증 프로필을 만듭니다.

    add authentication authnProfile <profile name> -authnVsName <authentication vserver name>

    예:

    add authentication authnProfile xm_nac_prof -authnVsName authvs

  7. 다음을 입력하여 인증 프로필을 VPN 가상 서버에 연결합니다.

    set vpn vserver <vpn vserver name> -authnProfile <authn profile name>

    예:

    set vpn vserver _XM_XenMobileGateway -authnProfile xm_nac_prof

  8. 다음을 입력하여 Citrix Gateway에서 장치로의 연결을 확인합니다.

    curl -v -k https://<XenMobile server>:4443/Citrix/Device/v1/Check --header "X-Citrix-VPN-Device-ID: deviceid_<device_id>"

    예를 들어 다음 쿼리는 환경에 등록된 첫 번째 장치(deviceid_1)의 규정 준수 상태를 확인하여 연결을 확인합니다.

    curl -v -k https://10.10.1.1:4443/Citrix/Device/v1/Check --header "X-Citrix-VPN-Device-ID: deviceid_1"

    성공적인 결과는 다음 예제와 유사합니다.

    HTTP/1.1 200 OK
    < Server: Apache-Coyote/1.1
    < X-Citrix-Device-State: Non Compliant
    < Set-Cookie: ACNODEID=181311111;Path=/; HttpOnly; Secure
    <!--NeedCopy-->
    
  9. 이전 단계가 성공하면 XenMobile에 대한 웹 인증 작업을 만듭니다. 먼저 iOS VPN 플러그인에서 장치 ID를 추출하는 정책 식을 만듭니다. 다음을 입력합니다.

    add policy expression xm_deviceid_expression "HTTP.REQ.BODY(10000).TYPECAST_NVLIST_T(\'=\',\'&\').VALUE(\"deviceidvalue\")"

  10. 다음을 입력하여 요청을 XenMobile에 보냅니다. 이 예에서 XenMobile Server IP는 10.207.87.82, FQDN은 example.em.server.com:4443입니다.

    add authentication webAuthAction xm_nac -serverIP 10.207.87.82 -serverPort 4443 -fullReqExpr q{"GET /Citrix/Device/v1/Check HTTP/1.1\r\n" + "Host: example.em.server.com:4443\r\n" + "X-Citrix-VPN-Device-ID: " + xm_deviceid_expression + "\r\n\r\n"} -scheme https -successRule "HTTP.RES.STATUS.EQ(\"200\") &&HTTP.RES.HEADER(\"X-Citrix-Device-State\").EQ(\"Compliant\")"

    XenMobile NAC의 성공적인 출력은 HTTP status 200 OK입니다. X-Citrix-Device-State헤더의 값은 Compliant여야 합니다.

  11. 다음을 입력하여 작업을 연결할 인증 정책을 만듭니다.

    add authentication Policy <policy name> -rule <rule> -action <web authentication action>

    예: add authentication Policy xm_nac_webauth_pol -rule "HTTP.REQ.HEADER(\"User-Agent\").CONTAINS(\"NAC\")" -action xm_nac

  12. 다음을 입력하여 기존 LDAP 정책을 고급 정책으로 변환합니다.

    add authentication Policy <policy_name> -rule <rule> -action <LDAP action name>

    예: add authentication Policy ldap_xm_test_pol -rule true -action 10.10.1.1_LDAP

  13. 다음을 입력하여 LDAP 정책을 연결할 정책 레이블을 추가합니다.

    add authentication policylabel <policy_label_name>

    예: add authentication policylabel ldap_pol_label

  14. 다음을 입력하여 LDAP 정책을 정책 레이블에 연결합니다.

    bind authentication policylabel ldap_pol_label -policyName ldap_xm_test_pol -priority 100 -gotoPriorityExpression NEXT

  15. 준수 장치를 연결하여 NAC 테스트를 수행하고 LDAP 인증에 성공하는지 확인합니다. 다음을 입력합니다.

    bind authentication vserver <authentication vserver> -policy <web authentication policy> -priority 100 -nextFactor <ldap policy label> -gotoPriorityExpression END

  16. 인증 가상 서버에 연결할 UI를 추가합니다. 다음 명령을 입력하여 장치 ID를 검색합니다.

    add authentication loginSchemaPolicy <schema policy>-rule <rule> -action lschema_single_factor_deviceid

  17. 다음을 입력하여 인증 가상 서버를 바인딩합니다.

    bind authentication vserver authvs -policy lschema_xm_nac_pol -priority 100 -gotoPriorityExpression END

  18. LDAP 고급 인증 정책을 만들어 Secure Hub 연결을 사용하도록 설정합니다. 다음을 입력합니다.

    add authentication Policy ldap_xm_test_pol -rule "HTTP.REQ.HEADER(\"User-Agent\").CONTAINS(\"NAC\").NOT" -action 10.200.80.60_LDAP

    bind authentication vserver authvs -policy ldap_xm_test_pol -priority 110 -gotoPriorityExpression NEXT

네트워크 액세스 제어