콘텐츠로 이동

MDM으로 신에이전트 배포하기

MDM으로 신에이전트를 배포하는 방법을 안내합니다.

현재 공개 버전 1.2.0의 신에이전트를 Jamf Pro, Microsoft Intune, Omnissa Workspace ONE으로 배포하는 방법을 안내합니다.

  1. 관리자 콘솔의 에이전트 다운로드 페이지에서 1.2.0 설치 파일을 받습니다.
  2. 설치 파일의 SHA-256 값을 manifest와 비교합니다.
  3. 테스트 단말에서 설치, 체크인, 제거를 확인한 뒤 전체 단말에 배포합니다.
  4. Windows에서는 SYSTEM, macOS에서는 root 권한으로 명령을 실행합니다.
  5. 단말이 설치 시점에 인터넷에 연결되어 있어야 합니다. 오프라인 배포가 필요하면 별도로 문의하세요.
  6. 배포 대수만큼 SMPLY 플랜의 에이전트 시트 여유가 있는지 확인합니다.
  1. 1.2.0 macOS PKG를 Jamf Pro에 업로드합니다.
  2. 컴퓨터 그룹을 대상으로 설치 정책을 배포합니다.
  3. 설치 정책은 root 권한으로 실행합니다.
  4. 설치 후 다음 명령으로 LaunchDaemon을 확인합니다.
Terminal window
sudo launchctl print system/app.smply.smplyd

신에이전트는 /Library/LaunchDaemons/app.smply.smplyd.plist로 등록되어 로그인 여부와 관계없이 시작됩니다.

배포 패키지에 포함된 최신 제거 스크립트를 root 권한으로 실행합니다.

Terminal window
sudo /path/to/uninstall-smplyd-macos.sh

브라우저의 URL·탭 정보를 수집하는 기능에는 macOS Automation 권한이 필요할 수 있습니다. 완전한 무인 배포를 원하면 사전 승인 권한 섹션의 PPPC 프로파일을 함께 배포합니다.

Windows용 1.2.0 설치 번들을 Win32 앱으로 등록합니다.

  • 설치 동작은 SYSTEM 계정으로 실행합니다.
  • 설치 명령: SmplyAgentSetup.exe /quiet /norestart
  • 제거 명령: SmplyAgentSetup.exe /uninstall /quiet /norestart
  • 감지 규칙은 Smplyw 서비스 또는 설치 경로를 기준으로 설정합니다.

설치 후 Smplyw 서비스가 자동으로 시작됩니다. 사용자가 로그인하면 해당 세션에서 smplyd가 실행되므로 별도 로그온 스크립트는 필요하지 않습니다.

Terminal window
Get-Service Smplyw
Get-Process smplyd -ErrorAction SilentlyContinue
  1. 1.2.0 설치 번들을 애플리케이션으로 등록합니다.
  2. 설치 명령을 SYSTEM 계정으로 실행합니다.
  3. SmplyAgentSetup.exe /quiet /norestart를 설치 명령으로 사용합니다.
  4. 제거에는 SmplyAgentSetup.exe /uninstall /quiet /norestart를 사용합니다.
  5. Get-Service Smplyw로 설치를 확인합니다.
  1. 1.2.0 PKG를 애플리케이션으로 등록합니다.
  2. 설치 정책을 root 권한으로 실행합니다.
  3. sudo launchctl print system/app.smply.smplyd로 LaunchDaemon 등록을 확인합니다.
  4. 브라우저 권한을 무인으로 부여하려면 PPPC 프로파일을 함께 배포합니다.
  5. 제거하려면 배포 패키지에 포함된 제거 스크립트를 root 권한으로 실행합니다.

공개 버전 1.2.0의 설치 파일은 관리자 콘솔의 에이전트 다운로드 페이지에서 받습니다. 고객사별 식별자와 버전 접미사가 포함된 이전 파일을 재사용하지 않습니다.

