1. 概要
Setup Managerは、Jamf Proで利用出来るMacの初期セットアップ自動化ツールです。このツールを活用することで、IT管理者がデバイスに直接触れることなくセットアップを完了させる「ゼロタッチキッティング」が可能になります。
主な機能
- アプリケーションの自動インストール
- ユーザーによるアカウント情報の入力ポップアップ表示
- コンピューター名の自動設定
- Webhookを使った登録通知 など
2. 前提条件
このマニュアルの手順を実施するには、以下の環境および権限が必要です。
- 対象クライアント
- macOS:13.5 以降
- アカウント
- Jamf Proの管理者権限
- Setup Manager
- 1.3 以降
3. 導入手順
3.1. パッケージの準備
3.1.1 パッケージのダウンロード
- 以下のGitHubリリースページにアクセス
- 最新バージョンの Setup.Manager-xxx.pkg ファイルをダウンロード
3.1.2. Jamf Proへのアップロード
- Jamf Proにログイン
- 左メニューから [設定] > [コンピュータ管理] > [パッケージ] をクリック
- 右上[+ 新規] をクリック
- 先ほどダウンロードしたパッケージをアップロードして [保存] をクリック
3.2. 構成プロファイルの作成と設定
3.2.1. 構成プロファイルの作成
Setup Managerの動作を定義するための、構成プロファイルを作成します。
- Jamf Proで [コンピュータ] > [構成プロファイル] へ移動し、[+ 新規] をクリック
- 一般にて、名称に「Jamf Setup Manager 1.x」など分かりやすい名前を入力
- Scopeタブにて実行させたいコンピュータを指定
- [オプション]タブに戻り左メニューから [アプリケーションとカスタマイズ設定] > [Jamf アプリケーション] をクリック
- 以下の通り構成情報を入力項目内容Jamfアプリケーションドメインcom.jamf.setupmanagerバージョン1.3バリアントSetup Manager 1.3.json
- 環境設定ドメインのプロパティ内の[Add/Remove Properties]ボタンから設定するプロパティにチェックをつけます。💡チェック項目は以降手順を参照
3.2.2. 外観設定
Setup Manager起動時の外観を設定します。
キー | 説明 | 設定例 | 備考 |
---|---|---|---|
title | ツールに表示されるタイトル | {ようこそ!, Welcome!} | |
message | ツールに表示されるメッセージ | {Macを構成します..., "Configuring Mac...} | |
Icon Source | ツールに表示されるアイコン(URL Link) | https://hogehoge.jpg | おすすめの方法はマジックハットさんのブログを参照 |
Background Image Source | 背景画像(URL Link) | https://hogehoge.jpg | 任意 |
3.2.3. 動作設定
Setup Managerの動作設定を行います。
キー | 説明 | 設定例 | 備考 |
---|---|---|---|
Computer Name Template | コンピュータ名の設定が可能 | %SERIAL% | 利用できる変数はこちら参照 |
Final Action | Setup Manager完了後の最終アクション | continue shutdown restart など | デフォルトはcontinue (ここで再起動してもFile Vaultは有効になりません) |
Final Countdown | 最終アクション後のカウントダウン(秒数) | 10 , -1 など | デフォルトは60
-1 にすると無効化 |
Finished Custom Policy Trigger | Setup Manager完了後に実行するポリシーのカスタムトリガー | custom trigger | 任意:Setup Manager終了後に実行させたい場合に利用 |
💡詳細は以下公式を参照願います。
3.2.4. アクション設定
アプリケーションインストール等の実行させたいアクションをEnrollment Actionsキーにて設定します。アクションは以下内容から複数設定可能です。
アクション名 | 内容 | 備考 |
---|---|---|
Jamf Policy Trigger | Jamfのポリシーを実行する | カスタムイベントを指定 |
Shell Command | シェルを実行させる | 実行したいコマンドパスを指定 |
Installomator | Installomatorを実行して指定されたアプリをインストールします。 | ラベルリストはこちら |
WatchPath | 指定されたパスにファイルが存在するまで(または削除されるまで) 待機する。 | |
Jamf Recon | Jamf Inventory の更新を実行 | 処理途中でスマートグループに反映させたい場合等に利用 |
Wait for User Entry | ユーザーが入力するまで待機する |
各アクションで共通して以下2つは必ず指定します。
アクション名 | 内容 | 備考 |
---|---|---|
Action Label | ラベルを設定 | |
Action Icon Source | アイコンを設定 | ウェブ、またはローカルのリンク |
※便利な方法は項番5-3参照 |
💡その他各アクションに必要なパラメーターはこちらから確認して下さい
- 例1 - InstallomatorでChromeをインストール
- 例2 - Jamfポリシーの実行(Jamf Connectインストール)
3.3. PreStage Enrollmentの設定
作成したパッケージと構成プロファイルを、PreStage Enrollmentに適用します。
- Jamf Proにログイン
- 左メニューから [コンピュータ] > [事前登録] をクリック
- 対象のPreStage Enrollment(名称)を開く
- オプションから[構成プロファイル]を開き3.2で作成した構成プロファイルにチェックを付ける
- オプションから[構成プロファイル]をクリック
- 先ほど作成した構成プロファイルにチェックを入れる
- オプションから[登録パッケージ]をクリック
- 先ほどアップロードしたパッケージSetup.Manager-xxx.pkgを追加します。
- 設定が完了したら[保存] をクリックします。
4. 応用編:Jamf Connect利用時
こちらに詳細が記載されています。
- 通常のJamf Connect展開時の設定を行う。
- 構成プロファイルの配布
- アプリの配布 など
- Setup Managerの構成プロファイルにてUser IDを追加する。
- 拡張属性(Setup Manager Done)を作成
1 2 3
if [ -f "/private/var/db/.JamfSetupEnrollmentDone" ]; then echo "<result>done</result>"else echo "<result>incomplete</result>"fi
- 上記拡張属性を使ってスマートコンピュータグループを作成
- 上記拡張属性の結果が[done]の端末
- (Entra IDのみ)以下構成プロファイルを追加(配布は上記スマートグループ)
1 2 3 4 5 6 7 8 9 10
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "<http://www.apple.com/DTDs/PropertyList-1.0.dtd>"> <plist version="1.0"> <dict> <key>EnrollmentRealName</key> <string>$REALNAME</string> <key>EnrollmentUserName</key> <string>$EMAIL</string> </dict> </plist>
5. 補足・注意点
5.1. FileVault暗号化
FileVaultの暗号化はユーザーがログインした後に開始されます。Setup Managerの実行時に暗号化は完了しません。有効にするには、ユーザーの初回ログイン直後に再起動を促すなど、別のポリシーや仕組みを組み合わせる必要があります。
以下スクリプトをポリシーに設定してFinished Custom Policy Trigger に設定することでユーザーログイン直後にポップアップメッセージを出して即再起動させることも出来ます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#!/bin/bash counter=0 while [[ $counter -lt 120 ]]; do if pgrep -x "Dock" > /dev/null; then jamfHelper="/Library/Application Support/JAMF/bin/jamfHelper.app/Contents/MacOS/jamfHelper" title="再起動のお知らせ" description="Reboot for Final Settings" icon="/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/RestartIcon.icns" "$jamfHelper" -windowType utility -title "$title" -description "$description" -icon "$icon" -timeout 10 /sbin/shutdown -r now exit 0 fi sleep 5 ((counter++)) done exit 1
💡Jamf Helperを使ってメッセージを表示させ、10秒後に再起動ログイン後に発動するようにするためDockが立ち上がるまで待機(ループ)するようにしています。
5.2. セットアップアシスタントの設定
少なくとも1つ以上は有効にして下さい。全てスキップするとSetup Managerがうまく動作しない可能性があります。
5.3. アイコン
アイコンURLはマジックハットさんのブログに記載がありますがSelf Serviceにアップロードした画像からURL取得するのが一番簡単です。
5.4. Webhook
(2025/8/3時点)
Setup Manager 1.3から実装されていますがフォームエディタが壊れているためGUIから設定しても動作しません。利用したい場合は直接Plistに記述する必要があります
設定すると以下のように通知が可能です(例:Slack)
5.5. PreStage Enrollment以外のシナリオ
PreStage Enrollment以外の端末で利用したい場合は、スマートグループで(PreStage Enrollment対象外グループ)を作ってログインウィンドウで動作する構成プロファイルを作成することで利用できます。
💡動作タイミングはあくまでログインウィンドウ(ログイン前)になります。そのため初回のアカウント作成時は動作しません。
6. 参考情報
今回参考にした記事です。あわせてご確認下さい。