Nessuscli

Tenable Nessus 機能の一部は、nessuscli ユーティリティを使用して、コマンドラインインターフェース (CLI) で管理できます。

これを使用して、ユーザーアカウントの管理、詳細設定の変更、デジタル証明書の管理、バグの報告、Tenable Nessus の更新、必要なライセンス情報の取得を行うことができます。

注意: コマンドはすべて管理者権限で実行する必要があります。

Nessuscli の構文

オペレーティングシステム

コマンド

Windows

C:\Program Files\Tenable\Nessus\nessuscli.exe <cmd> <arg1> <arg2>

macOS

# /Library/Nessus/run/sbin/nessuscli <cmd> <arg1> <arg2>

Linux

# /opt/nessus/sbin/nessuscli <cmd> <arg1> <arg2>

このトピックでは、次のコマンドタイプについて説明します。

Nessuscli のコマンド

コマンド 説明
ヘルプコマンド

nessuscli help

Tenable Nessus コマンドのリストを表示します。

help の出力は Tenable Nessus ライセンスによって異なる場合があります。

nessuscli <cmd> help

nessuscli help の出力結果に表示された特定のコマンドに関する詳細なヘルプ情報を表示します。

バックアップコマンド

nessuscli backup --create <backup_filename>

使用しているライセンスと設定を含む、Tenable Nessus インスタンスのバックアップファイルを作成し、<Unix epoch timestamp>.tar.gz に加えます。このコマンドではスキャン結果はバックアップされません。

例:

nessuscli backup --create <december-backup> を実行する場合、Tenable Nessus はバックアップファイル december-backup.1671720758.tar.gz.

詳細は、Tenable Nessus のバックアップを参照してください。

nessuscli backup --restore <path/to/backup_filename>

Tenable Nessus の以前に保存されたバックアップを復元します。

詳細は、Tenable Nessus の復元を参照してください。

バグレポートコマンド

バグレポートコマンドは、問題の診断に役立つ Tenable, Inc. を送信できるアーカイブを作成します。スクリプトはデフォルトではインタラクティブモードで実行されます。

nessuscli bug-report-generator

システム診断のアーカイブを作成します。

引数を指定せずにこのコマンドを実行すると、値を求められます。

--quiet : ユーザーにフィードバックを求めることなく、バグレポートジェネレーターが実行されます。

--scrub : quiet モード時に、バグレポートジェネレーターによって IPv4 アドレスの最後の 2 つの 8 ビットがサニタイズされます。

--full : quiet モード時に、バグレポートジェネレーターによって追加データが収集されます。

ユーザーコマンド

nessuscli rmuser <username>

Tenable Nessus ユーザーを削除できます。

nessuscli chpasswd <username>

ユーザーのパスワードを変更できます。Tenable Nessus ユーザーの名前を入力するプロンプトが CLI に表示されます。パスワードが CLI の画面にエコー表示されることはありません。

nessuscli adduser <username>

Tenable Nessus のユーザーアカウントを追加できます。

CLI から、ユーザー名、パスワードの入力、ユーザーに管理者タイプのアカウントの保有を許可するかどうかの選択を求められます。また、この新しいユーザーアカウントにユーザールールを追加することも求められます。

nessuscli lsuser

Tenable Nessus ユーザーのリストを表示します。

Fetch コマンド

Tenable Nessus 登録を管理し、更新プログラムを取得する

nessuscli fetch --register <Activation Code>

アクティベーションコードを使用して Tenable Nessus をオンライン登録します。

例:

# /opt/nessus/sbin/nessuscli fetch --register xxxx-xxxx-xxxx-xxxx

nessuscli fetch --register-only <Activation Code>

アクティベーションコードを使用して、Tenable Nessus をオンライン登録しますが、プラグインや中核的な更新プログラムは自動的にダウンロードされません。

例:

# /opt/nessus/sbin/nessuscli fetch --register-only xxxx-xxxx-xxxx-xxxx

nessuscli fetch --register-offline nessus.license

https://plugins.nessus.org/v2/offline.php から入手した nessus.license ファイルを使用して Tenable Nessus を登録し、Tenable Nessusオフラインモードで設定します

