管理部門#

この章では、*Administrator*ロールを持つユーザーのための管理作業について説明します。ロールについての詳細は、Roles の章を参照してください。

重要

作業を始める前に、`このドキュメントの冒頭にある情報<index.html>`__を必ず読んでください。

システム管理#

デバイス情報#

NetHSMのベンダー情報および製品情報は、以下の手順で取得することができます。

**

$ nitropy nethsm --host $NETHSM_HOST info
Host:    localhost:8443
Vendor:  Nitrokey GmbH
Product: NetHSM

ブートモード#

NetHSMは、*Attended Boot*モードと*Unattended Boot*モードで使用できます。

ブートモード

説明

ブートに参加

NetHSM は _Locked_ 状態で起動します。Unlock Passphrase を起動時に入力する必要があります。このパスフレーズは*User Data* の復号化に使用されます。セキュリティ上の理由から、このモードが推奨され、プロビジョニングされたばかりのシステムのデフォルトモードです。

無人ブート

システムは、Unlock Passphrase を入力する必要なく、_Operational_ 状態で無人起動します。Attended Boot モードで可用性要件を満たせない場合は、このモードを使用します。

警告

ブートモードに関係なく、Unlock Passphrase は有効性を保ち、他のハードウェアのバックアップを復元するために必要です。Unlock Passphrase は、いつでも安全に保管してください。

現在の起動モードは、次のように取得できます。

**

$ nitropy nethsm --host $NETHSM_HOST get-config --unattended-boot
Configuration for NetHSM localhost:8443:
   Unattended boot: off

ブートモードは以下のように変更できます。次回のブート時には、NetHSMはそれに従って動作します。

**論評

論証

説明

ステータス

無人起動*を有効または無効にします。値は on または off とすることができます。

**

$ nitropy nethsm --host $NETHSM_HOST set-unattended-boot on
Updated the unattended boot configuration for NetHSM localhost:8443

状態#

NetHSMソフトウェアには、4つの状態があります。UnprovisionedProvisionedLocked*Operational*の4つの状態があります。

状態

説明

*非プロビジョニング

NetHSM コンフィギュレーションなし(工場出荷時)

*プロビジョニング

NetHSMにコンフィグレーションを行った状態。Provisioned* 状態は、Operational または Locked 状態のいずれかを意味します。

*動作確認済み

NetHSMが設定され、コマンドを実行する準備ができた状態。動作中 "の状態は、"プロビジョニング中 "の状態を意味します。

Locked

NetHSM はコンフィギュレーションを持つが、暗号化され、データストアにアクセスできない。通常、次のステップはシステムのロックを解除することです。Locked 状態は*Provisioned* 状態を意味する。

NetHSMの現状と変遷

NetHSMの現状と変遷#


NetHSMの現在の状態は、以下のように取得できます。

**

$ nitropy nethsm --host $NETHSM_HOST state
NetHSM localhost:8443 is Unprovisioned

新しいNetHSMは*Unprovisioned*の状態であり、プロビジョニング後に*Operational*の状態になります。NetHSMのプロビジョニングについては、Provisioning の章に記載されています。

動作状態*にあるNetHSMは、以下のように再度ロックして保護することができます。

**

$ nitropy nethsm --host $NETHSM_HOST lock
NetHSM localhost:8443 locked

ロック 状態の NetHSM は、以下の手順でロックを解除できます。NetHSMが_Locked_状態にある間は、他の操作はできません。その後、NetHSM は _Operational_ 状態になります。

**

$ nitropy nethsm --host $NETHSM_HOST unlock
NetHSM localhost:8443 unlocked

パスフレーズのロック解除#

ロック解除パスフレーズ*は、NetHSMが*ロック*状態である場合、*ロック解除キー*を導き出すために使用されます。パスフレーズはNetHSMのプロビジョニング時に初期設定されます。

警告

ロック解除パスフレーズは、現在の値がわからないとリセットできません。ロック解除パスフレーズを紛失した場合、新しい値にリセットすることも、NetHSMのロックを解除することもできません。

ロック解除のパスフレーズ*は、次のように設定できます。

オプション設定

