Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

OpenPGP による Junos OS でのセキュアなパッケージ署名

OpenPGPの概要と、Junos OSで安全なパッケージ署名を実行する方法について説明します。

お客様のパッケージを安全に追加するために、OpenPGP(Pretty Good Privacy)をジュニパーデバイスへのインストールやアップデートプロセスに関連するソフトウェアまたはファームウェアファイルの自己署名と検証に利用することができます。OpenPGPは広く採用されている暗号化規格で、非対称暗号化を使用してデータの機密性、整合性、否認防止を提供します。

秘密鍵を生成してパッケージに署名するには、GPG インストールを含む署名者マシンをセットアップする必要があります。

新しく作成した OpenPGP キーを安全に保ちます。秘密キーにアクセスできる人は誰でも、顧客のデバイスで実行できるコードに署名できます。

Junos OSの Veriexec 機能では、すべてのソフトウェアが有効な認証機関(通常はJuniper Networks, Inc.)によって署名されています。お客様は、OpenPGP(Pretty Good Privacy)を使用して自社のパッケージに署名し、Junos OS上でのパッケージの実行を許可することができます。

このセクションでは、鍵の生成、Junosデバイスへの鍵のインストール、マニフェストへの署名、OpenPGP署名を使用した署名済みマニフェストの検証について、VeriexecにOpenPGPを利用する方法をステップバイステップで説明します。

OpenPGP キーを生成する前に、 veriexec-openpgp.tgz 拡張を Junos に追加してください。拡張機能を追加するには、Junosデバイスで request system software add veriexec-openpgp.tgz コマンドを実行します。このコマンドにより、OpenPGP統合に必要なコンポーネントがインストールされ、使用できるようになります。

veriexec-openpgp.tgz 拡張機能が追加されたら、署名者の machnine で OpenPGP 鍵の生成に進むことができます。

  1. OpenPGPキーを生成します。
    1. ターミナルまたはコマンドプロンプトを開きます。
    2. 次のコマンドを実行して、RSA キーペアを生成します。
    3. これにより、キーペアが生成され、後で検証に使用されるキーIDが表示されます。
  2. 署名者のマシンで公開鍵と秘密鍵をエクスポートします。
    1. 次のコマンドを実行して、署名者のマシンに公開鍵と秘密鍵をエクスポートします。

      エクスポートされた秘密キー ファイルは、拡張子が ".sec.asc" のシークレットを保持します。

    2. ACA72B4719FD2523 を手順 1 で取得したキー ID に置き換えます。これらのコマンドは、公開鍵と秘密鍵のASCIIアーマードバージョンを生成します。
  3. Junosに公開キーをインストールします。
    1. 公開キー ファイル (ACA72B4719FD2523.pub.asc) を Junos デバイスにコピーします。
    2. Junosデバイスで次のコマンドを実行して、公開キーをインストールします。
      これにより、veriexec が使用するトラストストアに公開鍵が追加されます。
  4. マニフェストに署名する:

    マニフェストに署名するには、要件に応じて 2 つのオプションがあります。

    1. オプション 1: 署名サーバーを利用する

      署名サーバーにアクセスできる場合は、次の手順に従います。

      1. 署名が必要なマニフェストファイル (マニフェストなど)を作成または取得します。

      2. 次のコマンドを実行して、マニフェストのOpenPGP署名を生成します。

      3. server:portを実際の署名サーバーとポートに置き換えます。このコマンドは、OpenPGP を使用してマニフェストに署名し、署名ファイル (manifest.asc) を生成します

    2. オプション 2: 署名者マシンで GPG を使用して自己署名を実行する

      GPG を使用して自己署名する場合は、次の手順に従います。

      1. 署名が必要なマニフェストファイル (マニフェストなど)を作成または取得します。

      2. 次のコマンドを実行して、OpenPGP を使用してマニフェストに署名し、署名ファイル (manifest.asc) を生成します。

      3. server:portを実際の署名サーバーとポートに置き換えます。このコマンドは、OpenPGP を使用してマニフェストに署名し、署名ファイル (manifest.asc) を生成します

  5. 署名されたマニフェストを検証します。
    1. 署名されたマニフェスト ファイル (manifest および manifest.asc) を Junos デバイスにコピーします。
    2. Junos デバイスで Unix シェルまたはコマンド プロンプトを開きます。
    3. 次のコマンドを実行して、署名されたマニフェストを確認します。

      /path/to/directory をマニフェストと関連ファイルが配置されている実際のディレクトリ パスに置き換え、/path/to/manifest をマニフェスト ファイルへのパスに置き換えます。Veriexecは、公開鍵と対応する署名を使用してマニフェスト(パッケージ)を自動的に検証します。

    以下の手順に従うことで、veriexec-openpgp パッケージを活用して、Junos が使用する署名鍵とトラストアンカーを制御し、顧客パッケージに追加のセキュリティとカスタマイズオプションを提供できます。