Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Quais são as diferenças entre a instalação do certificado Charles no macOS e iOS usando o SIMCTL


Quais são as diferenças entre a instalação do certificado Charles no macOS e iOS usando o SIMCTL


O processo de instalação do certificado Charles no MacOS e iOS usando o SIMCTL envolve etapas distintas, refletindo os diferentes ambientes de sistema operacional e seus mecanismos de segurança. Compreender essas diferenças é crucial para configurar corretamente o proxy Charles para depurar o tráfego de rede, especialmente o tráfego HTTPS, em ambos os sistemas.

No MacOS, a instalação do certificado Charles envolve principalmente a integração no chaveiro do sistema e a definição de configurações de confiança. Primeiro, o usuário abre o proxy Charles e, no menu de ajuda, seleciona "SSL proxying"> "Instale o certificado raiz de Charles." Esta ação abre o aplicativo de acesso ao chaveiro com o certificado Charles destacado. O usuário precisa então localizar o certificado no sistema ou no chaveiro de login, clique duas vezes para abrir seus detalhes e definir suas configurações de confiança como "sempre confiar" na seção de confiança. Esta etapa é essencial porque o modelo MacOS Trust requer configurações explícitas de confiança para que os certificados sejam aceitos sem avisos. Depois de fazer essas alterações, o usuário pode precisar reiniciar o navegador ou mesmo o sistema para garantir que a confiança seja reconhecida em todos os aplicativos. Com o certificado confiável, o usuário permite que o SSL proxy no Charles Proxy no menu Proxy, após o qual o sistema está configurado para a interceptação de tráfego HTTPS. Etapas adicionais, como reiniciar o Charles Proxy e o navegador, são recomendadas para finalizar a configuração. A solução de problemas pode envolver a verificação das configurações de confiança ou a reinstalação do certificado se persistirem os problemas.

Por outro lado, a instalação do certificado Charles no iOS, especialmente dentro dos simuladores, envolve um processo diferente que pode ser mais complexo devido às políticas de segurança mais rigorosas do sistema operacional móvel. Usando o SIMCTL, a ferramenta de linha de comando da Apple para gerenciar simuladores, fornece uma maneira de automatizar o processo. Um método envolve a exportação do certificado raiz a partir de Charles e, em seguida, adicioná-lo diretamente ao chaveiro do simulador usando o comando `xcrun simctl Keychain add-root-cert". Essa abordagem permite o gerenciamento automatizado de confiança e evita interações manuais dentro do simulador. Uma alternativa manual envolve o download do certificado de Charles Root do URL `https: // chls.pro/ssl` no safari do simulador e, em seguida, instalando o perfil via configurações gerais> general ou gerenciamento de dispositivos e, finalmente, ativando a confiança total nas configurações de confiança do certificado.

Além disso, a documentação e a comunidade especialista sugerem várias considerações importantes ao trabalhar com simuladores de iOS. Isso inclui garantir que o certificado seja devidamente importado e confiável, lidando com questões em potencial, como a fixação do SSL, que impedem Charles de interceptar o tráfego e reinstalar o certificado se surgirem problemas de confiança. Para dispositivos físicos, o processo envolve a configuração do dispositivo para usar o Charles como um proxy HTTP, navegar no URL fornecido para baixar o certificado e confiar manualmente através de configurações> Geral> Sobre> Configurações de confiança do certificado. O processo nos dispositivos é semelhante, mas geralmente envolve etapas adicionais, como configurar configurações de proxy e confiar explicitamente no certificado, o que é necessário porque o iOS aplica a validação rigorosa do certificado SSL.

As principais diferenças entre a instalação do certificado Charles em macOS e iOS usando o SIMCTL estão centradas em torno:
- Método de instalação do certificado: o MacOS depende da importação manual para a configuração de acesso e confiança do teclado, enquanto que nos simuladores iOS, o processo pode ser automatizado via SIMCTL ou manual via Safari e configurações, com o último exigindo ajustes de confiança.
- Configuração de confiança: o MacOS requer configurações explícitas de confiança no chaveiro do sistema. Nos simuladores do iOS, a confiança pode ser programada via SIMCTL ou através das configurações de confiança no perfil do dispositivo e, para dispositivos físicos, as configurações de confiança são gerenciadas por meio de configurações de gerenciamento de dispositivos.
- Recursos de automação: o SIMCTL permite que os simuladores de script e automação para iOS, permitindo que os certificados sejam adicionados e confiáveis ​​sem interações manuais da GUI, o que não é possível no macOS, pois envolve modificações manuais de chaveiro.
- Políticas de segurança: as políticas de segurança do iOS são mais rigorosas, especialmente em dispositivos de produção, exigindo que os certificados sejam explicitamente confiáveis ​​para que o https completo e a interceptação SSL funcione corretamente. O MacOS, embora também seguro, fornece mais flexibilidade em confiar em certificados via gerenciamento de chaveiros do sistema.

O objetivo geral dos dois ambientes é estabelecer um certificado de raiz confiável que permita que o proxy de Charles descriptografar o tráfego HTTPS para depuração. A abordagem no MacOS enfatiza a configuração de confiança manual no acesso do chaveiro, enquanto nos simuladores do iOS, o foco está em alavancar comandos SIMCTL ou gerenciamento de confiança baseado em perfil, com considerações adicionais para as políticas de fixação e segurança de dispositivos SSL.

Ambos os métodos requerem verificação cuidadosa para garantir que o certificado seja instalado corretamente e confiável, permitindo a interceptação HTTPS perfeita no Charles Proxy para depuração e inspeção eficazes do tráfego de rede no macOS, simuladores iOS ou dispositivos reais.