# CLIProxyAPI 역방향 프록시 & HTTPS 설정 가이드 외부에서 `https://cliproxy.gru.farm`으로 CLIProxyAPI에 접근하기 위한 설정입니다. ## 1단계: DNS 레코드 추가 hostcocoa.com DNS 관리에서 A 레코드를 추가합니다. | 타입 | 호스트 | 값 | |------|--------|-----| | A | cliproxy | 125.188.185.74 | > 기존 `nas.gru.farm`, `haesol.gru.farm` 등과 같은 IP입니다. ## 2단계: Synology DSM 역방향 프록시 설정 1. DSM 웹 UI 접속 (보통 `https://nas.gru.farm:5001`) 2. **제어판** → **로그인 포털** → **고급** 탭 → **역방향 프록시** 클릭 3. **생성** 버튼 클릭 4. 아래와 같이 입력: ### 일반 설정 | 항목 | 값 | |------|-----| | 설명 | `CLIProxyAPI` | | **소스 (프론트엔드)** | | | 프로토콜 | `HTTPS` | | 호스트 이름 | `cliproxy.gru.farm` | | 포트 | `443` | | HSTS | 비활성화 | | **대상 (백엔드)** | | | 프로토콜 | `HTTP` | | 호스트 이름 | `localhost` | | 포트 | `8317` | ### 사용자 지정 헤더 (선택) 필요 시 WebSocket 지원을 위해 사용자 지정 헤더 추가: - `Upgrade` → `$http_upgrade` - `Connection` → `$connection_upgrade` ### 타임아웃 설정 AI 요청은 응답이 오래 걸릴 수 있으므로 타임아웃을 늘려주세요: - 연결 타임아웃: `600` - 전송 타임아웃: `600` - 수신 타임아웃: `600` 5. **저장** 클릭 ## 3단계: SSL 인증서 설정 Synology DSM에서 `cliproxy.gru.farm` 용 SSL 인증서를 설정합니다. ### Let's Encrypt 인증서 발급 (권장) 1. **제어판** → **보안** → **인증서** 탭 2. **추가** → **새 인증서 추가** → **Let's Encrypt에서 인증서 가져오기** 3. 도메인: `cliproxy.gru.farm` 4. 이메일: 본인 이메일 5. 발급 완료 후, **설정** 버튼 클릭 6. `cliproxy.gru.farm` 역방향 프록시 항목에 방금 발급한 인증서 선택 ### 기존 와일드카드 인증서가 있는 경우 `*.gru.farm` 와일드카드 인증서가 있다면 별도 발급 없이 해당 인증서를 선택하면 됩니다. ## 4단계: 공유기 포트 포워딩 공유기에서 443 포트가 NAS(192.168.0.17)로 포워딩되어 있는지 확인합니다. > 기존 `haesol.gru.farm` 등이 HTTPS로 동작 중이라면 이미 설정되어 있을 가능성이 높습니다. | 외부 포트 | 내부 IP | 내부 포트 | 프로토콜 | |-----------|---------|-----------|----------| | 443 | 192.168.0.17 | 443 | TCP | ## 5단계: 확인 ```bash # DNS 전파 확인 dig +short cliproxy.gru.farm # 125.188.185.74 가 나오면 성공 # HTTPS 접속 테스트 curl https://cliproxy.gru.farm/ # {"endpoints":[...],"message":"CLI Proxy API Server"} # 모델 목록 확인 curl -H "Authorization: Bearer Jinie4eva!" https://cliproxy.gru.farm/v1/models ``` ## 클라이언트 연결 (외부) ```bash # Claude Code export ANTHROPIC_BASE_URL=https://cliproxy.gru.farm export ANTHROPIC_API_KEY=Jinie4eva! # OpenAI 호환 export OPENAI_BASE_URL=https://cliproxy.gru.farm/v1 export OPENAI_API_KEY=Jinie4eva! ```