オプション

説明

-n,``--new-passphrase````TEXT``

新しいロック解除用パスフレーズ

-p,``--current-passphrase````TEXT``

現在のロック解除パスフレーズ

-f`, ` .--force`

パスフレーズを変更する前に確認を求めない。

**

$ nitropy nethsm --host $NETHSM_HOST set-unlock-passphrase
New passphrase:
Repeat for confirmation:
Current passphrase:
Warning: The unlock passphrase cannot be reset without knowing the current value. If the unlock passphrase is lost, neither can it be reset to a new value nor can the NetHSM be unlocked.
Do you want to continue? [y/N]: y
Updated the unlock passphrase for NetHSM localhost:8443

TLS証明書#

TLS証明書は、HTTPSベースのREST APIに使用されるため、*nitropy*でも使用されます。プロビジョニング時に、自己署名入りの証明書が作成されます。この証明書は、たとえば認証局(CA)からの署名付き証明書で置き換えることができます。この場合、証明書署名要求(CSR)を生成する必要があります。署名後、証明書をNetHSMにインポートする必要があります。

変更は、証明書を置き換える場合にのみ必要である。そのような変更は、認証局(CA)からの署名された証明書に置き換えることである。

TLS証明書は、次のようにして取得することができます。

必須オプション

オプション

説明

-a, --api, -a<xid="3"></x><xid="4"></x>`。

NetHSM TLSインターフェイスの証明書を設定する

**

$ nitropy nethsm --host $NETHSM_HOST get-certificate --api
-----BEGIN CERTIFICATE-----
MIIBHzCBxaADAgECAgkA7AznVQK3XWkwCgYIKoZIzj0EAwIwFDESMBAGA1UEAwwJ
a2V5ZmVuZGVyMCAXDTcwMDEwMTAwMDAwMFoYDzk5OTkxMjMxMjM1OTU5WjAUMRIw
EAYDVQQDDAlrZXlmZW5kZXIwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARbeCRl
F1ZIjK1bTfrPvtCoYDThMjdV1q8mq+B9FMDo4GIahTCUG/Ub6bCOcbip5pP92J3h
yMEcPuos72c1KcGjMAoGCCqGSM49BAMCA0kAMEYCIQC/BNrkCM5gpsVfa9EqQcM0
PCaADyZG7KKLgDv7asa5LwIhAKDXRE3Tdm9tYObO0X4p0CRQkl1+DnvGljzQe34C
JBax
-----END CERTIFICATE-----

TLS証明書は、以下の手順で生成することができます。

必須オプション

オプション

説明

-t, --type ``[RSA|Curve25519|EC_P224|EC_P256|EC_P384|EC_P521]``に相当する。

生成された鍵のタイプ

-l, --length INTEGER, <ex id="5"></x><x id="7"></x><ex id="8"></x></ex

生成された鍵の長さ

**

$ nitropy nethsm --host $NETHSM_HOST generate-tls-key -t Curve25519
Key for TLS interface generated on NetHSM localhost:8443

証明書のCSR(Certificate Signing Request)は、以下の手順で生成することができます。

必須オプション

オプション

説明

-a, --api, -a<xid="3"></x><xid="4"></x>`。

NetHSM TLS証明書のCSRを生成する

--country TEXT

国名

--state-or-province TEXT

州・県名

--locality TEXT

産地名

--organization TEXT

組織名

--organizational-unit TEXT

組織単位名

--common-name TEXT

一般名称

--email-address TEXT

電子メールアドレス

**

$ nitropy nethsm --host $NETHSM_HOST csr --api --country="DE" --state-or-province="Berlin" --locality="Berlin" --organization="Nitrokey" --organizational-unit="" --common-name="Nitrokey" --email-address="info@nitrokey.com"
-----BEGIN CERTIFICATE REQUEST-----
MIGBMDUCAQAwAjEAMCowBQYDK2VwAyEAE+nz+nOj80SWG25UbqVcQk6Ua84zuj5B
9qCtPpDUX2qgADAFBgMrZXADQQDwk9LrYDu83a1jgBGqW0I9BVXWEhP4gZLxlVV+
c102GFi963ZPIxG7Z5+uWplz+wr/Vmr7KLr6oM01M/AZPJQO
-----END CERTIFICATE REQUEST-----

証明書の差し替えは、以下のように行います。

必須オプション

オプション

説明

-a, --api, -a<xid="3"></x><xid="4"></x>`。

