- 공유 링크 만들기
- X
- 이메일
- 기타 앱
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
이 글의 목적은 원격 데스크톱(RDP) 세션에서 클립보드 공유가 갑자기 끊기는 문제를 원인별로 진단하고, rdpclip.exe 재시작을 스크립트와 작업 스케줄러로 자동화하여 재발 시에도 즉시 복구되도록 구성하는 것이다.
1. 문제 개요와 대표 증상 정리
RDP 클립보드 공유는 “클라이언트 클립보드 ↔ 원격 세션” 간 리디렉션 기능으로 동작하다. 이 기능이 실패하면 텍스트나 파일 복사 붙여넣기가 불가능해지며, 세션을 끊었다가 다시 접속하면 일시적으로 회복되는 경우가 많다. 현장에서 가장 흔한 직접 원인은 원격 세션 내부에서 rdpclip.exe 프로세스가 비정상 상태로 멈추거나 동기화가 깨지는 경우이다.
| 증상 | 현상 설명 | 현장 체감 |
|---|---|---|
| 텍스트 복사 붙여넣기 불가 | 로컬에서 복사한 텍스트가 원격에 붙지 않거나 반대 방향도 실패하다 | 가장 흔한 형태이다 |
| 파일 복사 붙여넣기 불가 | 드래그 앤 드롭 또는 Ctrl+C/V가 동작하지 않다 | 클립보드/드라이브 리디렉션 정책 영향이 크다 |
| 일부 앱에서만 붙여넣기 실패 | 특정 애플리케이션에서만 붙여넣기가 막히다 | 보안 프로그램, 응용프로그램 자체 클립보드 훅 영향이 가능하다 |
| 재접속하면 잠시 정상 | 세션을 끊고 재접속하면 복구되다 | 프로세스 재시작이 근본 처방이 되는 경우가 많다 |
주의 : 서버에서 다중 사용자 동시 접속(RDS)이 운용되는 환경이라면, rdpclip.exe 재시작은 “해당 사용자 세션”에서 실행되어야 하다. 관리자 세션에서 임의로 실행하면 다른 사용자 세션의 문제를 해결하지 못하거나, 의도치 않게 다른 세션에 영향이 생기다.
2. 원인 분류와 우선 점검 체크리스트
자동화에 앞서 “정책 차단인지, 프로세스 비정상인지, 클라이언트 설정 문제인지”를 먼저 구분해야 하다. 정책 차단을 자동 재시작으로 덮어버리면 원인이 숨겨져 장애가 반복되다.
2.1 클라이언트(mstsc) 설정 점검
클라이언트 PC에서 원격 데스크톱 연결(mstsc) 옵션에서 로컬 리소스의 클립보드가 허용되어야 하다. 클립보드 체크가 꺼져 있으면 원격에서 rdpclip.exe를 재시작해도 공유가 되지 않다.
| 점검 위치 | 항목 | 권장 값 | 비고 |
|---|---|---|---|
| mstsc > 로컬 리소스 | 클립보드 | 체크(허용)이다 | 가장 우선 확인 항목이다 |
| mstsc > 로컬 리소스 | 추가... (드라이브/프린터 등) | 환경 정책에 맞게 설정이다 | 파일 복사 목적이면 드라이브 리디렉션이 필요하다 |
2.2 서버/호스트 정책(GPO) 점검
호스트가 Windows Server 또는 도메인 환경이면 그룹 정책에서 클립보드 리디렉션을 차단했을 수 있다. 대표 정책은 “Do not allow Clipboard redirection” 항목이며, 활성화되어 있으면 클립보드 공유 자체가 차단되다. 정책이 차단 상태라면 자동 재시작은 효과가 없거나, 잠깐 되는 듯 보이다가 다시 실패하다.
정책 위치는 다음 계열 경로에 존재하는 경우가 많다.
Computer Configuration - Administrative Templates - Windows Components - Remote Desktop Services - Remote Desktop Session Host - Device and Resource Redirection - Do not allow Clipboard redirection 주의 : 정책을 변경하는 행위는 보안 통제와 직접 충돌할 수 있다. 보안 정책상 클립보드 차단이 목적이라면 “해제”가 아니라 “예외 설계” 또는 “대체 전송 경로”를 검토해야 하다.
2.3 원격 세션 내부 프로세스 상태 점검
정책과 클라이언트 설정이 정상인데도 끊긴다면, rdpclip.exe가 멈추거나 비정상 상태일 가능성이 높다. 작업 관리자에서 “RDP Clipboard Monitor” 또는 “rdpclip.exe”가 보이는지 확인해야 하다. 보이지 않거나, 보이더라도 붙여넣기가 계속 실패하면 재시작이 1차 조치가 되다.
3. 수동 복구 표준 절차
자동화 전에 수동 복구 절차를 표준화해야 하다. 현장 대응자는 이 절차로 즉시 복구 가능 여부를 확인하고, 자동화는 이 절차를 그대로 반복 실행하도록 구성하는 것이 안전하다.
3.1 작업 관리자에서 rdpclip 종료 후 재실행
원격 세션에서 작업 관리자를 열고 rdpclip.exe를 종료한 뒤 다시 실행하다. 이 절차는 재접속보다 빠르고, 동일 세션을 유지한 채 복구가 가능하다는 장점이 있다.
1) 원격 세션에서 작업 관리자 실행이다 2) 프로세스 목록에서 rdpclip.exe 또는 RDP Clipboard Monitor를 찾다 3) 작업 끝내기(End task)로 종료하다 4) 파일 > 새 작업 실행에서 rdpclip.exe를 입력하여 실행하다 3.2 명령어로 즉시 재시작
GUI 접근이 불편하면 명령어로 즉시 재시작이 가능하다. 아래 명령은 원격 세션의 사용자 컨텍스트에서 실행해야 하다.
taskkill /f /im rdpclip.exe start "" rdpclip.exe 주의 : 서버에서 여러 사용자가 동시에 접속하는 환경이라면, 다른 사용자 세션에 영향을 주지 않도록 “현재 세션”에서만 실행해야 하다. 콘솔 또는 다른 세션에서 강제로 실행하면 문제 분석이 더 어려워지다.
4. rdpclip 재시작 자동화 설계 원칙
자동화는 “언제 실행할지”와 “어떤 권한/세션에서 실행할지”가 핵심이다. RDP 클립보드는 사용자 세션 종속성이 강하므로, 작업은 해당 사용자로 로그인된 상태에서 동작하도록 구성하는 것이 정석이다.
4.1 실행 트리거 선택
현장에서는 보통 세 가지 트리거가 실용적이다.
| 트리거 | 권장 상황 | 장점 | 주의점 |
|---|---|---|---|
| 로그온 시 1회 실행 | 가끔만 끊기는 환경이다 | 구성이 단순하다 | 세션 중간에 끊기면 즉시 복구가 어렵다 |
| 주기적 실행(예: 5~10분) | 자주 끊기거나 원인 추적이 지연되는 환경이다 | 재발 시 자동 복구가 빠르다 | 불필요한 재시작이 발생할 수 있다 |
| 이벤트 기반 실행(오류 이벤트) | 특정 오류 로그가 반복되는 환경이다 | 불필요한 실행을 줄이다 | 이벤트 ID와 로그 소스가 환경마다 다를 수 있다 |
4.2 “어떤 방식으로 재시작할지” 선택
재시작 방식은 단순해야 하며, 실패해도 다음 실행에서 복구되도록 멱등성이 있어야 하다. 가장 안정적인 방식은 “종료 시도 후 실행”을 항상 수행하는 방식이다.
5. PowerShell 스크립트로 rdpclip 재시작 자동화
아래 스크립트는 rdpclip.exe를 종료하고 다시 실행하는 표준 동작을 수행하다. 로그 파일을 남겨 운영 중 추적이 가능하도록 구성하다. 텍스트만 공유가 끊기는 경우에도 우선 적용 가능한 기본형이다.
# 파일명 예시: Restart-RdpClip.ps1 # 저장 경로 예시: C:\Tools\RDP\Restart-RdpClip.ps1 $ErrorActionPreference = "SilentlyContinue" $logDir = "C:\Tools\RDP" $logFile = Join-Path $logDir "rdpclip_restart.log" if (!(Test-Path $logDir)) { New-Item -Path $logDir -ItemType Directory | Out-Null } function Write-Log { param([string]$msg) $ts = Get-Date -Format "yyyy-MM-dd HH:mm:ss" Add-Content -Path $logFile -Value ("[$ts] " + $msg) } Write-Log "Restart sequence start." # rdpclip 종료이다 $proc = Get-Process -Name "rdpclip" -ErrorAction SilentlyContinue if ($null -ne $proc) { Write-Log "rdpclip.exe found. Killing process." Stop-Process -Name "rdpclip" -Force Start-Sleep -Seconds 1 } else { Write-Log "rdpclip.exe not found. Start new process." } # rdpclip 실행이다 Start-Process -FilePath "rdpclip.exe" Start-Sleep -Seconds 1 # 실행 확인이다 $proc2 = Get-Process -Name "rdpclip" -ErrorAction SilentlyContinue if ($null -ne $proc2) { Write-Log "rdpclip.exe started successfully." } else { Write-Log "rdpclip.exe start failed." } Write-Log "Restart sequence end." 주의 : 스크립트 실행 정책(ExecutionPolicy) 때문에 실행이 차단될 수 있다. 운영 표준에 따라 “서명된 스크립트 사용” 또는 “해당 경로만 예외” 등 조직 정책에 맞게 처리해야 하다.
6. 작업 스케줄러로 “로그온 시 + 주기적” 자동 복구 구성
가장 실무적인 구성은 “로그온 시 1회 실행”과 “로그온 상태에서 N분마다 반복”을 동시에 두는 방식이다. 이렇게 하면 접속 직후 초기화가 수행되고, 세션 도중 끊겨도 자동 복구가 가능하다.
6.1 schtasks로 작업 생성 예시
아래 예시는 현재 사용자 기준으로 작업을 만들고, 로그인 상태에서만 동작하도록 구성하는 방향이다. 서버 운영 표준에 따라 작업 이름과 경로를 통일해 관리하다.
:: 1) 스크립트 경로이다 :: C:\Tools\RDP\Restart-RdpClip.ps1 :: 2) 작업 생성(로그온 시)이다 schtasks /Create ^ /TN "RDP_Restart_rdpclip_OnLogon" ^ /TR "powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Tools\RDP\Restart-RdpClip.ps1" ^ /SC ONLOGON ^ /RL LIMITED ^ /F :: 3) 작업 생성(주기 실행, 5분)이다 schtasks /Create ^ /TN "RDP_Restart_rdpclip_Every5Min" ^ /TR "powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Tools\RDP\Restart-RdpClip.ps1" ^ /SC MINUTE ^ /MO 5 ^ /RL LIMITED ^ /F 이 구성은 단순하지만 “불필요한 재시작”이 생길 수 있다. 빈번한 재시작이 부담이면 10분 또는 15분으로 늘리거나, 아래 절의 “상태 기반 스크립트”로 발전시키는 방식이 합리적이다.
주의 : /RL HIGHEST로 올려도 rdpclip.exe는 사용자 세션 프로세스이므로 “다른 사용자 세션” 문제를 해결하지 못하다. 다중 사용자 서버라면 사용자별 작업(GPO 환경설정 작업)으로 배포하는 방식이 정석이다.
6.2 작업 스케줄러 GUI 설정 체크포인트
GUI로 만들 때는 다음 체크포인트를 만족해야 하다.
| 탭 | 설정 | 권장 값 |
|---|---|---|
| 일반 | 보안 옵션 | 사용자가 로그온한 경우에만 실행이다 |
| 트리거 | 로그온 시 | 해당 사용자 또는 모든 사용자 기준으로 설계이다 |
| 트리거 | 반복 작업 | 5~15분 간격 반복이다 |
| 동작 | 프로그램/스크립트 | powershell.exe이다 |
| 동작 | 인수 | -NoProfile -ExecutionPolicy Bypass -File "C:\Tools\RDP\Restart-RdpClip.ps1"이다 |
| 조건 | 유휴 상태 관련 | 불필요한 제한 해제이다 |
7. “필요할 때만” 재시작하도록 개선하는 상태 기반 스크립트
주기 실행이 부담이면 “rdpclip이 없을 때만 시작” 또는 “연속 실패 흔적이 있을 때만 재시작” 형태로 개선하다. 다만 클립보드 실패는 OS 내부 상태이므로, 단순히 프로세스 존재 여부만으로는 문제를 100% 판별하기 어렵다. 실무에서는 “과도한 재시작을 줄이는 목적”으로만 적용하는 것이 합리적이다.
# 파일명 예시: Ensure-RdpClip.ps1 # 동작: rdpclip.exe가 없으면 시작하고, 있으면 그대로 두다 $ErrorActionPreference = "SilentlyContinue" $logDir = "C:\Tools\RDP" $logFile = Join-Path $logDir "rdpclip_ensure.log" if (!(Test-Path $logDir)) { New-Item -Path $logDir -ItemType Directory | Out-Null } function Write-Log { param([string]$msg) $ts = Get-Date -Format "yyyy-MM-dd HH:mm:ss" Add-Content -Path $logFile -Value ("[$ts] " + $msg) } $proc = Get-Process -Name "rdpclip" -ErrorAction SilentlyContinue if ($null -eq $proc) { Write-Log "rdpclip.exe not running. Start process." Start-Process -FilePath "rdpclip.exe" } else { Write-Log "rdpclip.exe running. No action." } 8. 이벤트 기반 자동화 구성 시 실무 팁
rdpclip.exe가 충돌하거나 응답 없음으로 종료되는 환경이라면 이벤트 기반 트리거가 유용하다. 다만 이벤트 ID와 소스는 OS 버전, 구성, 오류 형태에 따라 달라질 수 있으므로 “해당 서버의 이벤트 뷰어에서 실제로 찍히는 이벤트”를 기준으로 필터를 만들어야 하다.
8.1 이벤트 뷰어에서 패턴 찾는 절차
1) 원격 서버에서 이벤트 뷰어를 열다 2) Windows 로그 > 응용 프로그램으로 이동하다 3) rdpclip.exe 관련 오류 또는 응답 없음 이벤트를 찾다 4) 이벤트 ID, 소스, 오류 모듈 정보를 기록하다 5) 해당 이벤트를 트리거로 작업을 실행하도록 구성하다 주의 : 이벤트 기반 트리거는 “정확한 필터”가 핵심이다. 필터가 과도하게 넓으면 무관한 오류에도 재시작이 반복되며, 반대로 너무 좁으면 실제 장애를 놓치다.
9. 그래도 해결되지 않을 때의 확장 진단 포인트
rdpclip 재시작으로도 해결되지 않으면, 다음 범위를 순차로 확인해야 하다. 이 단계는 자동화를 강화하기보다 “근본 원인을 제거”하는 방향이다.
9.1 파일 복사 목적이면 드라이브 리디렉션 정책도 점검하다
파일 복사 붙여넣기는 클립보드만이 아니라 리디렉션 정책 조합 영향을 받다. 조직 정책에서 드라이브 리디렉션을 막아둔 환경이면 텍스트는 되지만 파일이 안 되는 형태가 발생할 수 있다.
9.2 보안 제품과 DLP 정책 점검이다
보안 에이전트, DLP, 클립보드 제어 솔루션이 RDP 클립보드를 통제할 수 있다. 이 경우 rdpclip 재시작은 일시적 효과만 보이거나 전혀 효과가 없을 수 있다.
9.3 RDS 환경의 사용자 프로파일/세션 안정성 점검이다
세션이 장시간 유지되며 여러 앱이 클립보드를 훅킹하는 환경에서는 누적 상태 문제로 빈번한 실패가 발생할 수 있다. 앱 충돌, 응답 없음, COM 관련 오류가 반복되는지 운영 로그로 확인하는 것이 합리적이다.
10. 운영 표준 권장안 정리
현장 적용 관점에서 가장 무난한 권장안은 다음과 같다.
| 우선순위 | 권장 조치 | 적용 대상 | 효과 |
|---|---|---|---|
| 1 | mstsc 클립보드 허용 확인이다 | 모든 환경이다 | 설정 문제를 즉시 배제하다 |
| 2 | 서버 정책에서 클립보드 리디렉션 차단 여부 확인이다 | 도메인/서버 환경이다 | 자동화로 해결 불가능한 케이스를 구분하다 |
| 3 | rdpclip 수동 재시작 표준 절차 확립이다 | 운영팀/헬프데스크이다 | 재접속 없이 복구하다 |
| 4 | 로그온 시 + 주기 실행 작업 배포이다 | 재발 빈번 환경이다 | 재발 시 자동 복구하다 |
| 5 | 이벤트 기반 트리거로 최적화이다 | 충돌 로그가 반복되는 환경이다 | 불필요한 재시작을 줄이다 |
FAQ
재시작 자동화가 보안상 문제가 되다?
자동화 자체는 단순히 rdpclip.exe를 재실행하는 동작이다. 그러나 클립보드 리디렉션은 데이터 유출 통제와 직결될 수 있으므로, 조직 보안 정책에서 클립보드를 제한하는 환경이라면 자동화는 정책 목적을 우회하는 결과가 될 수 있다. 따라서 정책 의도 확인과 승인 절차가 선행되어야 하다.
다중 사용자 서버에서 한 번에 전체 사용자 클립보드를 복구할 수 있다?
RDP 클립보드 프로세스는 사용자 세션 단위로 동작하다. 따라서 전체 사용자에 일괄 적용하려면 사용자별로 작업을 배포하거나, 그룹 정책 환경설정으로 사용자 로그온 시 작업이 생성되도록 설계하는 방식이 일반적이다.
주기 실행을 5분으로 해도 괜찮다?
대부분 환경에서 5분 주기는 과도하지 않지만, 모든 조직에 동일하게 적합하다고 단정할 수는 없다. 운영 서버 부하, 정책, 사용자 체감에 따라 10분 또는 15분이 더 적절할 수 있다. 로그를 남겨 실제 장애 빈도와 재시작 횟수를 비교해 최적화하는 방식이 합리적이다.
텍스트는 되는데 파일만 안 되다?
파일 복사 붙여넣기는 드라이브 리디렉션 정책, 클라이언트 로컬 리소스 설정, 보안 솔루션 통제에 따라 달라지다. 이 경우 rdpclip 재시작만으로 해결되지 않는 경우가 흔하므로, 드라이브 리디렉션 정책과 클라이언트의 로컬 리소스 설정을 함께 점검해야 하다.
rdpclip.exe가 보이지 않다?
정상이라면 원격 세션에서 rdpclip.exe가 실행되는 경우가 많다. 보이지 않는다면 정책 차단, 세션 초기화 실패, 또는 보안 제품에 의한 실행 제한 가능성이 있다. 우선 수동으로 rdpclip.exe를 실행해 보고, 계속 생성되지 않으면 정책과 보안 통제를 우선 점검해야 하다.