보다 엄격한 보안 요구 사항에 대비하여 네트워크 환경 준비
Apple 운영 체제에서는 시스템 프로세스에 대해 더 엄격한 네트워크 보안을 요구합니다. 서버 연결이 새로운 요구 사항을 충족하는지 확인합니다.
이 문서는 IT 관리자 및 기기 관리 서비스 개발자를 대상으로 합니다.
다음 주요 소프트퉤어 릴리스부터 Apple 운영 체제(iOS, iPadOS, macOS, watchOS, tvOS, 및 visionOS)에서 추가 네트워크 보안 요구 사항으로 인해 오래되었거나 호환되지 않는 TLS 구성을 사용하는 서버에 대한 연결을 거부할 수 있습니다.
환경을 감사하여 이러한 요구 사항을 충족하지 않는 서버를 식별해야 합니다. 이러한 요구 사항을 충족하기 위해 서버 구성을 업데이트하려면 특히 외부 공급업체에서 유지 관리하는 서버의 경우 상당한 시간이 소요될 수 있습니다.
영향을 받는 연결 및 구성 요구 사항
새로운 요구 사항은 다음 활동과 직접적으로 관련된 네트워크 연결에 적용됩니다.
MDM(모바일 기기 관리)
선언적 기기 관리(DDM)
자동 기기 등록
구성 프로파일 설치
기업 앱 배포를 포함한 앱 설치
소프트웨어 업데이트
예외: SCEP 서버에 대한 네트워크 연결(구성 프로파일을 설치하거나 DDM 자산을 확인하는 동안) 및 콘텐츠 캐싱 서버(앱 설치 또는 소프트웨어 업데이트와 관련된 자산을 요청하는 경우에도)는 영향을 받지 않습니다.
요구 사항: 서버는 TLS 1.2 및 이후 버전을 지원하고, ATS 호환 ciphersuite를 사용하고, ATS 표준을 충족하는 유효한 인증서를 제공해야 합니다. 전체 네트워크 보안 요구 사항은 개발자 문서를 참조하십시오.
규정 준수 위반에 대한 환경 감사
테스트 기기를 사용하여 사용자 환경에서 새로운 TLS 요구 사항을 충족하지 않는 서버 연결을 식별합니다.
테스트 보증 계획하기
서로 다른 기기 구성은 서로 다른 서버에 연결될 수 있습니다. 감사가 완전히 적용되는지 확인하려면 환경에 적용되는 모든 구성을 테스트합니다.
환경: 프로덕션, 스테이징, 테스트
기기 유형: iPhone, iPad, Mac, Apple Watch, Apple TV, Apple Vision Pro
역할: 사용자 그룹(판매, 엔지니어링, 회계), 키오스크 기기, 공유 기기
등록 유형: 자동 기기 등록, 계정 기반 등록, 프로파일 기반 기기 등록, 공유 iPad
다른 서버에 연결하는 각 구성에 대해 다음 감사 단계를 반복합니다.
네트워크 진단 로깅 프로파일 설치
로그 기록을 활성화하려면 iOS 26.4, iPadOS 26.4, macOS 26.4, watchOS 26.4, tvOS 26.4 또는 visionOS 26.4 및 이후 버전을 실행 중인 대표 테스트 기기에 네트워크 진단 로그 기록 프로파일을 다운로드하여 설치합니다. 프로파일을 설치한 후 테스트 기기를 재시동합니다.
로그 이벤트에 비규격 연결을 식별하는 데 필요한 세부 정보가 포함되도록 하려면 테스트를 수행하기 전에 이 프로파일을 설치해야 합니다. iPhone 또는 iPad에서 자동 기기 등록을 테스트하는 경우 기기가 설정 지원의 기기 관리 패널에 도달하기 전에 Mac용 Apple Configurator를 사용하여 프로파일을 설치합니다.
일반 작업 흐름 실행하기
환경에서 평소대로 테스트 기기를 사용합니다. 기기 관리에 등록하고, 앱 및 프로파일을 설치하고, 조직의 서버에 연결하는 다른 작업 흐름을 수행합니다.
목표는 새로운 TLS 요구 사항의 영향을 받을 수 있는 모든 서버에 대한 네트워크 트래픽을 생성하는 것입니다.
sysdiagnose 수집하기
작업 흐름을 실행한 후 테스트 기기에서 sysdiagnose를 수집합니다. 이 진단 아카이브에는 비준수 연결을 식별하는 데 필요한 로그 이벤트가 포함되어 있습니다.
로그 검토하기
sysdiagnose를 Mac으로 전송하고 .tar.gz 파일을 확장합니다. 터미널을 사용하여 확장된 sysdiagnose 내의 최상위 디렉토리로 이동하고 다음 명령을 사용하여 관련 로그 이벤트를 필터링합니다.
log show --archive system_logs.logarchive --info -P "p=appstoreagent|appstored|managedappdistributionagent|managedappdistributiond|ManagedClient|ManagedClientAgent|mdmclient|mdmd|mdmuserd|MuseBuddyApp|NanoSettings|Preferences|profiled|profiles|RemoteManagementAgent|remotemanagementd|Setup|'Setup Assistant'|'System Settings'|teslad|TVSettings|TVSetup|XPCAcmeService AND s=com.apple.network AND m:'ATS Violation'|'ATS FCPv2.1 violation'"
각 로그 이벤트에는 다음과 같은 세 가지 주요 세부 정보가 포함되어 있습니다.
도메인: 이 연결 이벤트의 서버 도메인입니다.
프로세스: 생성한 프로세스로, 해당 도메인에 대한 네트워크 연결 목적을 확인하는 데 도움이 됩니다.
경고: 연결에 의해 침해된 제약 조건과 서버가 규정을 준수하지 않는 방식(서버가 여러 요구 사항을 충족하지 않는 경우 단일 연결에서 여러 경고를 표시할 수 있음).
경고 로그 해석하기
다음 로그 메시지는 새로운 TLS 요구 사항을 충족하지 않는 서버를 나타냅니다. 위반은 일반 ATS 정책 위반('Warning [ATS Violation]') 또는 특정 FCP v2.1 표준 위반('Warning [ATS FCPv2.1 violation]')으로 표시됩니다.
이러한 로그가 기업 전용 서버에 연결하는 프로세스에 의해 생성되는 경우 새로운 요구 사항에 맞게 서버를 업데이트해야 합니다.
로그 메시지 | 의미 | 시정 조치 |
|---|---|---|
Warning [ATS violation]: Ciphersuite([negotiated ciphersuite]) not offered in ATS negotiated for server: www.example.com | 서버에서 클라이언트가 ATS를 적용할 때 제공되지 않는 비 PFS 암ciphersuite를 협상했습니다. | 서버는 PFS ciphersuite(모든 TLS 1.3 ciphersuite 및 ECDHE가 포함된 TLS 1.2 ciphersuite)를 지원해야 합니다. |
Warning [ATS violation]: TLS version <1.2 negotiated for server: www.example.com | 서버에서 TLS 1.2 이전 버전의 TLS를 협상했습니다. TLS 1.0/1.1은 더 이상 사용되지 않으며 이미 기본적으로 제공되지 않습니다. | 가능한 경우 TLS 1.3을 협상하도록 서버를 업데이트합니다(최소 TLS 1.2). |
Warning [ATS Violation]: ATS certificate trust requirement not satisfied for server: www.example.com | 서버의 인증서가 여기에 설명된 최소 요구 사항을 충족하지 못했기 때문에 기본 서버 신뢰 평가를 통과하지 못했습니다. | 이러한 요구 사항에 맞게 서버의 인증서를 업데이트하십시오. 인증서가 자동 등록 프로파일 앵커 인증서에 있는 경우 시정 조치가 필요하지 않습니다. |
Warning [ATS violation]: RSA key size [n] bits is less than minimum 2048 bits for server: www.example.com | 서버의 인증서가 2048비트보다 작은 RSA 키로 서명되었습니다. | 이러한 요구 사항에 맞게 서버의 인증서를 업데이트하십시오. |
Warning [ATS violation]: ECDSA key size [n] bits is less than minimum 256 bits for server: www.example.com | 서버의 인증서가 256비트보다 작은 ECDSA 키로 서명되었습니다. | |
Warning [ATS violation]: Leaf certificate hash algorithm (n) is not at least SHA-256 for server: www.example.com | 서버의 인증서에서 다이제스트 길이가 256비트 이상인 SHA-2(Secure Hash Algorithm 2)를 사용하지 않았습니다. | |
Warning [ATS violation]: Did not use TLS when opening connection for server: www.example.com | HTTPS 대신 일반 텍스트 HTTP가 사용되었습니다. | HTTPS를 지원하도록 서버를 업데이트합니다. |
Warning [ATS FCPv2.1 violation]: Signature algorithm rsa_pkcs15_sha1 negotiated by server: www.example.com | 서버에서 signature_algorithm으로 rsa_pkcs15_sha1을 선택했습니다. | 최신 서명 알고리즘을 선호하도록 구성을 업데이트합니다. |
Warning [ATS FCPv2.1 violation]: Server certificate signed using signature algorithm [signature algorithm] not advertised in ClientHello for server: www.example.com | 서버의 인증서가 ClientHello에 광고되지 않은 서명 알고리즘을 사용하여 서명되었습니다. | rsa_pkcs15_sha1이 아닌 TLS 코드 포인트를 가진 서명 알고리즘을 사용하여 서명할 서버의 인증서를 업데이트합니다. |
Warning [ATS FCPv2.1 violation]: TLS 1.2 negotiated without extended master secret (EMS) for server: www.example.com | 서버가 TLS 1.2를 협상했으나 확장된 마스터 시크릿(EMS) 확장은 협상되지 않음 | 서버를 업데이트하여 TLS 1.3을 사용하거나 최소한 TLS 1.2 구성을 업데이트하여 EMS를 협상하십시오. |
개별 서버 확인
감사에서 비준수 서버를 식별한 후 개별적으로 테스트하여 특정 위반 사항을 확인하거나 시정 조치가 성공했는지 확인할 수 있습니다.
다음 명령을 실행하여 'https://example.com:8000'을 서버 또는 끝점으로 대체합니다.
nscurl https://example.com:8000 --ats-diagnostics --verbose
이 명령은 서버가 다양한 ATS 정책 조합에 대한 요구 사항을 충족하는지 테스트합니다. FCP_v2.1 모드가 활성화된 ATS를 사용하여 테스트 결과를 찾습니다.
NIAP TLS 패키지 버전 요구 사항 구성
---
FCP_v2.1
ATS 사전:
{
NSRequiresNIAPTLSPackageVersion = "fcp_v2.1";
}
결과 : 통과
---
결과가 '통과'이면 서버가 모든 요구 사항을 충족합니다.
차단된 연결의 출처를 식별하는 방법에 대해 자세히 알아보기
시정 조치
영향을 받는 서버의 소유자와 협력하여 TLS 구성을 업데이트합니다. 서버 소유자는 내부, 기기 관리 서비스 또는 타사 공급업체일 수 있습니다.
서버 소유자에게 시정 조치를 요청할 때 이 문서와 확인된 특정 경고 메시지를 함께 공유합니다.
시정 조치에는 다음이 포함될 수 있습니다.
TLS 1.2 및 이후 버전을 지원하도록 서버 업데이트(TLS 1.3 권장)
TLS 1.2만 지원하는 서버의 경우, 최소한 완벽한 전달 보안을 제공하는 키 교환 알고리즘(ECDHE), SHA-256, SHA-384 또는 SHA-512 기반의 AES-GCM AEAD ciphersuite, 그리고 확장된 마스터 시크릿(EMS) 확장(RFC 7627)을 지원해야 합니다.
키 크기, 서명 알고리즘 및 유효성에 대한 ATS 요구 사항을 충족하도록 인증서를 업데이트합니다.
추가 리소스
추가 지원이 필요한 경우 Apple 기술 계정 관리자 또는 Apple Enterprise 지원에 문의하십시오.