NetHSM TLSインターフェイスの証明書を設定する

**論評

論証

説明

FILENAME

証明書ファイル

**

nitropy nethsm --host $NETHSM_HOST set-certificate --api /tmp/nethsm-certificate

ネットワーク#

ネットワークコンフィギュレーションは、*ネットワークポート*に使用する設定を定義します。

注釈

この設定では、*BMCネットワークポート*は設定されません。

ネットワーク構成は、次のように取得できます。

必須オプション

オプション

説明

--network

ネットワーク構成を問い合わせる

**

$ nitropy nethsm -h $NETHSM_HOST get-config --network
Configuration for NetHSM localhost:8443:
Network:
      IP address:    192.168.1.1
      Netmask:       255.255.255.0
      Gateway:       0.0.0.0

ネットワーク構成を次のように設定します。

注釈

NetHSMは、DHCP(Dynamic Host Configuration Protocol)に対応していません。

注釈

NetHSMは、IPv6(インターネットプロトコルバージョン6)には対応していません。

必須オプション

オプション

説明

-a, --ip-address.

新しいIPアドレス

-n, --netmask.

新しいネットマスク

-n, --netmask.

新しいゲートウェイ

**

$ nitropy nethsm -h $NETHSM_HOST set-network-config -a 192.168.1.1 -n 255.255.255.0 -g 0.0.0.0
Updated the network configuration for NetHSM localhost:8443

時間#

タイムコンフィギュレーションは、NetHSMソフトウェアのシステム時刻を設定します。システム時刻はプロビジョニング時に設定されるため、通常は設定する必要はありません。

タイムコンフィギュレーションは以下のように取得できます。

必須オプション

オプション

説明

--time

システム時刻を問い合わせる

**

$ nitropy nethsm -host $NETHSM_HOST get-config --time
Configuration for NetHSM localhost:8443:
Time:            2022-08-17 11:40:00+00:00

NetHSMの時刻を設定します。

重要

時刻は必ずUTCタイムゾーンで渡してください。

**論評

論証

説明

time

設定するシステム時刻(形式:YYYY-MM-DDTHH:MM:SSZ)

**

$ nitropy nethsm -h $NETHSM_HOST set-time 2022-08-17T11:40:00Z
Updated the system time for NetHSM localhost:8443

指標#

NetHSMは、システムパラメーターのメトリクスをログに記録します。

注釈

このコマンドを実行するには、*Metrics*ロールを持つユーザーの認証が必要です。ロールの詳細については、Roles の章を参照してください。

各指標の詳細については、`Metrics<metrics.html>`__をご参照ください。

メトリクスは、以下のように取得できます。

**

$ nitropy nethsm -h $NETHSM_HOST metrics
Metric                         Value
----------------------------   --------
client connections             0
established state              6
external.received bytes        989931
external.received packets      13239
external.transmitted bytes     25908953
external.transmitted packets   22037
free chunk count               322
gc compactions                 0
gc major bytes                 21348352
gc major collections           35
gc minor collections           2652
http response 200              28
http response 201              1
http response 204              1
http response 400              1
http response 403              1
http response 404              145
http response 412              1
http response time             0.084998
http response total            178
internal.received bytes        66541
internal.received packets      1130
internal.transmitted bytes     63802
internal.transmitted packets   1133
kv write                       2
log errors                     3
log warnings                   3
maximum allocated space        64528384
maximum releasable bytes       1216
mmapped region count           0
new sleeper size               1
non-mmapped allocated bytes    64528384
sleep queue size               11
syn-rcvd state                 0
timers                         2
total allocated space          43940832
total client                   1
total established              515
total free space               20587552
total sleeper size             12
total syn-rcvd                 514
total timers                   526
uptime                         17626

ロギング#

