ジョブ: 最小構成 (Linux)

想定読者: Linuxエンドポイントへカスタム実行ファイルをデプロイする統合担当者。

本例はジョブ: 最小構成 (Windows)のLinux向け版です。ジョブの骨子は同じで、違いはバイナリのパス、osFilter、および.exe 拡張子がない点です。異種OSが混在するフリートでは、Windows版およびmacOS版とあわせて3種類を用意し、すべてデプロイしてください。

ジョブのJSON

変更する箇所

フィールド
内容

id

本ジョブを一意に識別する文字列。ハイフンを使い、アンダースコアは使いません。ファイル名は id と一致させます (例: "id": "my-tool" のときは my-tool.json)。異種OSが混在するフリートへ展開する場合は、Windows版およびmacOS版と同じIDに揃えてください。

name

ログや管理画面に表示する名称

tasks[0].command

実行ファイル名。Linuxでは多くの場合小文字。エージェントは Jobs/bin/{command}/{command} を自動解決

tasks[0].executablePath

実行ファイルのフルパス。Linuxでのエージェントのデフォルトインストールルートは /opt/KeeperPrivilegeManager。別パスで展開している場合は管理者へ確認

tasks[0].arguments

実行ファイルが受け付けるフラグ。{KeeperApiBaseUrl} は削除せず残す。エージェントが実行時にローカルのHTTPS APIベースURLへ差し替え

schedule.intervalMinutes

実行間隔 (分)

tasks[0].timeoutSeconds

エージェントがタスクを強制終了するまでの最大実行時間

バイナリ名: Linuxの実行ファイルに .exe はありません。commandexecutablePath の両方に、拡張子なしの名前を使います。慣例として mytool のような小文字名を使い、MyTool のような表記は避けることが多いですが、エージェントは指定した名前で解決します。

ファイルのパーミッション: バイナリはエージェントのサービスアカウントから実行可能である必要があります。デプロイ後に以下のコマンドを実行します。

エージェントが特定ユーザーで動いている場合 (管理者に確認)、そのユーザーがバイナリおよび親フォルダに対する読み取りと実行権限を持つようにしてください。

osFilter と検証: linux だけが true のため、WindowsおよびmacOS上のエージェントは本ジョブをスキップします。ジョブの osFilter が現在のOSと一致しない場合、バリデータはバイナリ存在チェックも行いません。そのため、Windowsホストから登録しても、Linux用のパスがディスク上にあるかどうかは検証されません。

Linuxでのプロセス信頼: Linuxではエージェントのプロセス信頼は、主としてジョブランナーがバイナリを起動した事実に基づきます。証明書チェックの経路を避けるため、手動起動ではなくジョブタスクから常に起動してください。

デプロイ前に

  1. 先にバイナリをデプロイする: POST /api/Jobs の呼び出し前に、エンドポイントの executablePath にバイナリを配置します。バリデータは呼び出し時点で存在を確認します。

  2. 実行権限を付与する。 コピー後にバイナリに対して chmod +x を実行します。

  3. インストールルートを確認する: /opt/KeeperPrivilegeManager がLinuxでの一般的なデフォルトです。デプロイ前に管理者へ確認してください。

  4. ファイル名は id と一致させる: "id""my-tool" なら my-tool.json として保存します。

デプロイ

保存前に検証します。

ジョブを作成します。

手動トリガーで確認します。

最終更新