我们正在尝试制作一个安全的AMI,以便分发给我们的一个客户(运行
Linux / CoreOS).一旦我们的客户部署了我们的AMI,重要的是他们无法获得shell访问权限(例如,无法通过SSH访问).
从表面上看,这似乎是一个非常简单的问题:只需确保我们的密钥只在authorized_keys文件中.但是,当我们的客户部署我们的AMI时,他们被迫提供自己的密钥对,然后将相关的公钥插入到盒子上的authorized_keys文件中,使他们能够通过SSH进入该框.
我知道亚马逊通过HTTP在169.254.169.254(信息在这里:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)将公钥可访问(和用户元数据)到主机操作系统.互联网和CoreOS文件系统周围的一些调查表明,/usr/bin/coreos-Metadata实际上访问了这个IP,大概是为了密钥对,但是我无法弄清楚实际上是什么启动了可执行文件或如何禁用它.我甚至考虑过删除可执行权限或完全删除它,但文件系统的那部分在CoreOS上是只读的(甚至是root用户).
显然,上述行为胜过我们采取的任何安全措施.我们能做些什么来防止这种情况发生吗?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。