行政部门#
本章描述了具有*Administrator*角色的用户的管理任务。请参考`角色<administration.html#roles>`__一章,了解更多关于该角色的信息。
重要
请确保你在开始工作前阅读`本文件<index.html>`__开头的信息。
系统管理#
设备信息#
可以按以下方式检索NetHSM的供应商和产品信息。
例子
$ nitropy nethsm --host $NETHSM_HOST info
Host: localhost:8443
Vendor: Nitrokey GmbH
Product: NetHSM
关于`/info`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_info>`__中找到。
启动模式#
NetHSM可以在*Attended Boot*模式和*Unattended Boot*模式下使用。
启动模式 |
描述 |
---|---|
有机会获得启动。 |
每次启动时都需要输入*解锁密码*,用于解密*用户数据*。出于安全考虑,建议使用这种模式。 |
无人值守的启动 |
不需要*解锁密码*,因此NetHSM可以在无人值守的情况下启动。如果你的可用性要求无法通过*Attended Boot*模式得到满足,请使用这种模式。 |
当前的启动模式可以按以下方式检索。
例子
$ nitropy nethsm --host $NETHSM_HOST get-config --unattended-boot
Configuration for NetHSM localhost:8443:
Unattended boot: off
关于`/config/unattended-boot`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-unattended-boot>`__中找到。
启动模式可以按以下方式改变。
论点
争论 |
描述 |
---|---|
状况 |
启用或禁用*无人值守启动*。可以有``on`或``off``的值。 |
例子
$ nitropy nethsm --host $NETHSM_HOST set-unattended-boot on
Updated the unattended boot configuration for NetHSM localhost:8443
关于`/config/unattended-boot`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-unattended-boot>`__中找到。
国家#
NetHSM软件有四种状态。未配置,配置,锁定*和*运行。
国家 |
描述 |
---|---|
未分配 |
无配置的NetHSM(出厂默认)。 |
规定的。 |
有配置的NetHSM。*配置*的状态意味着*运行*或*锁定*的状态。 |
操作性 |
NetHSM具有配置并准备执行命令。运行*的状态意味着*配置*的状态。 |
被锁住 |
NetHSM有配置但受到保护(需要解锁)。运行的*状态意味着*配置的*状态。 |
网络健康管理的状态和过渡#
NetHSM的当前状态可以按以下方式检索。
例子
$ nitropy nethsm --host $NETHSM_HOST state
NetHSM localhost:8443 is Unprovisioned
关于`/health/state`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_health-state>`__找到。
一个新的NetHSM有一个*未配置的*状态,配置后进入*运行的*状态。网管的配置在`配置<getting-started.html#provisioning>`__章节中描述。
一个处于*运行*状态的NetHSM可以再次被锁定,以保护它,方法如下。
例子
$ nitropy nethsm --host $NETHSM_HOST lock
NetHSM localhost:8443 locked
关于`/lock`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_lock>`__中找到。
处于*Locked*状态的NetHSM可以按以下方式解锁。
例子
$ nitropy nethsm --host $NETHSM_HOST unlock
NetHSM localhost:8443 unlocked
关于`/unlock`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_unlock>`__中找到。
解锁密码#
如果NetHSM处于*Locked*状态,Unlock Passphrase*将用于获得*Unlock Key。密码口令最初是在NetHSM的供应期间设置的。
解锁密码*可按以下方式设置。
可选择的选项
选项 |
描述 |
---|---|
|
新的解锁口令 |
例子
$ nitropy nethsm --host $NETHSM_HOST set-unlock-passphrase
Passphrase:
Repeat for confirmation:
Updated the unlock passphrase for localhost:8443
关于`/config/unlock-passphrase`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/PUT_config-unlock-passphrase>`__找到。
TLS证书#
TLS证书用于基于HTTPS的REST API,因此也被*nitropy*使用。在配置过程中,会创建一个自签名的证书。该证书可以被替换,例如,用一个来自证书机构(CA)的签名证书。在这种情况下,必须生成一个证书签名请求(CSR)。签署后的证书必须导入到NetHSM中。
只有在更换证书时才有必要进行更改。这种改变可能是用一个来自证书颁发机构(CA)的签名证书来取代它。
TLS证书可以按以下方式检索。
必要的选项
选项 |
描述 |
---|---|
|
为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-----
关于`/config/tls/cert.pem`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-tls-cert-pem>`__找到。
TLS证书可以按以下方式生成。
必要的选项
选项 |
描述 |
---|---|
|
生成密钥的类型 |
|
生成的密钥的长度 |
例子
$ nitropy nethsm --host $NETHSM_HOST generate-tls-key -t Curve25519
Key for TLS interface generated on NetHSM localhost:8443
关于`/config/tls/generate`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_config-tls-generate>`__找到。
证书的证书签名请求(CSR)可按以下方式生成。
必要的选项
选项 |
描述 |
---|---|
|
为NetHSM TLS证书生成一个CSR |
|
国家名称 |
|
州或省的名称 |
|
地点名称 |
|
组织名称 |
|
组织单位名称 |
|
俗称 |
|
电子邮件地址 |
例子
$ 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-----
关于`/config/tls/csr.pem`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_config-tls-csr-pem>`__找到。
该证书可以按以下方式更换。
必要的选项
选项 |
描述 |
---|---|
|
为NetHSM TLS接口设置证书 |
论点
争论 |
描述 |
---|---|
|
证书文件 |
例子
nitropy nethsm --host $NETHSM_HOST set-certificate --api /tmp/nethsm-certificate
关于`/config/tls/csr.pem`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_config-tls-csr-pem>`__找到。
网络#
网络配置定义了用于*网络端口*的设置。
注解
此设置不配置*BMC网络端口*。
网络配置可以按以下方式检索。
必要的选项
选项 |
描述 |
---|---|
|
查询网络配置 |
例子
$ 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
关于`/config/network`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-network>`__中找到。
设置网络配置如下。
注解
NetHSM不支持DHCP(动态主机配置协议)。
注解
NetHSM不支持IPv6(互联网协议版本6)。
必要的选项
选项 |
描述 |
---|---|
|
新的IP地址 |
|
新的网络掩码 |
|
新的网关 |
例子
$ 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
关于`/config/network`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-network>`__中找到。
时间#
时间配置设置NetHSM软件的系统时间。通常不需要设置系统时间,因为它是在配置期间设置的。
时间配置可以按以下方式检索。
必要的选项
选项 |
描述 |
---|---|
|
查询系统时间 |
例子
$ nitropy nethsm -host $NETHSM_HOST get-config --time
Configuration for NetHSM localhost:8443:
Time: 2022-08-17 11:40:00+00:00
关于`/config/time`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-time>`__中找到。
设置NetHSM的时间。
重要
请确保以UTC时区传递时间。
论点
争论 |
描述 |
---|---|
|
要设置的系统时间(格式:YYY-MM-DDTHH:MM:SSZ)。 |
例子
$ nitropy nethsm -h $NETHSM_HOST set-time 2022-08-17T11:40:00Z
Updated the system time for NetHSM localhost:8443
关于`/config/time`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-time>`__中找到。
度量衡#
NetHSM记录了系统参数的度量。
注解
这个命令需要一个具有*Metrics*角色的用户的认证。请参考`角色<administration.html#roles>`__一章,了解更多关于该角色的信息。
这些指标可以按以下方式检索。
例子
$ 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
关于`/metrics`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_metrics>`__找到。
伐木#
NetHSM可以将系统事件记录到串行端口或网络上的syslog服务器上。
串行控制台从NetHSM的硬件开始工作。它包括来自NetHSM固件和NetHSM软件的事件。
串行控制台连接设置如下。
设置 |
价值 |
---|---|
波特率 |
115200 |
数据位 |
8 |
停止位 |
1 |
偶数 |
无 |
流量控制 |
无 |
系统日志服务器的配置可以按以下方式检索。
必要的选项
选项 |
描述 |
---|---|
|
查询日志配置 |
例子
$ nitropy nethsm -h $NETHSM_HOST get-config --logging
Logging:
IP address: 0.0.0.0
Port: 514
Log level: info
关于`/config/logging`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-logging>`__中找到。
系统日志服务器的配置可按以下方式设置。
必要的选项
选项 |
描述 |
---|---|
|
新记录目的地的IP地址 |
|
新记录目的地的端口 |
|
新的日志级别 |
例子
$ 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
关于`/config/logging`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-logging>`__中找到。
备份#
NetHSM的*用户数据*可以被保存到一个备份文件中。这个备份文件包含所有的*用户数据*,即*配置存储*,认证存储,域名密钥存储*和*密钥存储。
重要
如果在不同的NetHSM硬件上恢复,处于*无人值守启动*模式的NetHSM系统软件将需要*解锁密码*。请参考`Unlock Passphrase <administration.html#unlock-passphrase>`__一章以了解更多。
重要
处于*无人值守启动*模式的NetHSM在恢复后将处于同一模式。
在开始备份之前,必须设置*备份密码*。备份密码*是用来对备份文件中的数据进行加密的。
备份口令可按以下方式设置。
可选择的选项
选项 |
描述 |
---|---|
|
新的备份口令 |
例子
$ nitropy nethsm -h $NETHSM_HOST -u admin set-backup-passphrase
Passphrase:
Repeat for confirmation:
Updated the backup passphrase for NetHSM localhost:8443
关于`/config/backup-passphrase`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/PUT_config-backup-passphrase>`__找到。
注解
这个命令需要一个具有*备份*角色的用户的认证。请参考`角色<administration.html#roles>`__一章以了解更多。
备份可以按以下方式执行。
论点
争论 |
描述 |
---|---|
|
备份文件 |
例子
$ nitropy nethsm -h $NETHSM_HOST backup /tmp/nethsm-backup
Backup for localhost:8443 written to /tmp/backup
关于`/system/backup`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-backup>`__中找到。
注解
这个备份文件只能在一个未配置的NetHSM实例上恢复。
恢复#
NetHSM可以从一个备份文件中恢复。
注解
网管系统必须处于*未配置的状态*。
可以按以下方式进行恢复。
可选择的选项
选项 |
描述 |
---|---|
|
备份口令* |
|
要设置的系统时间(格式: |
重要
请确保你的本地电脑的时间设置正确。要设置不同的时间,请手动提供。
论点
争论 |
描述 |
|
---|---|---|
|
例子
$ nitropy nethsm -h $NETHSM_HOST restore /tmp/nethsm-backup
Backup passphrase:
Backup restored on NetHSM localhost:8443
关于`/system/restore`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-restore>`__中找到。
更新#
NetHSM的更新可以通过两步来安装。首先,需要将更新图像上传到NetHSM。该图像会被自动检查和验证。
警告
由于安装了测试版更新,可能会出现数据丢失的情况!
更新文件可以按以下方式上传。
论点
争论 |
描述 |
---|---|
|
更新文件 |
例子
$ nitropy nethsm --host $NETHSM_HOST update /tmp/nethsm-update.img.cpio
Image /tmp/nethsm-update.img.cpio uploaded to NetHSM localhost:8443
关于`/system/update`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-update>`__中找到。
之后,可以应用或中止更新。请参考以下所需的选项。
更新可以按以下方式应用(承诺)。
例子
$ nitropy nethsm --host $NETHSM_HOST commit-update
Update successfully committed on NetHSM localhost:8443
关于`/system/commit-update`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-commit-update>`__中找到。
可以按以下方式取消更新。
例子
$ nitropy nethsm --host $NETHSM_HOST cancel-update
Update successfully cancelled on NetHSM localhost:8443
关于`/system/cancel-update`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-cancel-update>`__中找到。
重新启动和关机#
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
关于`/system/reboot`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-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
关于`/system/shutdown`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-shutdown>`__中找到。
重置为出厂默认值#
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
关于`/system/factory-reset`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-factory-reset>`__中找到。
用户管理#
角色#
NetHSM允许通过使用不同的角色来分担职责。在NetHSM上配置的每个用户账户都有以下一个*角色*分配给它。
角色 |
描述 |
---|---|
管理人 |
拥有此角色的用户账户可以访问NetHSM提供的所有操作,但密钥使用操作除外,即消息签名和解密。 |
操作者 |
拥有此角色的用户账户可以访问所有的钥匙使用操作,只读的钥匙管理操作子集和用户管理操作,只允许对他们自己的账户进行更改。 |
指标 |
拥有此角色的用户账户只能访问只读的度量衡操作。 |
备份 |
拥有该角色的用户账户只能访问启动系统备份所需的操作。 |
注解
在未来的版本中,可能会引入额外的*角色*。
添加用户#
在NetHSM中添加一个用户账户。每个用户账户都有一个*角色,需要指定。请参考`Roles <administration.html#roles>`__一章,了解更多关于*Roles*的内容。
注解
如果没有指定,NetHSM会随机分配一个用户ID。
可以按以下方式添加一个用户账户。
必要的选项
选项 |
描述 |
---|---|
|
用户的真实姓名 |
|
新用户的*角色 |
|
新用户的口令 |
可选择的选项
选项 |
描述 |
---|---|
|
新用户的用户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
关于`/users`端点的信息,可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_users>`__中找到,创建一个用户而不指定用户ID。
关于`/users/{UserID}`端点的信息,可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/PUT_users-UserID>`__中找到,该端点用于创建一个指定用户ID的用户。
删除用户#
从NetHSM中删除一个用户账户。
警告
删除是永久性的,不能被恢复。
可以按以下方式删除一个用户账户。
论点
争论 |
描述 |
---|---|
|
用户身份。 |
例子
$ nitropy nethsm --host $NETHSM_HOST delete-user operator1
User operator1 deleted on NetHSM localhost:8443
关于`/users/{UserID}`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/DELETE_users-UserID>`__中找到。
列表中的用户#
列出NetHSM上的用户。
该清单可以按以下方式检索。
可选择的选项
选项 |
描述 |
---|---|
|
查询用户的真实姓名和角色 |
例子
$ nitropy nethsm --host $NETHSM_HOST list-users
Users on NetHSM localhost:8843:
User ID Real name Role
--------- ----------------- -------------
operator1 Nitrokey Operator Operator
admin admin Administrator
关于`/users`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_users>`__找到。
关于`/users/{UserID}`端点的信息可以在`API文档 <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_users-UserID>`__中找到。
用户密码#
用户账户的口令可以被重置。密码锁是在添加用户账户时初始设置的。
注解
密码锁必须有>=10和<=200个字符。
用户口令可按以下方式设置。
必要的选项
选项 |
描述 |
---|---|
|
用户的用户ID |
|
用户的新密码 |
例子
$ nitropy nethsm --host $NETHSM_HOST set-passphrase --user-id operator1
Passphrase:
Repeat for confirmation:
Updated the passphrase for user operator1 on NetHSM localhost:8443
关于`/users/{UserID}/passphrase`端点的信息可以在`API文档<https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_users-UserID-passphrase>`__找到。