플랫폼파일배포 방식
Windows.exe 설치 번들Intune Win32 앱 또는 Workspace ONE 애플리케이션
macOS서명·공증된 .pkgJamf Pro 또는 Workspace ONE 패키지

Windows 설치 번들은 신에이전트 데몬과 Smplyw Windows 서비스를 비롯해 필요한 구성 요소를 함께 설치합니다. 파일을 임의로 분리하거나 설치 순서를 바꾸지 않습니다.

smplyd는 Windows Service가 아니라 로그인한 구성원 세션에서 동작합니다. Smplyw 서비스가 LocalSystem으로 실행되며 다음 역할을 담당합니다.

  1. 활성 사용자 세션이 생길 때까지 기다립니다.
  2. 해당 세션에서 smplyd를 실행합니다.
  3. smplyd가 종료되면 다시 실행합니다.

따라서 MDM이 SYSTEM 계정으로 설치해도 별도 로그온 스크립트나 수동 실행은 필요하지 않습니다. 로그인한 구성원이 없을 때 smplyd 프로세스가 보이지 않는 것은 정상입니다.

smplyd는 root 권한의 LaunchDaemon으로 실행됩니다. 설치 시 다음 항목이 등록됩니다.

  • LaunchDaemon: app.smply.smplyd
  • plist: /Library/LaunchDaemons/app.smply.smplyd.plist

데몬 실행은 로그인 여부와 관계없지만, 브라우저 URL·탭 정보를 읽는 기능에는 별도의 Automation 권한이 필요할 수 있습니다.

macOS에서 무인 배포를 완성하려면 신에이전트에 필요한 Automation 및 Accessibility 권한을 PPPC 프로파일로 사전 승인해야 합니다. 신에이전트는 활성 브라우저 탭 URL을 수집하기 위해 AppleScript(tell application)를 사용하는데, 이때 macOS TCC(Transparency, Consent, and Control)가 AppleEvents 권한을 요구해 사용자에게 확인 대화상자가 표시됩니다. MDM으로 아래 PPPC 프로파일을 사전 배포하면 이 대화상자 없이 자동으로 권한이 부여됩니다.

항목
Identifierapp.smply.smplyd
Team Identifier8VTZL72ZHQ
CodeRequirementidentifier "app.smply.smplyd" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "8VTZL72ZHQ"

Service Type: AppleEvents · Access: Allow. 아래 8개 브라우저 각각에 규칙을 추가합니다.

브라우저AEReceiverIdentifierAEReceiverCodeRequirement
Google Chromecom.google.Chrome(identifier "com.google.Chrome" or identifier "com.google.Chrome.beta" or identifier "com.google.Chrome.dev" or identifier "com.google.Chrome.canary") and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "EQHXZ8M8AV"
Microsoft Edgecom.microsoft.edgemacidentifier "com.microsoft.edgemac" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "UBF8T346G9"
Safaricom.apple.Safariidentifier "com.apple.Safari" and anchor apple
Arccompany.thebrowser.Browseranchor apple generic and identifier "company.thebrowser.Browser" and (certificate leaf[field.1.2.840.113635.100.6.1.9] or certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "S6N382Y83G")
Bravecom.brave.Browseridentifier "com.brave.Browser" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "KL8N8XSYF4"
Naver Whalecom.naver.Whaleidentifier "com.naver.Whale" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6]
Opera (전 계열)com.operasoftware.Opera(identifier "com.operasoftware.Opera" or identifier "com.operasoftware.OperaNext" or identifier "com.operasoftware.OperaDeveloper" or identifier "com.operasoftware.OperaNightly" or identifier "com.operasoftware.OperaGX" or identifier "com.operasoftware.OperaGXNext" or identifier "com.operasoftware.OperaGXDeveloper" or identifier "com.operasoftware.OperaGXNightly" or identifier "com.operasoftware.OperaZen" or identifier "com.operasoftware.OperaZenNext" or identifier "com.operasoftware.OperaZenDeveloper" or identifier "com.operasoftware.OperaZenNightly") and (certificate leaf = H"89584386993936e6f38e64eed006f705f2570cbf" or certificate leaf = H"cdf1c39967986616b6cd64c6bd04833a9cb7450d")
Vivaldicom.vivaldi.Vivaldiidentifier "com.vivaldi.Vivaldi" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.OU] = "4XF3XNRN6Y"
플랫폼확인 방법
WindowsGet-Service Smplyw 결과가 Running인지 확인
Windows로그인한 세션에서 Get-Process smplyd 실행
macOSsudo launchctl print system/app.smply.smplyd 실행
공통관리자 콘솔에서 호스트 체크인과 버전 확인
  • Windows에서 Get-Service Smplyw 결과가 Running인지 확인합니다.
  • Windows에서 구성원이 로그인한 뒤 Get-Process smplyd로 프로세스를 확인합니다.
  • macOS에서 sudo launchctl print system/app.smply.smplyd로 데몬을 확인합니다.
  • 관리자 콘솔에서 호스트가 체크인하고 버전이 1.2.0으로 표시되는지 확인합니다.
  • macOS에서 브라우저 정보가 필요한 경우 Automation·Accessibility·PPPC 권한을 확인합니다.