NetHSMは、システムイベントをシリアルポートまたはネットワーク上のsyslogサーバーに記録することができます。

重要

本番環境では、NetHSMログを継続的に監視して、潜在的なセキュリティ問題を即座に通知する必要があります。

シリアルコンソールは、NetHSMハードウェアの起動直後から動作します。NetHSMファームウェアとNetHSMソフトウェアからのイベントも含まれます。

シリアルコンソールの接続設定は、以下の通りです。

設定

価値

ボーレート

115200

データビット

8

ストップビット

1

パリティ

なし

フロー制御

なし

syslogサーバーの設定は、以下のように取得することができます。

必須オプション

オプション

説明

--network

ロギング設定を問い合わせる

**

$ nitropy nethsm -h $NETHSM_HOST get-config --logging
Logging:
   IP address:    0.0.0.0
   Port:          514
   Log level:     info

syslogサーバーの設定は、以下のように行います。

必須オプション

オプション

説明

-p, --passphrase ``TEXT``に相当する。

新しいロギング先のIPアドレス

-p, --port ``INTEGER``に相当する。

新しいロギング先のポート

-l, --log-level ``[debug|info|warning|error]``に相当する。

新しいログレベル

**

$ nitropy nethsm -h $NETHSM_HOST set-logging-config -a 192.168.0.1 -p 514 -l info
Updated the logging configuration for NetHSM localhost:8443

バックアップ#

NetHSMの*ユーザーデータ*は、バックアップファイルに保存することができます。このバックアップファイルには、すべての*ユーザーデータ*、すなわち*コンフィグレーションストア*、認証ストアドメインキーストア、および*キーストア*が含まれています。

重要

Unattended Boot*モードのNetHSMシステムソフトウェアは、異なるNetHSMハードウェアでリストアする場合、*Unlock Passphrase*を必要とします。詳しくは、Unlock Passphrase の章を参照してください。

重要

無人起動*モードのNetHSMは、リストア後も同じモードとなります。

バックアップを開始する前に、Backup Passphrase を設定する必要があります。バックアップパスフレーズ*は、バックアップファイルのデータを暗号化するために使用されます。

警告

バックアップパスフレーズは、現在の値を知らなければリセットできません。バックアップパスフレーズが失われた場合、新しい値にリセットすることも、作成したバックアップを復元することもできません。

バックアップパスフレーズは、以下のように設定できます。

オプション設定

オプション

説明

-n,``--new-passphrase````TEXT``

新しいバックアップのパスフレーズ

-p,``--current-passphrase````TEXT``

現在のバックアップパスフレーズ(設定されていない場合は空文字列)

-f`, ` .--force`

パスフレーズを変更する前に確認を求めない。

**

$ nitropy nethsm -h $NETHSM_HOST -u admin set-backup-passphrase
New passphrase:
Repeat for confirmation:
Warning: The backup passphrase cannot be reset without knowing the current value. If the backup passphrase is lost, neither can it be reset to a new value nor can the created backups be restored.
Do you want to continue? [y/N]: y
The current backup passphrase (or an empty string if not set) []:
Updated the backup passphrase for NetHSM localhost:8443

注釈

このコマンドを実行するには、*Backup*ロールを持つユーザーの認証が必要です。詳細については、`Roles <administration.html#roles>`__の章を参照してください。

バックアップは次のように実行できます。

**論評

論証

説明

FILENAME

バックアップファイル

**

$ nitropy nethsm -h $NETHSM_HOST backup /tmp/nethsm-backup
Backup for localhost:8443 written to /tmp/backup

注釈

このバックアップファイルは、プロビジョニングされていないNetHSMインスタンスにのみリストアすることができます。

リストア#

NetHSMは、バックアップファイルから復元することができます。

  • NetHSM が*Unprovisioned* の場合、システム設定を含むすべての*ユーザーデータ* を復元し、再起動します。そのため、システムはその後、異なるネットワーク設定、TLS証明書、Unlock Passphrase を取得する可能性があります。

  • NetHSM が*Provisioned* の場合、ユーザーとユーザーキーはリストアされますが、システム構成はリストアされません。この場合、既存のユーザーとユーザーキーはすべて削除されます。NetHSM は*運用中* の状態で終了します。

