[43편] 평소 쓰던 Mac 터미널로 서버에 접속해봤다
2026년 11월 13일
서버에 접속할 때는 터미널이 가장 익숙하다. 계정을 확인하고, 파일을 살펴보고, 필요한 명령을 입력하는 작업을 매일 쓰던 도구에서 이어가고 싶었다.
이번에는 Mac 터미널에서 Multi Agent를 거쳐 실습 서버에 접속해봤다. 접속한 뒤에는 간단한 점검 명령을 실행하고, 관리자가 제한한 삭제 명령도 입력했다. 마지막으로 QueryPie 관리자 화면에서 접속과 명령 기록을 찾아봤다.
터미널로 접속할 역할을 준비했다
관리자 화면에서 이번 실습용 정책을 만들었다. 대상은 SSH Operations Lab 서버, 사용할 서버 계정은 labops로 정했다. SSH 접속을 허용하고, 앞서 만들어 둔 Lab - Block Delete 명령 템플릿을 연결했다. 이 템플릿에는 제한할 키워드로 rm이 등록돼 있다.
Multi Agent를 통한 접속을 위해 useProxy를 true로 설정했다. 명령 감사와 세션 녹화도 함께 켰다. 접속할 서버와 계정, 적용할 명령 통제를 하나의 정책에 담을 수 있었다.

이 정책을 Operations Lab Agent Terminal Operator 역할에 연결하고, Demo Developer에게 부여했다. 실습용 권한의 만료일은 당일로 지정했다. 사용자가 서버마다 접속 설정을 따로 관리하기보다, 관리자가 역할에 필요한 범위를 정해 줄 수 있다는 점이 편했다.

Multi Agent에서 역할을 고르고 터미널로 접속했다
Mac의 Multi Agent에 Demo Developer로 로그인한 뒤 Servers 탭을 열었다. 방금 부여한 역할을 선택하자 SSH Operations Lab이 목록에 나타났다. 먼저 어떤 역할로 어느 서버에 접속할지 확인할 수 있었다.

Agent의 Setting → Servers에는 SSH 설정 안내도 있었다. 평소 쓰는 ssh 명령이 QueryPie의 프록시를 거치도록 연결하는 방식이다. 이번에는 안내에 나온 ProxyCommand를 터미널의 ssh 옵션으로 지정했다.

실제로 입력한 명령은 ssh -o "ProxyCommand=qpctl ssh-proxy %r %h %p localhost" labops@acp-ssh-lab이다. 이 실습 환경의 QueryPie 호스트 이름과 서버 주소를 사용했다. 접속 후에는 labops@acp-ssh-lab 프롬프트가 나타났다.
익숙한 점검 명령은 그대로 쓸 수 있었다
먼저 whoami로 접속 계정을 확인했다. 결과는 labops였다. hostname은 acp-ssh-lab, pwd는 /home/labops를 보여줬다. 이어서 ls 명령으로 실습 파일의 소유자와 크기도 확인했다.

접속 후 명령을 입력하는 느낌은 평소 SSH 작업과 같았다. 터미널을 계속 쓰면서도, 접속 대상과 서버 계정은 QueryPie에서 정해 둔 역할에 맞춰 사용할 수 있었다.
삭제 명령을 입력하자 터미널에서 바로 제한됐다
이번 실습을 위해 만든 ep43-check.txt 파일에 rm 명령을 입력했다. 터미널에 [QueryPie] Restricted 안내가 나타났고, 보안 정책에 따라 해당 명령을 사용할 수 없다고 표시됐다.

곧바로 cat으로 같은 파일을 읽어봤다. 실습용으로 넣어 둔 두 줄의 문장이 그대로 나왔다. 파일 조회는 이어서 할 수 있었고, 제한한 삭제 시도로 파일이 사라지지도 않았다.

직접 해보니 서버에 들어갈 수 있는지와 들어가서 어떤 명령을 쓸 수 있는지를 함께 관리할 수 있다는 점이 좋았다. 이번처럼 점검을 맡기는 역할에 필요한 접속을 허용하면서, 제한할 명령을 정책으로 적용할 수 있었다.
터미널에서 한 작업도 관리자 화면에 남았다
작업을 마치고 exit로 접속을 종료했다. 관리자 화면의 Server Access History에서 이번 접속을 열어보니 사용자, 역할, 서버 계정이 함께 나왔다. Connected From은 Proxy, Client Name은 login/zsh/ssh로 기록돼 있었다. 종료 이력도 Success로 남았다.

접속 상세의 Go to Command Audit를 누르니 같은 세션에서 입력한 명령을 이어서 볼 수 있었다. whoami와 파일 조회는 Not Restricted, 파일 삭제 명령은 Restricted로 표시됐다. 삭제 시각과 실제 입력한 파일 경로도 확인했다.

운영자는 Mac 터미널에서 작업하고, 관리자는 QueryPie에서 접속과 명령 이력을 확인한다. 익숙한 도구를 유지하면서 역할에 따른 접근 통제와 감사 기록을 함께 적용할 수 있다는 점이 이번 실습에서 가장 마음에 들었다.
실습은 QueryPie Community 11.6.7, Multi Agent와 Ubuntu 24.04 실습 서버에서 진행했다. 화면의 사용자와 파일은 실습용이며, 작업 후 이번에 부여한 역할은 회수했다.
참고: QueryPie Multi Agent 사용자 안내
![[42편] 운영 DB 작업에 두 단계 승인을 붙여봤다](/assets/content/acp-lab-notes/multi-step-approval/01.webp)
![[44편] kubectl을 그대로 쓰면서 접근 범위를 나눠봤다](/assets/content/acp-lab-notes/kubectl-access-control/01.webp)