警告: Tenable Nessus をオフラインモードで起動すると、Tenable Nessus フィードへの接続を必要とするすべての nessuscli コマンドが無効になります (例: nessuscli update および nessuscli fix --set_scanner_update_channel=)。Tenable Nessus がオフラインモードの場合、fix コマンドを使用してオフラインモードを無効にすることはできません。

nessuscli fetch --check

Tenable Nessus が適切に登録されているかどうかと、更新プログラムを入手可能かどうかが表示されます。

nessuscli fetch --code-in-use

Tenable Nessus で使用されている Nessus アクティベーションコードが表示されます。

nessuscli fetch --challenge

オフライン登録の実行時に使用する必要のあるチャレンジコードが表示されます。
チャレンジコードの例: aaaaaa11b2222cc33d44e5f6666a777b8cc99999

nessuscli fetch --security-center

Tenable Security Center に接続されるように Tenable Nessus を準備します。

警告: Tenable Nessus インスタンスを Tenable Security Center に切り替えたくない場合は、このコマンドを使用しないでください。このコマンドは、Tenable Nessus スキャナーまたは Manager を Tenable Security Center 管理スキャナーに不可逆的に変更します。その結果、ユーザーインターフェースに複数の変更が加えられます (たとえば、サイトのロゴが変更されたり、[Sensors] (センサー) ページにアクセスできなくなったりします)。
修正コマンド

nessuscli fix

登録のリセット、ネットワークインターフェースの表示、設定されている詳細設定の一覧表示を行います。

--secure オプションを選択すると、登録関連情報が含まれる暗号化の環境設定に影響が及びます。

--list--set --get--delete コマンドを使用して、環境設定を変更したり、表示したりできます。

nessuscli fix [--secure] --list

nessuscli fix [--secure] --set <setting=value>

nessuscli fix [--secure] --get <setting>

nessuscli fix [--secure] --delete <setting>

nessuscli fix --list-interfaces

使用中のマシンに接続されているネットワークアダプターが一覧表示されます。

nessuscli fix --set listen_address=<address>

アドレス <address> (マシン名でなく IP) での接続のみをリッスンするように指示するために使用します。このオプションは、nessusd をゲートウェイで実行している場合や nessusd に外部者が接続しないようにする場合に有用です。

nessuscli fix --show

すべての詳細設定を、設定していないものも含めて表示します。詳細設定を設定していない場合は、CLI にデフォルト値が表示されます。

注意: このコマンドは、すべての Tenable Nessus ライセンスタイプで共有されている設定だけをリストします。つまりこのコマンドは、Tenable Nessus ExpertTenable Nessus ProfessionalTenable Nessus Manager に固有の設定をリストしません。

nessuscli fix --reset

このコマンドにより、すべての登録情報と環境設定が削除され、Tenable Nessus は登録されていない状態で実行されます。Tenable Nessus Manager ではリセット後も同じリンクキーが保持されます。

nesuscli fix --reset を実行する前に、実行中のスキャンが完了したことを確認し、Tenable Nessus の開始または停止 で説明したようにessusddaemonまたはservice を停止します。

nessuscli fix --reset-all

Tenable Nessus が初期状態にリセットされ、すべての登録情報、設定、データ、ユーザーが削除されます。

警告 : この操作を取り消すことはできません。完全リセットを実行する前に、Tenable サポート に連絡してください。

nessuscli fix --set agent_update_channel=<value>

(Tenable Nessus Manager にリンクされたエージェントのみ)

エージェントアップデートプランを設定して、エージェントが自動的にアップデートするバージョンを指定します。

  • ga — 最新バージョンが一般公開 (GA) され次第、自動的に最新の Tenable Nessus Agent バージョンに更新されます。

  • ea - 最新バージョンが早期アクセス (EA) 用にリリースされ次第、自動的に最新の Tenable Nessus バージョンへと更新します。通常一般公開よりも数週間早いタイミングです。

  • stable - 自動的に最新の Tenable Nessus バージョンに更新しません。Tenable が設定した旧バージョンの Tenable Nessus の状態を維持します。これは通常、最新の一般公開バージョンよりも 1 リリース前のものとなりますが、8.10.0 よりも前のバージョンにはなりません。Tenable Nessus の新しいバージョンがリリースされると、Tenable Nessus インスタンス のソフトウェアバージョンは更新されますが、最新のリリースよりも前のバージョンに留まります。