復元は、以下のように適用できます。

オプション設定

オプション

説明

-p, --backup-passphrase ``passphrase``に相当する。

バックアップパスフレーズ*について

-t, --system-time, -t<xid="2"></x><xid="3"><xid="4"></x>`。

設定するシステム時刻(書式:YYYY-MM-DDTHH:MM:SSZ)

重要

ローカルコンピュータの時刻が正しく設定されていることを確認してください。別の時刻を設定する場合は、手動で指定してください。

**論評

論証

説明

``FILENAME``| ファイルをリストアする

**

$ nitropy nethsm -h $NETHSM_HOST restore /tmp/nethsm-backup
Backup passphrase:
Backup restored on NetHSM localhost:8443

ソフトウェア・アップデート#

ソフトウェアアップデートは、2 段階のプロセスでインストールできます。まず、Provisioned NetHSM にアップデートイメージをアップロードする必要があります。NetHSM は、イメージの信頼性、完全性、およびバージョン番号を検証します。オプションで、NetHSM はリリースノートがあれば表示します。

警告

ベータ版アップデートのインストールにより、データ損失が発生する可能性があります!安定版ではデータ損失は発生しません。しかし、アップデートの前にバックアップを作成することをお勧めします。

アップデートファイルのアップロードは、以下の手順で行います。

**論評

論証

説明

FILENAME

アップデートファイル

**

$ nitropy nethsm --host $NETHSM_HOST update /tmp/nethsm-update.img.cpio
Image /tmp/nethsm-update.img.cpio uploaded to NetHSM localhost:8443

その後、アップデートを適用または中止することができます。以下のオプションを参照してください。コミット "操作の前にNetHSMの電源を落とした場合、アップデートファイルを再度アップロードする必要があります。

アップデートの適用(コミット)は次のように行います。データ移行は、NetHSMが新しいシステムソフトウェアバージョンで正常に起動した後に実行されます。

**

$ nitropy nethsm --host $NETHSM_HOST commit-update
Update successfully committed on NetHSM localhost:8443

アップデートの取り消しは、以下の手順で行えます。

**

$ nitropy nethsm --host $NETHSM_HOST cancel-update
Update successfully cancelled on NetHSM localhost:8443

リブートとシャットダウン#

NetHSMの再起動とシャットダウンは、リモートで行うか、NetHSMハードウェアの前面にある再起動と電源オフボタンで行うことができます。

リモートリブートは、以下の手順で開始することができます。

**

$ nitropy nethsm --host $NETHSM_HOST reboot
NetHSM localhost:8443 will be rebooted.
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to reboot

リモートシャットダウンは、以下の手順で開始することができます。

**

$ nitropy nethsm --host $NETHSM_HOST shutdown
NetHSM localhost:8443 will be shutdown.
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to shutdown

工場出荷時の状態に戻す#

プロビジョニング済み NetHSM は、工場出荷時のデフォルトにリセットできます。この場合、すべてのユーザーデータは安全に削除され、 NetHSM は*Unprovisioned* の状態で起動します。その後、` <getting-started#provisioning>` __ NetHSM をプロビジョニングすることができます。

工場出荷時へのリセットは、以下の手順で行うことができます。

**

$ nitropy nethsm -h $NETHSM_HOST factory-reset
NetHSM localhost:8443 will be set to factory defaults.
All data will be lost!
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to perform a factory reset

ユーザー管理#

役割#

NetHSMでは、異なるロールを使用することにより、職務の分離が可能です。NetHSMに設定された各ユーザーアカウントには、以下の*ロール*のいずれかが割り当てられています。

役割

説明

アドミニストレーター

この役割を持つユーザーアカウントは、鍵の使用操作(メッセージの署名と復号化)を除き、NetHSMが提供するすべての操作にアクセスすることができます。

*オペレーター

この役割を持つユーザーアカウントは、すべての鍵使用操作、鍵管理操作の読み取り専用サブセット、およびユーザー管理操作にアクセスし、自分のアカウントにのみ変更を許可します。

Metrics

