允许应用程序仅在 AWS EC2 实例上运行

时间:2021-04-08 14:11:42

标签: amazon-web-services amazon-ec2

有没有办法编写一个应用程序,该应用程序只有在可以验证它正在 AWS EC2 实例上运行时才会运行?应用程序如何验证它实际上在 AWS 上运行?

1 个答案:

答案 0 :(得分:0)

这是来自官方docs

的参考

您可以获取系统 UUID 并在 UUID 的开头八位字节中查找字符“ec2”或“EC2”的存在。此外,对于未使用 Amazon Linux 2 的 EC2 实例,SMBIOS 发行版的实现可能以 little-endian 格式表示 UUID,因此“EC2”字符不会出现在 UUID 的开头。

使用以下命令通过桌面管理界面 (DMI) 获取 UUID:

sudo dmidecode --string system-uuid

输出EC2E1916-9099-7CAF-FD21-01234ABCDEF

UUID 以“EC2”开头,表示系统可能是 EC2 实例。

另一种选择

目标是判断它是 EC2 实例还是另一种云实例,例如 google,然后 dmidecode 工作得非常好,不需要联网

# From an amazon ec2 VM
$ sudo dmidecode -s bios-version
4.2.amazon

如果您需要更多方法,请按照此答案https://serverfault.com/a/903599