rdp-cli

rdp-cli의 Mac VNC 인증 오류 해결

인증 실패가 항상 잘못된 암호 때문은 아닙니다. macOS 화면 공유의 Mac 계정과 별도 VNC 암호는 서로 다른 방식입니다. rdp-cli 0.1.1은 Apple ARD와 RFB 003.889를 지원합니다.

Mac과 클라이언트 확인

대상 Mac의 시스템 설정(구형은 시스템 환경설정)에서 공유를 열고 화면 공유와 허용 사용자를 확인하세요. 원격 관리가 사용 중이면 해당 권한을 확인하고 서비스를 임의로 바꾸지 마세요. Apple 안내를 참고하세요. 클라이언트에 0.1.1 이상 설치 후 connect --help에 ard가 있는지 확인합니다.

암호 방식 선택

Mac 계정: 대상 Mac의 계정 이름·로그인 암호로 --user MAC_USER --vnc-security ard를 사용합니다. Apple 계정 로그인이 아닙니다.

별도 VNC 암호: VNC 뷰어용 암호를 사용하고 --user 없이 --vnc-security vnc-auth를 지정합니다. 기존 8바이트 제한은 ARD에 적용되지 않습니다. ARD는 이름과 암호 각각 최대 63 UTF-8 바이트입니다.

Mac 계정으로 연결

192.0.2.20, MAC_USER를 바꿔 macOS/Linux의 Bash에서 실행하세요.

IFS= read -r -s -p 'Password: ' mac_password
printf '\n'
printf '%s' "$mac_password" | rdp-cli connect --protocol vnc --host 192.0.2.20 --user MAC_USER --vnc-security ard --password-stdin
unset mac_password

Windows에서는 EXE 폴더에서 PowerShell을 사용하세요.

$secret = Read-Host 'Password' -AsSecureString
$savedEncoding = $OutputEncoding
try {
  $OutputEncoding = [System.Text.UTF8Encoding]::new($false)
  [System.Net.NetworkCredential]::new('', $secret).Password |
    .\rdp-cli.exe connect --protocol vnc --host 192.0.2.20 --user MAC_USER --vnc-security ard --password-stdin
} finally {
  $OutputEncoding = $savedEncoding
  $secret.Dispose()
}

별도 VNC 암호 방식이라면 같은 암호 입력 코드에서 --user MAC_USER를 제거하고 ard를 vnc-auth로 바꿉니다. 오류 후 인증 방식이나 서버 설정을 자동 변경하지 마세요.

연결 검증

ok와 data.session을 확인하고 SESSION을 실제 ID로 바꾸세요. 대상 Mac의 화면인지 확인합니다. 임시 문서에서 새 캡처를 기준으로 입력하고 결과를 검증하세요.

아래 Windows 명령은 EXE 폴더에서 .\rdp-cli.exe 또는 실제 절대 경로를 사용하세요.

rdp-cli status --session SESSION
rdp-cli screenshot --session SESSION --out before.png
rdp-cli watch --session SESSION --viewer window
rdp-cli watch --session SESSION --viewer web

계속 실패한다면

증상 확인
사용자명 없이 Mac 암호가 거절됨 --user와 ard 사용.
별도 VNC 암호가 거절됨 --user 없이 vnc-auth 사용.
구버전의 Apple 프로토콜 오류 실제 실행 버전이 0.1.1 이상인지 확인.
인증 전 시간 초과 주소, 공유 서비스, 보통 TCP 5900 확인.
올바른 계정도 거절됨 허용 사용자, 계정 이름, 반환 오류 확인.

ARD는 자격 증명 교환을 보호하지만 화면 전송은 암호화하지 않습니다. 신뢰할 LAN/VPN을 사용하세요. VNC는 RDP 교환 드라이브·음향·마이크 리디렉션을 제공하지 않습니다. 0.1.1에서 Mac 로그인·화면·입력·재연결을 검증했지만 모든 정책과 구성의 보장은 아닙니다.

VNC 명령 가이드