この役割を持つユーザー・アカウントは、読み取り専用のメトリックス操作にのみアクセスできる。

Backup

この役割を持つユーザーアカウントは、システムバックアップを開始するために必要な操作にのみアクセスすることができます。

より細かなアクセス制限については`タグ<administration.html#tags-for-users>`__ を参照のこと。

注釈

将来のリリースでは、追加のロール*が導入される可能性があります。

ユーザーを追加する#

NetHSMにユーザーアカウントを追加します。各ユーザーアカウントには*Role*があり、これを指定する必要があります。役割*については、Roles の章で詳しく説明しています。

注釈

NetHSMは、指定がない場合、ランダムなユーザーIDを割り当てます。

ユーザーアカウントは、以下の手順で追加することができます。

必須オプション

オプション

説明

-n, --real-name ``TEXT``に相当する。

ユーザーの実名

-r, --role ``[Administrator|Operator|Metrics|Backup]``に相当する。

新規ユーザーの 役割 を指定します。

-p, --passphrase ``TEXT``に相当する。

新規ユーザーのパスフレーズ

オプション設定

オプション

説明

-u, --user-id ``TEXT``に相当する。

新規ユーザーのユーザーID

**

$ nitropy nethsm --host $NETHSM_HOST  add-user --real-name "Nitrokey Operator" --role Operator --user-id operator1
Passphrase:
Repeat for confirmation:
User operator1 added to NetHSM localhost:8443

ユーザー削除#

NetHSMからユーザーアカウントを削除します。

警告

削除は永久的なものであり、元に戻すことはできません。

ユーザーアカウントの削除は、次の手順で行います。

**論評

論証

説明

USER_ID

ユーザーのId。

**

$ nitropy nethsm --host $NETHSM_HOST delete-user operator1
User operator1 deleted on NetHSM localhost:8443

リストユーザー#

NetHSMのユーザーをリストアップします。

このリストは、次のようにして取得することができます。

オプション設定

オプション

説明

--details, --no-details.

ユーザーの実名とロールを問い合わせる

**

$ nitropy nethsm --host $NETHSM_HOST list-users
Users on NetHSM localhost:8843:

User ID        Real name               Role
---------      -----------------       -------------
operator1      Nitrokey Operator       Operator
admin          admin                   Administrator

ユーザーパスフレーズ#

ユーザーアカウントのパスフレーズを再設定することができます。パスフレーズは、ユーザーアカウントを追加する際に初期設定されます。

注釈

パスフレーズは10文字以上200文字以下である必要があります。

ユーザーパスフレーズは、次のように設定できます。

必須オプション

オプション

説明

-u, --user-id ``TEXT``に相当する。

ユーザーのID

-p, --passphrase ``TEXT``に相当する。

ユーザーの新しいパスフレーズ

**

$ nitropy nethsm --host $NETHSM_HOST set-passphrase --user-id operator1
Passphrase:
Repeat for confirmation:
Updated the passphrase for user operator1 on NetHSM localhost:8443

ユーザー向けタグ#

タグ は、鍵に対するきめ細かなアクセス制限を設定するために使用でき、オプ ション機能である。1つ以上の*タグ* 、Operator ロールを持つユーザーアカウントにのみ割り当てることができる。Operators はすべての鍵を見ることができるが、少なくとも1つの対応する*Tag* を持つ鍵のみを使用する。Operator ユーザーは、キーを変更できない。

キーに Tags を使用する方法については、Tags for Keys を参照してください。

タグ は以下のように追加できる。

**論評

論証

説明

USER_ID

タグを設定するユーザーID。

TAG

ユーザーIDに設定するタグ。

**

nitropy nethsm --host $NETHSM_HOST add-operator-tag operator1 berlin
Added tag berlin for user operator1 on the NetHSM localhost:8443

タグ*の削除は、以下のように行います。

**論評

論証

説明

USER_ID

タグを設定するユーザーID。

TAG

ユーザーIDに設定するタグ。

**

nitropy nethsm --host $NETHSM_HOST delete-operator-tag operator1 berlin
Deleted tag berlin for user operator1 on the NetHSM localhost:8443