- Core/Remote/Relay.cs: WebSocket 스트림, 중계 서버 채널, 권한 티켓 확인, RelayAgent(대상 PC), RelayManager(관리 PC)
- RemoteServer: 티켓 서명·기기·만료 확인, 티켓 권한 밖 요청 거부, 실행한 작업을 서버 감사 로그로 보고
- RemoteClient: 중계 기기 연결 (직접 연결 3초 시도 → 중계 통로 위 TLS), 직접 연결 트래픽 보고
- 초기화면: 권한 있는 중계 기기를 자동으로 묶음 표시, 기기별 [비밀번호]
- 설정: 원격 접속 허용 → 중계 서버 접속(등록 코드), 관리 대상 PC → 중계 서버 로그인(첫 로그인 비밀번호 변경), [서버 관리] 탭
- tests/RelayIntegration: 통합 점검 32개 항목
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013U497kUNL8ArhV7jkzCpKa
- 화면 프레임 전송을 화면 중지 토큰으로 취소하지 않음 (TLS 스트림 손상 방지)
- screenStop/연결 종료/[연결 끊기] 시 표시 막대 즉시 갱신 (EndScreen)
- Passive 수신을 켠 적이 없으면 시작 시 "Passive 수신 중지" 로그 생략
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013U497kUNL8ArhV7jkzCpKa
- 원격관리: PC 제목 줄 [원격관리] → 숫자 6자리 → 원격 화면 창
(모니터 1/2/…/전체, 제어 허용 시 마우스·키보드 바로 전달)
- 대상 PC 설정: 화면 보기 허용 / 제어 허용 / 연결 시 승인 필요, 연결 중 상단 표시줄 + [연결 끊기]
- Passive: 대상 PC가 관리 PC로 접속 (접속 코드로 구분, 끊기면 자동 재접속)
- 관리 대상 PC마다 Active/Passive 선택, Passive 수신 방식·포트, 방화벽 규칙 자동
- 수정: Windows 명령 출력 글자 깨짐(UTF-8/OEM 자동 판별), 대상 목록 표시, 창을 처음 뜰 때 맨 앞으로
- 수정: Passive만 쓸 때 대상 PC 비밀번호가 반영되지 않던 문제
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013U497kUNL8ArhV7jkzCpKa
- 원격 접속 허용(대상): 내장 SSH(2222) 또는 지정 포트 TLS(9988), 접속 비밀번호(PBKDF2)
- 다른 PC 관리(관리): 대상 PC 등록 서비스 목록/상태/Start/Stop/Status/로그 실시간
- 초기화면: 전체 탭(PC별 묶음) + 콤보박스로 PC 탭 추가/닫기, 원격 서비스 앞 IP/hostname
- Start/Stop 숫자 6자리 확인 (설정에서 내 PC/원격 각각 선택)
- 설정 3탭(일반/원격 접속 허용/관리 대상 PC), hostname 자동 등록, 방화벽 자동
- 테스트용 --instance N 중복 실행 (정식 릴리즈 시 삭제)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013U497kUNL8ArhV7jkzCpKa