注意: Tenable Nessus Manager にリンクされているエージェントの場合は、Tenable Nessus Manager nessuscli ユーティリティから agent_update_channel コマンドを実行する必要があります。Tenable Vulnerability Management にリンクされているエージェントの場合は、エージェントの nessuscli ユーティリティから agent_update_channel コマンドを実行する必要があります。

nessuscli fix --secure --get agent_linking_key

一意のエージェントリンクキーを取得します。

注意: このリンクキーは、エージェントをリンクする目的でのみ使用できます。スキャナーまたは子ノードとのリンクには使用できません。
nessuscli fix --secure --get child_node_linking_key

一意の子ノードリンクキーを取得します。

注意: このリンクキーは、子ノードをリンクする目的でのみ使用できます。エージェントまたはスキャナーとのリンクには使用できません。
nessuscli fix --secure --get scanner_linking_key

一意のスキャナーリンクキーを取得します。

注意: このリンクキーは、スキャナーをリンクする目的でのみ使用できます。エージェントまたは子ノードとのリンクには使用できません。
nessuscli fix --set niap_mode=enforcing

Tenable Nessus に NIAP モードを適用します。NIAP モードの詳細については、NIAP に準拠する Tenable Nessus の設定 を参照してください。

nessuscli fix --set niap_mode=non-enforcing

Tenable Nessus の NIAP モードを無効にします。NIAP モードの詳細については、NIAP に準拠する Tenable Nessus の設定 を参照してください。

nessuscli fix --set fips_mode=enforcing

Tenable Nessus 通信およびデータベース暗号化に対して最新の検証済み FIPS モジュールを適用します。FIPS モジュールはスキャン暗号化に影響しません。

注意: NIAP モードを適用すると、Tenable Nessus は FIPS モジュールも適用します。詳細は、NIAP に準拠する Tenable Nessus の設定を参照してください。

nessuscli fix --set fips_mode=non-enforcing

Tenable Nessus 通信およびデータベース暗号化に対して FIPS モジュールを無効にします。

注意: NIAP モードを無効にすると、Tenable Nessus は FIPS モジュールも無効にします。詳細は、NIAP に準拠する Tenable Nessus の設定を参照してください。

nessuscli fix --set path_to_java=<カスタムファイルパス>

PDF エクスポート用の Java へのカスタムファイルパスを設定します。設定しない場合、Tenable Nessus はシステムパスを使います。

Java バイナリを含む絶対ファイルパスを使用する必要があります。たとえば、Tenable Nessus のインストールが /usr/lib/jvm/java-17-openjdk-amd64 にある場合、カスタムファイルのパスは /usr/lib/jvm/java-17-openjdk-amd64/bin にする必要があります。

nessuscli fix --set global.path_to_docker=<custom path>

Tenable Nessus Expert のウェブアプリケーションスキャン用の Docker へのカスタムファイルパスを設定します。Tenable Nessus Expert は、デフォルトで Docker システムパス (例: /usr/bin/docker) を使用します。

絶対ファイルパスを使用する必要があります。

nessuscli fix --set old_user_files_cleanup_hours=

Tenable Nessus が古いユーザーファイル (/nessus/users/<ユーザー>/files ディレクトリ内) を削除するまでの時間間隔 (1 時間単位) を設定します。この設定は、ユーザーファイルが多すぎることが原因で生じるスキャンエラーに対処する際に活用できます。

この設定のデフォルトおよび最小値は 0 です。この設定に最大値はありません。設定がゼロに設定されている場合、Tenable Nessus はファイルのクリーンアップを実行しません。

nessuscli fix --set <password_setting>=<value>

