BigFix クラウド・リソースへのエージェントのインストール
パッチ 2 以降では、対応する BigFix クラウド・プラグインを通じてクラウド・プロバイダー・サービスを使用して、検出されたクラウド・リソース (AWS および Azure) に BigFix エージェントをインストールできます。
BigFix 検出されたクラウド・リソースにエージェントをデプロイできるようするために、プラットフォームにより、BigFix Enterprise Suite (BES) サポートで 2 つの新しいタスク (クラウド・プロバイダーごとに固有) が提供されます。
タスクは、BigFix コンソールと WebUI の両方から使用できます。クラウド・プロバイダーに応じて、次のいずれかのタスクを使用します。
4774 Install BigFix Client through Amazon Web Services
4775 Install BigFix Client through Microsoft Azure
タスクの実行内容
- software.bigfix.com からインストール・スクリプトを取得します。
- software.bigfix.com から、プラグイン・ポータルのバージョンに基づいてクライアント・インストーラーを取得します。
- 未認証リレーから、タスクへの入力のために提供されるデプロイメント・マストヘッドを取得します。
- クライアントをインストールし、未認証リレーに登録します。
- クライアントの登録が完了するまで待機します。
要件
この新しいインストール機能を使用するには、検出されたクラウド・リソースが、クラウド・プロバイダー固有の多数の構成要件を満たしている必要があります。これらの要件のサブセットは、タスクに含まれる関連性によって自動的にチェックされます。クラウド・リソースが正しく構成されていることを確認する必要があります。
- プロバイダー固有のクラウド・エージェントを、クラウド・リソースにインストールする必要があります。詳細については、「AWS」および「Azure」を参照してください。
- クラウド・リソースはアクティブで、実行中である必要があります。
- 未認証リレーの名前 (タスクの実行中に入力として指定)。詳しくは、入力としてのリレー名を参照してください。
- クラウド・リソースで実行されているオペレーティング・システムを、BigFix クライアントがサポートしている必要があります。詳しくは、サポートされるオペレーティング・システムを参照してください。
- プラグイン・ポータルは、最低でもパッチ 2 レベルである必要があります。
重要な考慮事項
- 認証リレー
- インストール時に設定されるカスタム・クライアント設定
AWS の要件
VM の要件
- アクティブで実行中の AWS Systems Manager (SSM) エージェントが VM に存在する必要があります。
- IAM インスタンス・プロファイルが存在し、IAM 役割を介してそのプロファイルに
AmazonSSMManagedInstanceCore
IAM ポリシーを関連付ける必要があります。IAM インスタンス・プロファイルは VM にアタッチする必要があります。この要件により、AWS Systems Manager は、VM でコマンドを安全に実行できます。
IAM ID の要件
AWS Cloud Plugin で設定する場合、IAM ID (ユーザーとロール) が常に満たす必要がある基本的な要件は次のとおりです。
- MFA を無効にする必要があります
- プログラムによるアクセス・タイプが必要です
AWS Cloud Plugin のクレデンシャルとして使用するアクセス・キー ID と シークレット・アクセス・キーのペアに関連付けられた IAM ユーザーで BigFix エージェントをインストールする場合、必要な権限は以下のとおりです。
- 少なくとも次の ec2 権限が必要です。ec2:Describe* アクションを * リソースで許可する必要があります。
- 少なくとも次の ssm 権限が必要です。ssm:DescribeInstanceInformation、ssm:SendCommand、および ssm:GetCommandInvocation アクションを * リソースで許可する必要があります。
AWS Cloud Plugin で構成された IAM ユーザーが引き受けることができる IAM ロールで BigFix エージェントをインストールする場合、必要な権限は次のとおりです。
ユーザーの場合:
- 対象のロールで sts:AssumeRole を実行できる必要があります。
ロールの場合:
- 少なくとも次の ec2 権限が必要です。ec2:Describe* アクションを * リソースで許可する必要があります。
- 少なくとも次の ssm 権限が必要です。ssm:DescribeInstanceInformation、ssm:SendCommand、および ssm:GetCommandInvocation アクションを * リソースで許可する必要があります。
- ロールを引き受ける IAM ユーザーは、ロールの信頼された ID である必要があります。
前提条件の完全なリストについては、「Systems Manager の前提条件」を参照してください。2017 年 9 月以降の日付の Amazon Linux ベース API には、デフォルトで Systems Manager が含まれます。他の Amazon Machine Image (AMI) またはカスタム AMI では、Systems Manager (SSM) エージェントがまだ存在しない場合は、手動でインストールする必要があります。オペレーティング・システム・サポートの詳細については、「Systems Manager でサポートされるオペレーティング・システム」を参照してください。
Azure の要件
- VM エージェントが VM に存在する必要があります。 Azure には、プラットフォームに基づいて、コマンドを実行する 2 つのエージェントが用意されています。
- オペレーター (ディスカバリー資格情報) には、少なくともアクション権限が必要です。
エージェントが存在しない場合、OS の要件が満たされているのであれば、前の参照で示したようにエージェントをインストールできます。Azure VM でコマンドを実行するには、オペレーターが少なくともアクション権限を持っている必要があります。Microsoft.Compute/virtualMachines/runCommand/action
.コントリビューター役割またはそれ以上の組み込みの役割には、この権限はデフォルトで含まれます。ただし、特定のカスタム役割を定義することもできます。
入力としてのリレー名
- リレーのホスト名。例えば、「myhostname」と入力します。
- リレーの完全修飾ドメイン名 (FQDN)。例えば、「myhostname.mydomain.com」と入力します。
- リレーの IP アドレス。例えば、「10.10.10.10」と入力します。
サポートされるオペレーティング・システム
- AWS の SSM エージェント
- Azure の VM エージェント
したがって、プロバイダー・エージェントでサポートされている一部のオペレーティング・システムが、BigFix でサポートされない場合があります。このオペレーティング・システムのサブセットは、将来変更される可能性があります。
AWS VM でサポートされる OS
AWS SSM エージェントが現在サポートされているオペレーティング・システムのタイプについては、「AWS SSM でサポートされる OS」を参照してください。
現在サポートされている BigFix エージェントのオペレーティング・システムについて詳しくは、「Detailed system requirements」を参照してください。
Azure VM でサポートされる OS
現在サポートされている BigFix エージェントのオペレーティング・システムについて詳しくは、「Detailed system requirements」を参照してください。
トラブルシューティング
- 以下に示すカスタム終了コードのリストを確認できます。
- ActionResultsStore.db という名前の SQLite データベースであるトラブルシューティング機能を使用できます。このデータベースは、クラウド・プラグインごとに使用できます。
- アクション・ログを確認できます。ログは手動で確認できます。デフォルトの場所については後述します。
インストール・スクリプトの終了コード
終了コード | 原因 | 解決方法 |
---|---|---|
209 | クライアント・ログ・ファイルが見つかりません。この原因として考えられるのは、インストール対象のクライアントを指定の時間内にインストールできなかったことです。 | クライアントが登録されるまで数分待機してください。問題が解決しない場合、クライアントを手動でアンインストールし、再度インストールしてください。 |
210 | クライアントの登録が失敗しました。ターゲットがリレーに接続できないため、またはマストヘッドが破損しているため、これが発生した可能性があります。 | ターゲット・インスタンスがリレーの FQDN、IP、またはホスト名を解決するかどうか、およびリレーのマストヘッドで指定されたホスト名を解決するかどうかを確認してください。 |
211 | BESClient サービスが見つかりません。 | /tmp/BigFix または %TEMP%/BigFix で、ターゲットのクライアント・インストール・ログを確認してください。クライアントをアンインストールし、再度インストールしてください。 |
212 | クライアントは既にインストールされています。ターゲットにクライアントのインストールが存在します。 | |
213 | 入力パラメーターが欠落しています。これは、手動エラーが原因である可能性があります。 | プロンプトが表示されたら入力パラメーターの値を入力し、再試行してください。 |
215 | チェックサムによって誤った値が返されました。ダウンロードしたインストール・スクリプトが破損しています。 | ターゲットにネットワーク接続があるかどうか、および BES サポート・サイトに到達できるかどうかを確認してください。 |
216 | Linux ターゲットで curl および wget ユーティリティーが見つかりません。 | Linux ターゲットに wget または curl ユーティリティーをインストールしてください。 |
217 | 取得した OS データで、スクリプトを実行できません。この原因として考えられるのは、ターゲットにインストールされている OS がサポートされていないこと、またはターゲットから返される OS に関する情報が不十分であることです。 | クライアントを手動でインストールするか、CDT を使用してインストールしてください。 |
218 | 十分な OS データが取得されていません。この原因として考えられるのは、ターゲットにインストールされている OS がサポートされていないこと、またはターゲットから返される OS に関する情報が不十分であることです。 | クライアントを手動でインストールするか、CDT を使用してインストールしてください。 |
219 | Linux ターゲットで shasum および sha256 を使用できません。 | Linux ターゲットに shasum または sha256 ユーティリティーをインストールしてください。 |
220 | インストーラー・ファイルが見つかりません。 | ターゲットが software.bigfix.com に到達できるかどうかを確認してください。 |
221 | マストヘッド・ファイルが見つかりません。 | ターゲットがリレーに到達できるかどうかを確認してください。リレーが認証を行う場合は、クライアントを手動でインストールするか、CDT を使用してインストールしてください。 |
終了コード | 原因 | 解決方法 |
---|---|---|
6 | Linux ターゲットで、curl エラー「Could not resolve host」が発生しています。 | ターゲットが software.bigfix.com、リレー、および BES サポート・サイトに到達できるかどうかを確認してください。 |
22 | Linux ターゲットで、curl エラー「Request has encontered an error greater than 400」が発生しています。 | ターゲットが software.bigfix.com、リレー、および BES サポート・サイトに到達できるかどうかを確認してください。 |
ActionResultsStore データベース
ActionResultsStore データベースは、各プラグイン・フォルダー内に保存されます。このデータベースには、失敗状態またはエラー状態のアクションの結果が格納されます。
- ActionID
- DeviceID
- InstanceID
- Results
- Date
- status: アクションの状況を表します。
- exitCode: 使用可能な終了コードがある場合。
- output: プロバイダーへの要求の出力。
{
"status":"Error",
"exitCode":1,
"output":{
"CloudWatchOutputConfig":{
"CloudWatchLogGroupName":"",
"CloudWatchOutputEnabled":false
},
"CommandId":"461eee16-e70f-4cf9-b64c-
e2902e355f49",
"Comment":"BES Plugin Shell Cmd",
"DocumentName":"AWS-RunShellScript",
"DocumentVersion":"",
"ExecutionElapsedTime":"PT0.011S",
"ExecutionEndDateTime":"2020-11
-20T08:08:40.693Z",
"ExecutionStartDateTime":"2020-11-20T08:08:40.693Z",
"InstanceId":"i-
04f8e15e41aaf1544",
"PluginName":"aws:runShellScript",
"ResponseCode":1,
"StandardErrorContent":"mkdir: missing operand\nTry 'mkdir --help' for more
information.\nfailed to run commands: exit status 1",
"StandardErrorUrl":"",
"StandardOutputContent":"",
"StandardOutputUrl":"",
"Status":"Failed",
"StatusDetails":"Failed"
}
}
Q: rows of statement <sql statement> of sqlite database of file "ActionResultsStore.db"
of folder <plugin folder>
1 日 1 回、ActionResultsStore データベースは自動的にクリーンアップされます。どのクリーニングでも、指定した日数より古いエントリーがすべて削除されます。この日数は、各プラグインで使用できる <plugin_name>_ActionResultsStore_CleanupDays
という名前の設定によって構成できます。この設定の値は、0 (ゼロ) より大きくする必要があり、日数で指定します。
インストーラー、マストヘッド、およびログ・ファイルの場所
インストーラー、マストヘッド、およびインストール・タスクの結果の一部であるログ・ファイルは、「BigFix」という名前のフォルダーに格納されます。このフォルダーは、各ターゲット・インスタンス内の次のディレクトリーで見つけることができます。
- Windows の場合
- %LOCALAPPDATA%\BigFix
- Linux の場合
- /tmp/BigFix