프로젝트 소개
rustdesk-server-starry는 공식 rustdesk/rustdesk-server 프로젝트의 비공식 커뮤니티 유지 오버레이입니다. HBBS(ID/신호 서버)에 초점을 맞추며 정책 기반 릴레이 선택과 인증된 클라이언트 전송 호환성을 추가하지만, 업스트림 소스의 영구 분기 포크는 피합니다.
오버레이 작동 방식
각 빌드는 정확한 공식 RustDesk Server 리비전에서 시작합니다. scripts/apply_overlay.py 스크립트는 고정 소스 앵커를 검증하고 Starry 모듈을 주입하며 멱등성을 갖도록 설계되었습니다. 두 번째 적용 시 추가 변경이 발생하지 않아야 합니다. 업스트림 구조 변경으로 앵커나 테스트가 무효화되면 부분 패치 서버를 배포하는 대신 게시가 중단됩니다.
README에 설명된 기능
- 양쪽 엔드포인트의 국가, 도시, 하위 구역, ASN, ISP 정보를 사용한 순서 지정 릴레이 선택.
- 검증된 MMDB 다운로드, 교체, 보존, 예약 업데이트.
- RustDesk 클라이언트 호환 Secure TCP 협상 및 네이티브 HBBS TCP 21116에서의 암호화 전송.
- /ws/id에서 선택적 영구 WebSocket 신호, WSS-to-WSS 및 WSS-to-네이티브 릴레이 세션 포함.
- 인증서 검증 /ws/relay 상태 필터링.
- Akari 전용 후보 릴레이 활성 프로빙, 양방향 RTT/지터/손실 및 신뢰된 HBBR 부하 점수, 접두사 캐시 히스테리시스, 레거시 단일 릴레이 폴백.
- 기본 꺼짐, 단기 Ed25519 인증(Akari FastCompat 및 역할 바인딩 FastMediaV1용), 별도 감독 HBBR AKR1 UDP 데이터 플레인.
- Akari용 세대 안전 프로필 활성화 임대, 일치 Ready ACK, 명시적 현재 임대 비활성화, 제한된 검증 빠른 재등록, 공식 클라이언트 호환 기본값 포함.
- 스키마 v5 마지막 알려진 양호 활성화, 세대, 다이제스트, 동기 하위 시스템 확인 포함.
- 선택적 엄격 Ed25519 연결 JWT 감사/강제(PunchHoleRequest 및 직접 RequestRelay, 네이티브 TCP, Secure TCP, WSS; UDP 시작은 명시적으로 미지원).
- SP1 제어 에이전트/릴레이 부트스트랩, 제한된 릴레이 등록, 영구 ID, 부작용 없는 v5-to-v4 다운그레이드 내보내기.
- 불변 릴레이 스냅샷, 부작용 없는 할당 시뮬레이션, mTLS, 범위 서비스 JWT, 원자적 구성 트랜잭션으로 보호되는 별도 Linux 제어 에이전트.
구성 요소 경계
- HBBS: 오버레이로 수정됨. Starry hbbs 바이너리 또는 이미지 명령 실행.
- HBBR: 신뢰할 수 있는 릴레이 및 선택적 AKR1 UDP. 업스트림 TCP/WS 바이트 전달 경로 유지, 부하 없이 공개 품질 프로브 응답, 인증된 텔레메트리를 통해서만 상세 상태 노출, 역할 바인딩 승인 후 선택적으로 암호화된 Akari AKF1 데이터그램 라우팅.
- 제어 에이전트: 선택적 Starry 구성 요소, v1.3에서 Linux 전용. HBBS 로컬 제어를 루프백에 유지하고 에이전트를 mTLS 및 범위 서비스 JWT가 있는 개인 관리 경로에만 노출. 구성 쓰기는 기본적으로 비활성화.
- 계정/API 서버: 포함되지 않음. 계정 로그인, 주소록, 장치 데이터, 관리는 별도 선택 API 구현 필요.
README는 계정 API 로그인, HBBS 신호 연결, 선택적 Starry 제어 API, HBBR 데이터 경로가 별도 프로토콜 계층임을 강조합니다. Starry는 타사 API를 릴레이로 전환하지 않으며 RustDesk 클라이언트를 대체하지 않습니다. 선택적 FastMedia UDP 리스너는 항상 신뢰할 수 있는 폴백으로 남는 일반 HBBR 스트림과 독립적입니다.
릴리스 상태
현재 개발 릴리스는 패치-v1.3.1 미리보기입니다. Docker 이미지는 ghcr.io/q1ngyang/rustdesk-server-starry에 게시됩니다. 후보 매트릭스는 Docker linux/amd64 및 Linux x86_64 바이너리와 amd64 DEB 패키지입니다. ARM은 최선 노력 소스 호환성, Windows는 실험적 비차단 빌드이며 둘 다 약속된 v1.3.1 산출물이 아닙니다. 미리보기는 옵트인이며 두 Fast 스위치를 기본적으로 꺼두고 GitHub 사전 릴리스 및 롤링 미리보기 이미지로만 게시됩니다. 안정 승인은 여전히 종단 간 FastMedia 및 실제 장치 릴리스 게이트가 필요합니다.
문서
영어가 기본 문서 언어이며 모든 내러티브 가이드에 간체 중국어 대응이 있습니다. 복사 준비 구성 및 오케스트레이션 파일은 두 언어로 공유됩니다. 분류 문서 색인은 로컬 소스, 컨테이너 매뉴얼, 릴리스 노트, 기술 참조를 다룹니다. 가이드에는 시작하기, Docker 이미지 사용, Docker 배포, 네이티브 배포, 다중 노드 배포, 역방향 프록시 및 TLS, 클라이언트 구성, 계정/API 통합, 구성 참조, 연결 인증, 제어 에이전트, 프로필 활성화 임대 v1, Fast 릴레이 인증 v1, FastMedia 릴레이 UDP v1, Starry 페어링 v1, GEO 규칙 기초 및 고급, 운영 및 검증, 문제 해결, 업그레이드 및 롤백, 아키텍처 및 빌드가 포함됩니다.
라이선스 및 면책 조항
공식 RustDesk Server 소스와 Starry 오버레이는 GNU Affero General Public License v3.0으로 배포됩니다. 게시된 바이너리와 이미지는 해당 고정 업스트림 리비전과 이 오버레이로 빌드됩니다. 프로젝트는 RustDesk, MaxMind, MMDB 미러 제공자 또는 AI 서비스 제공자와 제휴하거나 보증하지 않는다고 명시합니다. 이미지에는 GeoLite2 데이터베이스가 포함되지 않으며 운영자는 합법적이고 신뢰할 수 있는 데이터 소스를 선택하고 라이선스를 준수해야 합니다. 코드 및 문서의 일부는 AI 지원으로 생성 또는 수정되었으며 추가 보증 없이 동일한 프로젝트 라이선스가 적용됩니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.