프로젝트 소개
개요
Whistle(발음 /ˈwisəl/)은 Node.js 기반의 크로스 플랫폼 네트워크 패킷 캡처 및 디버깅 도구로 npm 패키지 형태로 배포되며 MIT 라이선스를 따릅니다. README에 명시된 지원 Node.js 버전은 >= 8입니다.
주요 기능
- 패킷 캡처 및 수정: HTTP, HTTPS, HTTP/2, WebSocket, TCP의 패킷 캡처를 지원하며 요청 및 응답 내용을 수정할 수 있습니다.
- 프록시 모드: HTTP, HTTPS, Socks 및 리버스 프록시 등 다양한 프록시 모드를 지원합니다.
- 내장 디버깅 도구: Weinre(원격 DOM 검사), Console(console 로그 확인), Composer(요청 재생 및 편집) 등이 있습니다.
- 규칙 설정: 규칙 설정을 통해 요청/응답을 수정할 수 있습니다.
- 원스톱 관리 인터페이스: 패킷 캡처, 규칙, 플러그인 및 Weinre/Console/Composer 기능을 하나의 인터페이스에서 관리합니다.
- 확장성: 플러그인 방식으로 규칙과 인터페이스 기능을 확장할 수 있으며 NPM 모듈로 프로젝트에서 참조 가능합니다.
- 크로스 플랫폼: macOS, Windows, Linux(Ubuntu/Fedora) 데스크톱 시스템 및 GUI 없는 Linux 서버 환경을 지원합니다.
설치 및 시작
- 데스크톱 사용자는 Whistle 클라이언트(avwo/whistle-client) 사용을 권장하며 수동 설치 및 구성 단계를 생략할 수 있습니다.
- GUI 없는 Linux/서버 환경: Node.js 설치 후 npm i -g whistle 실행; Homebrew로 설치(brew install whistle)도 가능합니다.
- 시작: w2 start
- 루트 인증서 설치(HTTPS 패킷 캡처용): w2 ca. Windows에서는 "예(Y)" 선택, macOS에서는 부팅 비밀번호 또는 Touch ID 입력이 필요할 수 있습니다.
- 프록시 설정: w2 proxy; 주소 지정(w2 proxy "10.x.x.x:8888"), w2 proxy 0으로 시스템 프록시 해제
- 기타 프록시 방법: Chrome 확장 ZeroOmega(브라우저 전환), 브라우저/개발자 도구 내장 프록시 설정(Firefox, WeChat 개발자 도구), Proxifier(Windows/macOS)로 직접 설정 불가 앱 처리
주요 명령어
start(시작), stop(중지), restart(재시작), status(상태 확인), ca(인증서 설치), proxy [host:port](프록시 설정, proxy 0 해제)
문서 및 라이선스
상세 사용 가이드는 공식 문서 https://wproxy.org/docs/getting-started.html 참조; MIT 라이선스 적용(LICENSE 파일 확인)
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.