Microsoft Visual C++ 2015-2022 재배포 패키지(x64)가 없는 단말일 수 있습니다. 이 런타임이 없으면 smplyd·Smplyw가 시작할 수 없어 설치가 그 자리에서 오류 코드로 종료됩니다 — Get-Service Smplyw 자체가 결과 없음으로 나오면 이 경우를 의심하세요. https://aka.ms/vs/17/release/vc_redist.x64.exe에서 재배포 패키지를 먼저 설치한 뒤 다시 배포합니다.

Windows 설치는 성공했지만 에이전트 프로세스가 보이지 않습니다

섹션 제목: “Windows 설치는 성공했지만 에이전트 프로세스가 보이지 않습니다”

설치 시점에 로그인한 구성원이 없었을 수 있습니다. Smplyw 서비스가 실행 중인지 먼저 확인하세요. 구성원이 로그인하면 서비스가 해당 세션에서 smplyd를 실행합니다.

Windows에서 SmartScreen 경고가 표시됩니다

섹션 제목: “Windows에서 SmartScreen 경고가 표시됩니다”

서명된 설치 파일이라도 최초 배포 시점에는 SmartScreen 평판이 충분하지 않을 수 있습니다. /quiet 옵션으로 SYSTEM 계정에서 배포하면 사용자에게 설치 UI가 표시되지 않습니다. 서명과 파일 해시는 배포 전에 확인해야 합니다.

macOS 데몬은 실행되지만 브라우저 정보가 수집되지 않습니다

섹션 제목: “macOS 데몬은 실행되지만 브라우저 정보가 수집되지 않습니다”

브라우저별 Automation 권한과 신에이전트의 Accessibility 권한을 확인합니다. 사용자가 권한 대화상자를 직접 승인하도록 요구하지 않으려면 최종 서명 정보로 만든 PPPC 프로파일을 MDM으로 사전 배포합니다.

macOS에서 “확인되지 않은 개발자” 경고가 표시됩니다

섹션 제목: “macOS에서 “확인되지 않은 개발자” 경고가 표시됩니다”

전달되는 배포용 패키지는 서명·공증(notarization)·stapling이 모두 끝난 상태라 정상적인 경우 이 경고가 뜨지 않습니다. 경고가 뜬다면 배포에 사용한 파일이 관리자 콘솔에서 받은 정식 배포본이 맞는지 다시 확인하세요.

설치 파일이 최신인지 확신할 수 없습니다

섹션 제목: “설치 파일이 최신인지 확신할 수 없습니다”

관리자 콘솔의 다운로드 페이지에서 다시 받고 manifest의 버전·다운로드 URL·SHA-256과 비교합니다. 이전 1.1.0 파일이나 고객 전용 파일을 사용하지 않습니다.