본문으로 건너뛰기

Java VM

스크립트 하나로 macOS의 모든 Java 키스토어(KeyStore)에 Proxyman Root CA 인증서를 설치하여, Proxyman이 Java 및 Kotlin 앱의 HTTPS 트래픽을 캡처할 수 있도록 합니다.

Java 앱의 HTTPS 트래픽을 가로채려면 Proxyman CA 인증서를 Java KeyStore에 설치하는 추가 단계가 필요합니다. 예를 들어 다음과 같은 작업에 필요합니다:

  • 단위 테스트(Java 또는 Kotlin으로 작성)의 트래픽 가로채기
  • Java 앱 또는 CLI의 트래픽 가로채기

1. 장점​

  • Proxyman은 루트 인증서를 Java KeyStore에 자동으로 설치하는 스크립트를 클릭 한 번으로 실행할 수 있게 제공합니다 ✅
  • $JAVA_HOME을 지원합니다
  • SDKMAN을 지원합니다
  • /usr/libexec/java_home을 지원합니다

2. 사용 방법​

1. Mac에 Proxyman CA 설치​

Java VM에 Proxyman CA를 설치하기 전에, 먼저 Mac에 제대로 설치해야 합니다.

macOS 가이드를 확인하세요:

이미 완료했다면 이 단계는 건너뛰어도 됩니다.

2. 모든 Java 키스토어에 Proxyman CA 설치​

  • Certificate 메뉴 -> Install Certificate on Java VMs -> Run Script...
Install Certificate on Java VMs가 열려 있고 Run Script가 강조된 Proxyman Certificate 메뉴

Java 인증서 스크립트 실행

  • 스크립트는 JAVA_HOME, SDKMAN, $(/usr/libexec/java_home) 중 하나에서 KeyStore 위치를 찾고, 가능하면 CA 인증서를 설치합니다
Java cacerts KeyStore에 인증서를 설치하는 Proxyman Java 스크립트의 터미널 출력

Proxyman이 찾을 수 있는 모든 Java 신뢰 저장소에 인증서를 설치합니다

정보

스크립트는 /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Versions/A/Resources/install-certificates-java.sh에서 찾을 수 있습니다.

정보

Proxyman은 관리자 권한으로 Terminal 앱에서 스크립트를 실행하기 위해 AppleScript를 사용하므로, 스크립트가 자동화 권한을 요청할 수 있습니다.

대안 해결 방법​

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target