ユーザーパスワードのパラメーターと制限を設定します。このコマンドを使用して、次の設定を編集できます。

  • パスワードの複雑さ (passwd_complexity) - Tenable Nessus パスワードが 8 文字以上で、大文字、小文字、特殊文字、数字から 3 種類以上を使用する必要があるかどうかを決定します。この設定はデフォルトではオフになっています。

  • セッションタイムアウト (xmlrpc_idle_session_timeout) - ウェブセッションのタイムアウトを分単位で定義します。セッションのアイドル時間がこのタイムアウトの値を超えると、Tenable Nessus はユーザーを自動的にログアウトさせます。この設定はデフォルトで 30 に設定されています。

  • 最大ログイン試行 (user_max_login_attempt) - アプリケーションがアカウントをロックアウトするまでに Tenable Nessus で許可される、ユーザーの最大ログイン試行回数を定義します。この値をゼロに設定すると、機能は無効になります。この設定はデフォルトで 5 に設定されています。

  • 最小パスワード長 (min_password_len) - この設定は、デフォルトで 8 に設定されています。アカウントのパスワードの最小文字数を定義します。

  • ログイン通知 (passwd_notifications) - Tenable Nessus がログイン通知を表示できるかどうかを決定します。ログイン通知を使用すると、最後に成功したログインと失敗したログイン (日付、時刻、IP)、また最後に成功したログイン以降に失敗したログインがあるかどうかを確認できます。この設定はデフォルトではオフになっています。

注意: パスワード設定を行うには、システム管理者ロールが必要です。詳細は、ユーザーを参照してください。

ヒント: これらの設定は、[Password Management] (パスワード管理) ページで管理することもできます。各パスワード設定のデフォルト値と有効な値を確認するには、パスワード管理をご覧ください。

証明書コマンド

nessuscli mkcert-client

Tenable Nessus サーバー向けの証明書を作成します。

nessuscli mkcert [-q]

デフォルトの値で証明書を作成します。

-q は静かに作成します。

nessuscli import-certs --serverkey=<server key path> --servercert=<server certificate path> --cacert=<CA certificate path> [--serverchain=<server chain pem path>]

サーバーキー、サーバー証明書、CA 証明書、serverchain.pem ファイルを検証し、一致することを確認します。その後、ファイルを正しい場所にコピーします。

serverchain パラメーターはオプションです。

ソフトウェア更新コマンド

nessuscli update

デフォルトでは、このツールは、Tenable Nessus のユーザーインターフェースで選択されたソフトウェアの更新オプションに基づいて更新を行います。

注意: このコマンドは、スタンドアロンの Tenable Nessus スキャナーでのみ機能します。このコマンドは、Tenable Vulnerability Management または Tenable Security Center によって管理されるスキャナーに対しては機能しません。

nessuscli update --all

Tenable Nessus の全コンポーネントに更新プログラムを適用します。

注意: このコマンドは、スタンドアロンの Tenable Nessus スキャナーでのみ機能します。このコマンドは、Tenable Vulnerability Management または Tenable Security Center によって管理されるスキャナーに対しては機能しません。

nessuscli update --plugins-only

Tenable Nessus のプラグインのみに更新プログラムを強制的に適用します。

注意: このコマンドは、スタンドアロンの Tenable Nessus スキャナーでのみ機能します。このコマンドは、Tenable Vulnerability Management または Tenable Security Center によって管理されるスキャナーに対しては機能しません。

nessuscli update <tar.gz filename>

プラグインフィードから更新プログラムを取得する代わりに、TAR ファイルを使用して Tenable Nessus のプラグインを更新します。TAR ファイルは、Tenable Nessus をオフラインで管理する ~ Download and Copy Pluginsの手順で取得します。

nessuscli fix --set scanner_update_channel=<value>

(Tenable Nessus Professional および Tenable Vulnerability Management 管理スキャナーのみ)

Tenable Nessusを設定して、Tenable Nessus が自動的にアップデートするバージョンを指定します。

注意 : アップデートプランを変更して自動更新を有効にすると、選択したプランに相当するバージョンと合わせるために、Tenable Nessus が即座に更新する場合があります。Tenable Nessus はバージョンのアップグレードまたはダウングレードのいずれかを行う場合があります。

