설정
Jamf CLI의 설정 방법은 여러 가지가 있지만, 이 중 Jamf Pro Direct Setup은 비권장되므로, 본문에서는 Jamf Platform Gateway 설정을 사용합니다.
# Jamf Platform Gateway 설정
jamf-cli platform setup
# Jamf Pro Direct Setup ※비권장
...
Integration 생성
Jamf Platform Gateway 설정에서는 사전에 Jamf Account에서 Integration을 생성해 두어야 합니다.
Jamf Account 페이지에서 Integration > Create Integration으로 이동합니다.
이번에는 쓰기나 업데이트를 하지 않으므로, 이름은 jamf-cli-readonly로 지정합니다. -
다음과 같이 선택하고 대상 환경을 고른 후 'Select Permission'으로 진행합니다.
Set level: Platform environment
Region: APAC
필요한 권한에 체크를 합니다.
이번에는 CLI를 사용하여 PC의 재고 조사를 해보고 싶기 때문에, 필요한 항목만 Read(읽기) 권한을 부여합니다.
권한을 모두 선택했다면 'Create'를 눌러 생성합니다.
인증 정보 화면으로 이동합니다.
이 인증 정보는 Jamf CLI에서 사용하므로 메모해 둡니다.
Jamf CLI 설정
Jamf CLI는 homebrew를 통해 설치하여 사용할 수 있습니다.
% brew install Jamf-Concepts/tap/jamf-cli
아래 명령어를 실행한 후, 대화 형식으로 4가지 질문을 받으므로, 방금 생성한 Integration 정보를 바탕으로 입력합니다.
% jamf-cli platform setup
1. Profile name [platform]: {임의}
2. Platform gateway region:
3. Client ID:
...
인증이 성공하면 다음과 같이 표시됩니다.
Validating credentials... ok
Checking the scope ID... ok: the gateway accepts this environment ID
Profile "{profile_name}" saved and set as default.
...
사용해 보기
우선 간단하게, jamf 관리되는 PC의 목록을 가져와 봅니다.
$ jamf-cli pro comp list -o table
ID NAME LASTCHECKIN MODEL OSVERSION SERIAL
────────────────────────────────────────────
...
보기에는 조금 불편하지만, 데이터를 가져올 수 있다는 것을 확인할 수 있습니다.
다만, 요즘 시대에 매번 명령어를 검색하고 출력을 확인하여 grep으로 파이프하는 것은 매우 번거로우므로 AI에게 맡겨보겠습니다.
로컬 MCP 설정하기
Jamf CLI는 로컬 MCP(Machine Context Provider) 서버로도 작동하며, AI와 연결함으로써 자연어(Natural Language)로 조작할 수 있습니다.
참고: https://github.com/Jamf-Concepts/jamf-cli/wiki/MCP-Server
{
"mcpServers": {
"jamf-cli": {
...
jamf-cli mcp에서는 AI가 다음 도구들을 사용할 수 있습니다.
list-commands
: 사용 가능한 명령어를 찾는 용도입니다. AI는 처음에 이것을 호출합니다.
run_command
: {"pro","comp","list"}와 같은 형태로 명령어를 실행합니다.
generate_report
: HTML 리포트를 만듭니다. jamf-cli config set-report-dir로 저장 위치를 지정해 두어야 합니다.
로컬 MCP를 사용하여 PC 목록 .csv 파일 만들기
나머지는 자연어로 지시하기만 하면 됩니다.
PC 목록을 가져와서, 다음 컬럼을 가진 리스트를 PCリスト.csv로 저장해 주세요.
{컴퓨터 이름, 사용자 이름, 시리얼 번호, 모델, OS 버전, 마지막 체크인, 자산 태그}
좋네요!
마무리하며
이번에는 Jamf CLI를 Platform Gateway에 연결하고, 로컬 MCP를 통해 AI가 조작하도록 하여 Read 권한 범위 내에서 PC 목록을 CSV로 추출하는 것까지 시도했습니다.
Jamf는 지금까지의 역사로 인해 UI나 조작이 복잡해져서, 처음부터 따라가려고 하면 상당한 시간이 걸립니다. 하지만 이번에 Jamf CLI와 AI를 결합함으로써 Jamf 경험이 적은 사람도 일정 수준의 조작 및 효율화를 달성할 수 있다는 점이 매력적입니다.
본고는 Read 권한만 다루었지만, Integration에 Create나 Update 권한을 부여하여 AI에게 맡기는 영역을 늘리거나, 올해 출시된 Google Workspace MCP와 결합해 보는 것도 가능성이 커 보입니다!
참고 링크
토론