Computer >> 컴퓨터 >  >> 시스템 >> Windows 10

Windows PsExec 완벽 가이드: 설치부터 원격 제어 명령어까지

PsExec는 시스템 관리자가 원격지에서 컴퓨터를 제어할 수 있도록 해주는 유틸리티 도구입니다. 명령줄 인터페이스(CLI) 기반으로 동작하며, 다른 인기 있는 원격 관리 도구들과 달리 별도의 소프트웨어 설치 없이 바로 사용할 수 있다는 것이 큰 장점입니다.

"원격에서 어떻게 이런 일이 가능하지?"라고 궁금하실 겁니다. 이 글에서는 PsExec의 개념부터 다운로드 및 설치 방법, 실행 방법, 그리고 초보자가 알아야 할 기본 명령어까지 차근차근 살펴보겠습니다.

PsExec란 무엇인가?

PsExec는 마이크로소프트(Microsoft)가 제공하는 다재다능한 시스템 관리 도구로, 대상 호스트(target host)에 원격으로 접속하는 데 사용됩니다. 이 유틸리티는 Mark Russinovich가 만든 Sysinternals Suite에 포함되어 있으며, 주된 목적은 시스템 관리자가 원격 유지 보수 작업을 수행하고 대상 컴퓨터에서 명령을 실행할 수 있도록 돕는 것입니다.

명령줄 인터페이스 도구인 PsExec는 대상 컴퓨터에 접속하기 위해 목표 주소(IP), 사용자 계정 정보, 비밀번호만 입력하면 됩니다.

Telnet이나 원격 데스크톱 프로토콜(RDP)과 달리, PsExec는 내 PC에 클라이언트 프로그램을 설치하거나 원격 호스트에 추가 소프트웨어를 설치할 필요가 없습니다. 또한 콘솔 응용 프로그램의 입력과 출력을 리디렉션할 수 있습니다.

예를 들어, IP 주소가 192.168.79.32인 컴퓨터에 원격 접속하여 ipconfig 명령을 실행한다고 가정해 보겠습니다.

Psexec \\192.168.79.32 ipconfig

그러면 로컬 컴퓨터에서 직접 명령을 실행한 것처럼 ipconfig 출력 결과(즉, 원격 시스템의 TCP/IP 구성 정보)가 내 화면에 표시됩니다. 이러한 기능이야말로 PsExec를 수많은 Windows 관리 콘솔 도구와 차별화하는 핵심입니다.

PsExec 설치 및 설정 방법

PsExec는 클라이언트 소프트웨어 설치가 필요 없고, 연결 전에 원격 호스트에 복잡한 사전 설정도 요구하지 않습니다. 그렇다면 다른 전통적인 관리 도구와 달리 설정 과정이 거의 없는 PsExec는 어떻게 작동하는 걸까요?

PsExec 다운로드

PsExec는 단순한 명령줄 유틸리티입니다. 로컬 컴퓨터에서 할 일은 Sysinternals 사이트에서 PsTools Suite(ZIP 파일)를 다운로드하는 것뿐입니다.

다운로드가 완료되면 PsTool.zip 파일의 압축을 풀어야 합니다. ZIP 파일을 마우스 오른쪽 버튼으로 클릭하고 메뉴에서 모두 압축 풀기(Extract All)를 선택하면 됩니다.

PsExec 설치

압축을 푼 폴더를 엽니다. 그다음 파일 탐색기 상단의 경로 표시줄(주소창) 내용을 CMD로 변경하고 Enter 키를 누릅니다. 그러면 PsExec 폴더 위치에서 명령 프롬프트 창이 바로 열립니다.

PsExec 실행 및 원격 컴퓨터 연결

PsExec를 다운로드했다면, 다음 단계는 대상 호스트에 연결할 수 있도록 환경을 준비하는 것입니다. PsExec가 원격 호스트에 정상적으로 연결되려면 세 가지 기본 조건을 충족해야 합니다.

1. 파일 및 프린터 공유 활성화

로컬 컴퓨터와 원격 호스트 양쪽 모두에서 파일 및 프린터 공유가 활성화되어 있어야 합니다. 활성화하려면 Windows 설정 > 네트워크 및 인터넷으로 이동한 뒤 네트워크 및 공유 센터로 스크롤합니다.

열린 창의 왼쪽 메뉴에서 고급 공유 설정 변경을 클릭하고, 파일 및 프린터 공유 켜기를 선택한 후 변경 사항을 저장합니다.

2. 원격 호스트에서 관리 공유($Admin) 활성화

원격 컴퓨터에는 관리 공유(administrative share, $admin)가 활성화되어 있어야 하며, 이 공유를 통해 \windows\ 폴더에 접근할 수 있도록 올바르게 설정되어 있어야 합니다.