値 :

  • ga : 最新バージョンが一般公開 (GA) され次第、自動的に最新の Tenable Nessus バージョンへと更新されます。注意: この日付はバージョンが一般公開された日と同じ日付です。

  • ea: 最新バージョンが早期アクセス (EA) 用にリリースされ次第、自動的に最新の Tenable Nessus バージョンへと更新します。通常一般公開よりも数週間早いタイミングです。

  • stable :自動的に最新の Tenable Nessus バージョンに更新しません。Tenable が設定した旧バージョンの Tenable Nessus の状態を維持します。これは通常、最新の一般公開バージョンよりも 1 リリース前のものとなりますが、8.10.0 よりも前のバージョンにはなりません。Tenable Nessus の新しいバージョンがリリースされると、Tenable Nessus インスタンス のソフトウェアバージョンは更新されますが、最新のリリースよりも前のバージョンに留まります。

管理ツールコマンド

管理ツールに接続されている管理対象スキャナーとエージェントのプラグイン更新プログラムを生成するために使用されます。

nessuscli manager download-core

リモート管理されるエージェントとスキャナー用コアコンポーネントの更新プログラムがダウンロードされます。

nessuscli manager generate-plugins

リモート管理されるエージェントとスキャナー用のプラグインアーカイブが生成されます。

管理対象スキャナーコマンド

リモート管理されるスキャナーをリンクする、リンク解除する、ステータスを表示するために使用します。

nessuscli managed help

 nessuscli-managed コマンド および構文を表示します。

nessuscli managed link --key=<key> --host=<host> --port=<port> [optional parameters]

未登録のスキャナーをマネージャーにリンクします。

注意: スキャナーをすでに登録している場合は、CLI を介してスキャナーをリンクできません。ユーザーインターフェースからリンクするか、スキャナーをリセットして登録を解除できます (ただし、スキャナーデータはすべて失われます)。

オプションのパラメーター :

  • --name : スキャナーの名前。

  • --ca-path : Manager のサーバー証明書の検証に使用するカスタム CA 証明書。

  • --groups: スキャナーを追加する、1 つ以上の既存のスキャナーグループ。コンマ区切りリストで複数のグループをリストにします。グループ名にスペースが含まれる場合は、リスト全体を引用符で囲みます。


    例: --groups="Atlanta,Global Headquarters"

    注意 : スキャナーグループ名は、大文字と小文字を区別し、正確に一致する必要があります。

  • --proxy-host: プロキシサーバーのホスト名または IP アドレス。

  • --proxy-port: プロキシサーバーのポート番号。

  • --proxy-username: プロキシサーバーへのアクセスと使用が許可されているユーザーアカウント名。

  • --proxy-password: ユーザー名として指定したユーザーアカウントのパスワード。

  • --proxy-agent: プロキシで事前定義されているユーザーエージェントが必要な場合は、ユーザーエージェント名。

  • --aws-scanner: Tenable Nessus スキャナーを AWS スキャナーとしてリンクするように指定します。

    注意: このオプションは、Tenable Nessus スキャナーが AWS インスタンスですでに実行されていないと有効になりません。

    警告: --aws_scanner は、Amazon Linux 2023 AMI 環境ではサポートされていません。

nessuscli managed unlink

管理対象スキャナーとマネージャーとのリンクを解除します。

nessuscli managed status

管理対象スキャナーの状態を特定します。

Dump Command

nessuscli dump --plugins sbin ディレクトリに plugins.xml ファイルを追加します。たとえば、Linux で /opt/nessus/sbin/nessuscli dump --plugins を実行することにより、plugins.xml ファイルが /opt/nessus/sbin/plugins ディレクトリに追加されます。

Node Commands

クラスター環境でノードのリンクを表示および変更するために使用されます。

nessuscli node link --key=<key> --host=<host> --port=<port>

クラスター環境で子ノードを親ノードにリンクします。

キーホスト、およびポートについての詳細は、ノードをリンクする を参照してください。

nessuscli node unlink 親ノードと子ノードのリンクを解除します。
nessuscli node status 親ノードへの子ノードのリンクの有無、およびリンクするエージェント数について表示されます。