简介
在本次实验中,我们将探讨如何使用 docker swarm unlock-key
命令管理 Docker Swarm 解锁密钥。我们将从初始化 Docker Swarm 开始,然后学习如何查看当前的解锁密钥,这对于在重启后解锁 Swarm 至关重要。
接下来,我们将演示如何轮换 Swarm 解锁密钥以增强安全性。最后,我们将介绍如何使用安静标志(quiet flag)仅查看解锁密钥,以实现精简输出。本次实验为你在 Docker Swarm 环境中管理这一关键安全功能提供了实用步骤。
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
在本次实验中,我们将探讨如何使用 docker swarm unlock-key
命令管理 Docker Swarm 解锁密钥。我们将从初始化 Docker Swarm 开始,然后学习如何查看当前的解锁密钥,这对于在重启后解锁 Swarm 至关重要。
接下来,我们将演示如何轮换 Swarm 解锁密钥以增强安全性。最后,我们将介绍如何使用安静标志(quiet flag)仅查看解锁密钥,以实现精简输出。本次实验为你在 Docker Swarm 环境中管理这一关键安全功能提供了实用步骤。
在这一步中,我们将学习如何查看 Docker Swarm 中的当前 Swarm 解锁密钥。Swarm 解锁密钥用于在 Swarm 重启后对其进行解锁。这是一项安全措施,旨在防止未经授权的用户访问你的 Swarm。
首先,我们需要初始化一个 Docker Swarm。我们将使用 docker swarm init
命令。该命令将初始化一个新的 Swarm,并将当前节点设置为管理节点。
docker swarm init
你应该会看到类似以下的输出,表明 Swarm 已成功初始化:
Swarm initialized: current node (xxxxxxxxxxxx) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 192.168.1.100:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
现在我们已经初始化了一个 Swarm,接下来可以使用 docker swarm unlock-key
命令查看当前的 Swarm 解锁密钥。
docker swarm unlock-key
该命令将输出当前的 Swarm 解锁密钥,它看起来是一长串字符。
Swarm unlock key: SWMKEY-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
请妥善保管此密钥,因为在 Swarm 重启后需要使用它来解锁。
在这一步中,我们将学习如何轮换 Swarm 解锁密钥。轮换解锁密钥是一种良好的安全实践,特别是当你怀疑当前密钥可能已泄露时。
要轮换 Swarm 解锁密钥,我们使用 docker swarm unlock-key --rotate
命令。该命令将生成一个新的解锁密钥并替换当前的密钥。
docker swarm unlock-key --rotate
运行该命令后,你将看到类似以下的输出,显示新的解锁密钥:
Swarm unlock key: SWMKEY-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
请注意,新密钥与你在上一步中看到的密钥不同。旧密钥现在已失效,不能再用于解锁 Swarm。请务必安全地存储新密钥。
在这一步中,我们将通过再次查看当前的解锁密钥来验证 Swarm 解锁密钥是否已成功轮换。
我们将使用与第一步相同的命令:docker swarm unlock-key
。
docker swarm unlock-key
此命令的输出现在应显示你在上一步轮换密钥时生成的新解锁密钥。
Swarm unlock key: SWMKEY-1-yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
将此密钥与你在第一步中看到的密钥进行比较。它们应该不同,这就证实了轮换操作已成功完成。
在这一步中,我们将学习如何仅查看 Swarm 解锁密钥,而不显示任何额外的输出。如果你想编写脚本以获取解锁密钥,这会很有用。
要仅查看解锁密钥,我们可以在 docker swarm unlock-key
命令中使用 --quiet
或 -q
标志。
docker swarm unlock-key --quiet
此命令将仅输出 Swarm 解锁密钥本身,而不包含“Swarm unlock key:”前缀。
SWMKEY-1-yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
这与你在上一步中看到的解锁密钥相同,但如果将其用于脚本中,输出会更简洁,也更易于解析。
在本次实验中,我们学习了如何管理 Docker Swarm 解锁密钥。首先,我们初始化了一个 Swarm,然后使用 docker swarm unlock-key
命令查看了当前的解锁密钥。此密钥对于在重启后解锁 Swarm 至关重要。
接着,出于安全考虑,我们探讨了如何使用 docker swarm unlock-key --rotate
命令轮换 Swarm 解锁密钥。最后,我们学习了如何查看轮换后的密钥,以及如何在 docker swarm unlock-key
命令中使用 --quiet
标志仅显示密钥本身。