관리 공유($admin)는 시스템 관리자가 드라이브와 폴더에 접근함으로써 회사 네트워크나 작업 그룹 내 여러 대의 컴퓨터를 한 번에 관리할 수 있게 해주는 기능입니다.

원격 컴퓨터에서 관리 공유를 활성화하려면 Win + R 키를 누르고 lusrmgr.msc를 입력한 후 확인을 클릭합니다.

새로 열린 창에서 사용자(Users) 폴더를 엽니다. Administrator 계정을 마우스 오른쪽 버튼으로 클릭하고 속성(Properties)을 선택합니다.

속성 창에서 계정 사용 안 함(Account is disabled) 체크박스의 선택을 해제하고 확인을 클릭합니다. 이후 Administrator를 다시 오른쪽 클릭하여 암호 설정(Set Password)을 통해 계정 비밀번호를 지정합니다.

3. 관리자 계정 정보 준비

원격 컴퓨터의 정확한 사용자 자격 증명, 즉 IP 주소, 관리자 계정 이름, 비밀번호를 미리 확보해 두어야 합니다.

PsExec 사용 방법

PsExec가 올바르게 작동하려면 문법(syntax)을 정확하게 지켜야 합니다. 따라서 도구가 작동하는 방식을 이해하고 의도된 형식대로 명령을 입력해야 합니다.

원격 호스트에 접속하려면 대상 호스트의 자격 증명(IP 주소, 사용자 이름, 비밀번호)과 함께 실행하고자 하는 명령을 입력하면 됩니다.

예를 들어, IP 주소가 192.168.89.323이고 비밀번호가 '12345'인 원격 시스템에서 ipconfig를 실행하려면 PsExec CMD 콘솔을 열고 다음과 같이 입력합니다.

C: \PsExec \\192.168.89.323 –u Administrator –p 12345

입력한 명령이 원격 시스템에서 성공적으로 실행되면, 그 결과 텍스트가 내 명령 창으로 전송되어 표시됩니다.

초보자를 위한 PsExec 기본 명령어

지금까지 PsExec가 무엇인지, 그리고 로컬 시스템을 원격 시스템에 연결하는 올바른 방법을 살펴봤습니다. 새 사용자에게는 문법을 정확히 따라야 한다는 점 때문에 PsExec 사용이 다소 어렵게 느껴질 수 있습니다. 아래는 모든 PsExec 사용자가 반드시 알아두어야 할 기본 명령어들입니다.

원격으로 명령 프롬프트 실행하기

C: \psexec \\windows cmd

위 명령을 PsExec에서 실행하면 현재 창 안에 또 하나의 명령줄 인터페이스가 시작됩니다. 이 인터페이스를 통해 원격 시스템에 직접 앉아 입력하는 것처럼 명령을 실행할 수 있습니다.

CMD 명령 실행에 성공했다면, 이제 폴더 내용을 확인하는 dir, 새 폴더를 만드는 mkdir, 원격 시스템의 네트워크 구성을 조회하는 ipconfig 같은 다양한 명령을 손쉽게 사용할 수 있습니다.

원격 호스트에 프로그램 설치하기

C: \psexec \\Desktop7743 -c "E:file\document\CCleaner.exe" CMD /S

위 스크립트는 원격 컴퓨터 Desktop7743에 CCleaner를 설치하는 예시입니다. 여기서 -c 옵션은 CCleaner 프로그램 파일을 로컬 호스트에서 원격 컴퓨터로 복사하는 역할을 하고, CMD는 명령 프롬프트를 실행하며, /S는 CCleaner를 사용자 개입 없이 자동(무인) 설치하도록 하는 옵션입니다.

원격 컴퓨터에서 GUI 응용 프로그램 실행하기

\psexec -i \emote computer calculator

기본 설정상 PsExec는 원격 컴퓨터에서 GUI 프로그램을 실행하지 않습니다. 하지만 -i 스위치를 사용하면 원격 컴퓨터 화면에 GUI 응용 프로그램을 띄울 수 있습니다.

예를 들어 원격 컴퓨터에서 계산기를 열어야 한다면, calculator.exe를 -i 스위치와 함께 실행하기만 하면 PsExec가 해당 프로그램을 원격 화면에 표시해 줍니다.

PsExec 인터페이스에 더 익숙해지기

처음 PsExec를 접하면 다소 어렵고 부담스럽게 느껴질 수 있습니다. 하지만 명령줄 인터페이스를 자주 다룰수록 실력은 빠르게 향상됩니다.

PsExec 작업에 사용되는 문법과 명령어를 더 깊이 이해하고 싶다면, Windows 명령줄 인터페이스 자체에 대해 먼저 학습해 보는 것을 추천합니다. CLI에 대한 기본기를 다져두면 PsExec 활용 능력도 자연스럽게 함께 올라갈 것입니다.