콘텐츠로 이동
ProxerProxerv0.13.0

proxer http

터널 클라이언트 명령어 레퍼런스입니다.

proxer http <port>는 공개 Proxer 서버에 연결하고, 일치하는 공개 요청을 클라이언트 머신의 127.0.0.1:<port>로 전달합니다.

proxer http 3000 --server wss://your-server.example.com --subdomain demo --token dev-token
  • <port>: 전달할 로컬 HTTP 포트입니다. 이 positional 인자에는 환경변수가 없습니다.
  • --server <url>: Proxer 서버 base URL입니다. ws://, wss://, http://, https://를 사용할 수 있고, HTTP scheme은 내부적으로 WebSocket scheme으로 바뀝니다. path, query, fragment는 넣지 마세요.
  • --subdomain <name>: 선택한 서브도메인 경로를 등록합니다. 생략하면 서버가 임의 서브도메인을 할당합니다. 루트 경로가 필요하고 서버에 --domain이 설정된 경우에만 --subdomain @를 사용하세요.
  • --token <token>: 서버와 일치해야 하는 공유 토큰입니다.
  • --basic-auth-password <password>: 이 터널의 공개 HTTP, SSE, WebSocket 접근에 Basic Auth를 요구합니다.
  • --basic-auth-username <username>: 선택적인 Basic Auth 사용자명입니다. 생략하면 비밀번호만 확인합니다.

--token 또는 PROXER_TOKEN은 필수입니다. 없으면 token is required 오류로 종료됩니다.

  • PROXER_SERVER: --server 기본값.
  • PROXER_SUBDOMAIN: --subdomain 기본값.
  • PROXER_TOKEN: --token 기본값.
  • PROXER_BASIC_AUTH_PASSWORD: --basic-auth-password 기본값.
  • PROXER_BASIC_AUTH_USERNAME: --basic-auth-username 기본값.

CLI flag가 환경변수보다 우선합니다.

비밀번호만 사용하는 모드:

PROXER_BASIC_AUTH_PASSWORD='secret' proxer http 3000 --server wss://proxy.example.com --token dev-token

사용자명과 비밀번호를 모두 요구하는 모드:

PROXER_BASIC_AUTH_USERNAME='admin' \
PROXER_BASIC_AUTH_PASSWORD='secret' \
proxer http 3000 --server wss://proxy.example.com --subdomain demo --token dev-token

실제 배포에서는 환경변수나 secret store를 사용하세요. --basic-auth-password는 shell history나 process list에 남을 수 있습니다. Basic Auth는 proxied site의 공개 접근을 보호하며, 터널 등록에는 여전히 --token 또는 PROXER_TOKEN이 필요합니다. Basic Auth credential은 request header로 전송되므로 HTTPS/WSS를 사용하세요.

자동 할당 서브도메인 경로:

proxer http 3000 --server wss://proxy.example.com --token dev-token

서버가 px-k7m3q9t2ab 같은 임의 서브도메인을 할당하고 클라이언트가 public URL을 출력합니다. 같은 실행 중 재연결이 발생하면 할당된 서브도메인을 계속 사용합니다.

루트 경로:

proxer http 3000 --server wss://proxy.example.com --subdomain @ --token dev-token

proxy.example.com 요청은 로컬 서비스로 전달됩니다. 루트 경로는 서버를 --domain으로 시작했을 때 가장 명확합니다. --domain이 없으면 Proxer는 요청 호스트의 첫 번째 label을 서브도메인 경로로 해석합니다.

서브도메인 경로:

proxer http 3000 --server wss://proxy.example.com --subdomain demo --token dev-token

demo.proxy.example.com 요청은 로컬 서비스로 전달됩니다.

서브도메인은 소문자로 정규화되며 단일 DNS label이어야 합니다. 영문 소문자, 숫자, 하이픈만 가능하고, 하이픈으로 시작하거나 끝날 수 없으며, 최대 63자입니다.

이미 연결된 제어 연결이 끊기면 클라이언트는 재시도하고 서버에 닿으면 다시 등록합니다. 자동 할당된 서브도메인은 같은 클라이언트 실행 중 재연결 후에도 유지됩니다. 초기 연결이 등록 전에 실패하면 명령이 종료될 수 있습니다.