新規サーバー証明書と CA 証明書をアップロードします。
こちらの手順では、コマンドラインからカスタムサーバー証明書および認証局 (CA) 証明書を Nessus ウェブサーバーにアップロードする方法について説明します。
nessuscli import-certs コマンドを使用してサーバーキー、サーバー証明書、および CA 証明書を検証し、それぞれが一致することを確認し、適切な場所にファイルをコピーします。また、手動でファイルをコピーできます。
始める前に
-
有効なサーバー証明書およびカスタム CA があることを確認します。カスタム CA およびサーバー証明書を内蔵の Tenable Nessus mkcert ユーティリティを利用して作成します (まだない場合)。
-
社内またはサードパーティの認証局 (CA) から証明書を取得する場合は、証明書署名リクエスト (CSR) を生成します。証明書には、Tenable Nessus サーバーのホスト名または IP アドレスに一致するサブジェクト代替名 (SAN) が含まれている必要があります。最新のブラウザでは、コモンネーム (CN) フィールドにのみ依存する証明書は拒否されます。
Windows: certreq を使用して CSR を生成する
-
nessus-csr.inf という名前のファイルを作成し、以下の内容を記述します。CN、O、C、DNS 名、IP アドレスを、Nessus サーバーの値に置き換えてください。
[Version]
Signature="$Windows NT$"
[NewRequest]
Subject = "CN=nessus.example.com,O=Your Organization,C=US"
KeySpec = 1
KeyLength = 2048
Exportable = TRUE
MachineKeySet = TRUE
RequestType = PKCS10
KeyUsage = 0xa0
[EnhancedKeyUsageExtension]
OID = 1.3.6.1.5.5.7.3.1
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "dns=nessus.example.com&"
_continue_ = "ipaddress=192.168.1.100&"
注意: ユーザーがブラウザから Nessus にアクセスする際に使用する情報と一致する dns= または ipaddress= のエントリを、少なくとも 1 つ含めてください。このセクションを省略すると、最新のブラウザでは証明書が拒否されます。
-
CSR を生成します。
certreq -new nessus-csr.inf nessus.csr
-
nessus.csrを CA に送信します。CA は署名付きの証明書ファイル (通常は .cer または .pem) を返します。
-
CA から DER 形式 (.cer) の証明書が返された場合は、PEM 形式に変換します。
certutil -encode nessus-signed.cer servercert.pem
-
秘密鍵をエクスポートします。Windows の証明書マネージャー (certlm.msc) で、[Personal] > [Certificates] (個人 > 証明書) の下にある対象の証明書を見つけて右クリックします。[All Tasks] > [Export] (すべてのタスク > エクスポート) を選択し、秘密鍵を含む PFX としてエクスポートします。次に、OpenSSL を使用して PEM に変換します。
openssl pkcs12 -in nessus.pfx -nocerts -nodes -out serverkey.pem
注意:この手順では、.inf ファイル内に Exportable = TRUE の行が必要です。これがないと、Windows では秘密鍵のエクスポートが許可されません。
-
1 つのコマンドを使用して、カスタム CA 証明書をアップロードする方法
-
CLI から Tenable Nessus にアクセスします。
-
以下を入力し、各ファイルについて、サーバーキー、サーバー証明書、CA 証明書を適切なパスおよびファイル名に置き換えます。
nessuscli import-certs --serverkey=<server key path> --servercert=<server certificate path> --cacert=<CA certificate path>
Tenable Nessus はファイルを検証し、一致することを確認し、適切な場所にコピーします。
CLI を使用して、手動でカスタムサーバー証明書と CA 証明書をアップロードする方法
-
Nessus サーバーを停止します。
-
オリジナルの Nessus CA、サーバー証明書、キーをバックアップします。
ヒント: お使いのオペレーティングシステムのデフォルトの証明書ファイルの場所については、デフォルトの証明書ファイルは、ご使用のオペレーティングシステムに応じて、次のディレクトリにあります。を参照してください。
Linux の例
cp /opt/nessus/com/nessus/CA/cacert.pem /opt/nessus/com/nessus/CA/cacert.pem.orig
cp /opt/nessus/var/nessus/CA/cakey.pem /opt/nessus/var/nessus/CA/cakey.pem.orig
cp /opt/nessus/com/nessus/CA/servercert.pem /opt/nessus/com/nessus/CA/servercert.pem.orig
cp /opt/nessus/var/nessus/CA/serverkey.pem /opt/nessus/var/nessus/CA/serverkey.pem.orig
Windowsの例
copy C:\ProgramData\Tenable\Nessus\nessus\CA\cacert.pem C:\ProgramData\Tenable\Nessus\nessus\CA\cacert.pem.orig
copy C:\ProgramData\Tenable\Nessus\nessus\CA\cakey.pem C:\ProgramData\Tenable\Nessus\nessus\CA\cakey.pem.orig
copy C:\ProgramData\Tenable\Nessus\nessus\CA\servercert.pem C:\ProgramData\Tenable\Nessus\nessus\CA\servercert.pem.orig
copy C:\ProgramData\Tenable\Nessus\nessus\CA\serverkey.pem C:\ProgramData\Tenable\Nessus\nessus\CA\serverkey.pem.orig
macOS の例
cp /Library/NessusAgent/run/com/nessus/CA/cacert.pem /Library/NessusAgent/run/com/nessus/CA/cacert.pem.orig
cp /Library/NessusAgent/run/var/nessus/CA/cakey.pem /Library/NessusAgent/run/var/nessus/CA/cakey.pem.orig
cp /Library/NessusAgent/run/com/nessus/CA/servercert.pem /Library/NessusAgent/run/com/nessus/CA/servercert.pem.orig
cp /Library/NessusAgent/run/var/nessus/CA/serverkey.pem /Library/NessusAgent/run/var/nessus/CA/serverkey.pem.orig
-
オリジナルの証明書を新しいカスタム証明書に置き換えます。
注意: 証明書は復号してから、名前を servercert.pem および serverkey.pem にする必要があります。
注意: 証明書とルート証明書が直接リンクされていない場合、serverchain.pem という名前を付けた中間証明書チェーンを、servercert.pem ファイルと同じディレクトリに追加します。このファイルには、Nessus サーバーからその最上位のルート証明書 (ユーザーのブラウザが信頼する証明書) まで完全な証明書チェーンを構築するために必要な 1-n 中間証明書 (連結公開証明書) が含まれています。
Linux の例
cp customCA.pem /opt/nessus/com/nessus/CA/cacert.pem
cp cakey.pem /opt/nessus/var/nessus/CA/cakey.pem
cp servercert.pem /opt/nessus/com/nessus/CA/servercert.pem
cp serverkey.pem /opt/nessus/var/nessus/CA/serverkey.pem
Windowsの例
copy customCA.pem C:\ProgramData\Tenable\Nessus\nessus\CA\cacert.pem
copy cakey.pem C:\ProgramData\Tenable\Nessus\nessus\CA\cakey.pem
copy servercert.pem C:\ProgramData\Tenable\Nessus\nessus\CA\servercert.pem
copy serverkey.pem C:\ProgramData\Tenable\Nessus\nessus\CA\serverkey.pem
macOS の例
cp customCA.pem /Library/NessusAgent/run/com/nessus/CA/cacert.pem
cp cakey.pem /Library/NessusAgent/run/var/nessus/CA/cakey.pem
cp servercert.pem /Library/NessusAgent/run/com/nessus/CA/servercert.pem
cp serverkey.pem /Library/NessusAgent/run/var/nessus/CA/serverkey.pem
-
プロンプトされた場合は、既存ファイルを上書きします。
-
Tenable Nessus サーバーを開始します。
- ブラウザで、Tenable Nessus ユーザーインターフェースに管理者アクセス許可を有するユーザーとしてログインします。
- プロンプトされた場合は、新しい証明書の詳細を検証します。
ブラウザが信頼している CA が証明書を生成した場合、それ以降の接続では警告は表示されません。
次の手順
-
CA がまだ Tenable Nessus によって信頼されていない場合、Tenable Nessus を カスタム CA を信頼する に設定します。