Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon simctl을 사용하여 MacOS 및 iOS에 Charles 인증서 설치의 차이점은 무엇입니까?


simctl을 사용하여 MacOS 및 iOS에 Charles 인증서 설치의 차이점은 무엇입니까?


SIMCTL을 사용하여 MACOS 및 iOS에 Charles 인증서를 설치하는 프로세스에는 다양한 운영 체제 환경과 보안 메커니즘을 반영하는 뚜렷한 단계가 포함됩니다. 이러한 차이를 이해하는 것은 두 시스템에서 네트워크 트래픽, 특히 HTTPS 트래픽을 디버깅하기위한 Charles 프록시를 올바르게 구성하는 데 중요합니다.

MACOS에서 Charles 인증서 설치에는 주로 시스템 키 체인에 통합 및 신뢰 설정 구성이 포함됩니다. 먼저, 사용자는 Charles Proxy를 열고 도움말 메뉴에서 "SSL 프록시"> "Charles Root 인증서 설치"를 선택합니다. 이 작업은 Charles 인증서가 강조 표시된 Keychain Access 앱을 열어줍니다. 그런 다음 사용자는 시스템 또는 로그인 키 체인 내에서 인증서를 찾아서 두 번 클릭하여 세부 사항을 열고 신뢰 설정을 신뢰 섹션의 "항상 신뢰"로 설정해야합니다. MacOS Trust 모델은 인증서를 경고없이 수락 할 수있는 명백한 신뢰 설정이 필요하기 때문에이 단계는 필수적입니다. 이러한 변경 후 사용자는 모든 응용 프로그램에서 신뢰를 인식 할 수 있도록 브라우저 또는 시스템을 다시 시작해야 할 수도 있습니다. 인증서를 신뢰할 때 사용자는 프록시 메뉴에서 Charles 프록시에서 SSL 프록시를 활성화 한 후 시스템은 HTTPS 트래픽 가로 채기를 위해 구성됩니다. 찰스 프록시 재시작 및 브라우저와 같은 추가 단계는 설정을 마무리하는 것이 좋습니다. 문제 해결에는 신뢰 설정을 확인하거나 문제가 지속되면 인증서를 다시 설치하는 것이 포함될 수 있습니다.

대조적으로, iOS, 특히 시뮬레이터 내에 Charles 인증서를 설치하려면 모바일 운영 체제의 엄격한 보안 정책으로 인해 더 복잡 할 수있는 다른 프로세스가 포함됩니다. SIMCTL을 사용하여 Simulator를 관리하기위한 Apple의 명령 줄 도구는 프로세스를 자동화하는 방법을 제공합니다. 한 가지 방법은 Charles에서 루트 인증서를 내보낸 다음`xcrun simctl keychain boot addroot-cert`를 사용하여 Simulator의 키 체인에 직접 추가하는 것입니다. 이 접근법은 자동화 된 신뢰 관리를 허용하고 시뮬레이터 내에서 수동 상호 작용을 피합니다. 수동 대안은 Simulator 's Safari에서 URL`https : // chls.pro/ssl`에서 Charles 루트 인증서를 다운로드 한 다음 설정> 일반> 프로파일 또는 장치 관리를 통해 프로필을 설치하고 인증서 신탁 설정에 대한 완전한 신뢰를 가능하게하는 것입니다.

또한, 문서와 전문가 커뮤니티는 iOS 시뮬레이터와 함께 작업 할 때 몇 가지 중요한 고려 사항을 제안합니다. 여기에는 인증서가 올바르게 가져오고 신뢰할 수 있도록, Charles가 트래픽을 가로 채지 못하게하는 SSL Pinning과 같은 잠재적 문제를 처리하고 신뢰 문제가 발생하면 인증서를 다시 설치하는 것이 포함됩니다. 물리적 장치의 경우 프로세스에는 찰스를 HTTP 프록시로 사용하도록 장치를 구성하고 제공된 URL을 탐색하여 인증서를 다운로드하고 설정> 일반> 거의> 인증서 신탁 설정을 통해 수동으로 신뢰합니다. 장치의 프로세스는 비슷하지만 프록시 구성을 설정하고 인증서를 명시 적으로 신뢰하는 것과 같은 추가 단계가 포함되며, IOS는 엄격한 SSL 인증서 유효성 검사를 강화하기 때문에 필요합니다.

SIMCTL을 사용하여 MACOS 및 iOS에 Charles 인증서 설치의 주요 차이점은 다음과 같습니다.
- 인증서 설치 방법 : MACOS는 키 체인 액세스 및 신뢰 구성으로 수동 가져 오기에 의존하는 반면 iOS 시뮬레이터에서는 SIMCTL 또는 매뉴얼을 통해 SAFARI 및 설정을 통해 신뢰 조정이 필요한 프로세스를 자동화 할 수 있습니다.
- 신뢰 구성 : MACOS는 시스템 키 체인에서 명백한 신뢰 설정이 필요합니다. iOS 시뮬레이터에서 신뢰는 SIMCTL 또는 장치 프로필의 신뢰 설정을 통해 프로그래밍 할 수 있으며 물리적 장치의 경우 신뢰 설정은 장치 관리 설정을 통해 관리됩니다.
- 자동화 기능 : SIMCTL을 사용하면 iOS 시뮬레이터에 대한 스크립팅 및 자동화가 가능하므로 수동 GUI 상호 작용없이 인증서를 추가하고 신뢰할 수 있습니다. 수동 키 체인 수정이 포함되어 있기 때문에 MACOS에서는 불가능합니다.
- 보안 정책 : iOS의 보안 정책은 특히 생산 장치에서 더욱 엄격하며, 전체 HTTPS 프록시 및 SSL 차단을 제대로 작동하도록 인증서를 명시 적으로 신뢰해야합니다. MacOS는 안전하지만 시스템 키 체인 관리를 통해 인증서를 신뢰하는 데 더 많은 유연성을 제공합니다.

두 환경의 전체 목표는 Charles Proxy가 디버깅을 위해 HTTPS 트래픽을 해독 할 수있는 신뢰할 수있는 루트 인증서를 설정하는 것입니다. MACOS에 대한 접근 방식은 Keychain Access의 수동 신뢰 구성을 강조하는 반면 iOS 시뮬레이터에서는 SIMCTL 명령 또는 프로필 기반 신뢰 관리를 활용하는 데 중점을두고 SSL 고정 및 장치 보안 정책에 대한 추가 고려 사항에 중점을 둡니다.

두 가지 방법 모두 인증서를 올바르게 설치하고 신뢰할 수 있도록 신중한 검증이 필요하므로 Charles 프록시에서 매끄러운 HTTPS 차단을 가능하게합니다.