Charles란??
웹 디버깅 프록시 프로그램으로 HTTP 프록시 / HTTP 모니터링 / 역방향 프록시로서 개발자가 자신의 기기의 모든 HTTP 및 SSL / HTTPS 트래픽을 볼 수 있도록 합니다. 여기에는 Request / Response 및 HTTP 헤더 (쿠키 및 캐싱 정보 포함)가 포함됩니다.
Charles 설치하기
https://www.charlesproxy.com/download/ 에서 다운 받아 설치 가능합니다.
무료 버전은 30분간 사용가능하며, 개인사용 라이센스 구입시 50달러(약 5만원)의 비용이 들긴 하지만 5만원으로 50만원을 벌면됩니다. 여러분의 시간은 소중하니까요 하하
Mac OS X 의 경우 Proxy 설정을 해줘야 합니다.
- 키체인 접근 설정에서 Charles Proxy 인증서 더블 클릭
- 신뢰를 클릭
- 이 인증서 사용시 항상 신뢰로 설정
안드로이드와 Charles Proxy 연결하기
Charles는 Proxy 호스트입니다. 안드로이드에서는 이제 네트워킹을 Charles를 통해 할 것입니다.
그러기 위해서는 우선 사용하는 PC와 안드로이드기기가 같은 LAN에 있게 Wi-Fi를 설정해주어야 합니다. 그런 다음 아래의 내용을 따라하시면 됩니다. (일단은 삼성폰 기준..)
- 안드로이드에서 설정 – Wi-Fi 옵션을 선택한다
- 현재 연결된 Wi-Fi을 롱클릭 선택하여 네트워크를 설정 관리 할 수 있는 화면으로 진입한다.
- 고급 옵션 표시를 눌러서 프록시 옵션을 수동으로 조작한다.
- 프록시 호스트 이름을 PC의 IP주소값을 입력한다.
- 포트는 기본포트인 8888을 적는다.
Charles 사용하기
이제 안드로이드 기기에서 네트워크 HTTP/HTTPS의 요청/응답이 이루어지면 모든 기록이 Charles에 남게 됩니다. HTTP의 경우 전문이 다 나오지만 HTTPS의 경우 데이터가 모두 암호화 되어있어 깨져 보이게 됩니다.
SSL Proxy Setting 하기
- Charles에서 Proxy -> SSL Proxy Settings… 메뉴 클릭하기
- Enable SSL Proxying 체크
- Locations에는 디버깅 하고자 하는 도메인과 포트를 입력하면 됩니다. 모두 디버깅 하려면 * 입력 합니다.
- Ok 클릭
이제 안드로이드에 인증서를 추가 해야합니다.
- 안드로이드 웹브라우저를 엽니다.
- Charles 프록시가 연결된 상태에서 http://charlesproxy.com/getssl을 접속합니다.
- 인증서가 자동으로 다운로드 됩니다.
- 다운로드된 인증서 파일을 실행합니다.
- 인증서이름을 입력하고 확인버튼을 누릅니다.(아무렇게나 적어도 됩니다)
- 기기에 잠금이 설정되어있지 않다면 잠금설정을 하도록 합니다.
- HTTPS의 요청/응답사항이 평문으로 나오는지 확인합니다.
“CA 인증서를 설치할 수 없음” 이라고 메시지가 뜨는 경우, 설정 > 생체인식 및 보안 > 기타 보안 설정 > 기기에 저장된 인증서 설치 > CA 인증서로 이동하여 수동으로 설치 할 수 있다.
0개의 댓글