【发布时间】:2019-11-26 04:35:35
【问题描述】:
用例:
我想托管我在 AWS 上的 EC2 实例上构建的控制台应用程序,并为将连接到它的人提供非常严格的有限访问权限:
- 他们必须不能访问 shell 或在机器上执行任何命令
- 他们一定不能使用端口转发
- 他们不能从该机器复制或读取任何内容,尤其是环境变量
- 他们只能使用该控制台应用程序
我的解决方案:
- 创建用户:
- 我将其 shell 替换为控制台应用程序,因此用户只能访问该应用程序,而不能访问其他任何内容
- 禁用端口转发
我不确定这是否足以保护机器。这就是为什么我在这里询问一些建议或确认这将起作用并且是 100% 安全的。
【问题讨论】:
-
为了保护 AWS,您可以使用 IAM 角色。 docs.aws.amazon.com/AWSEC2/latest/UserGuide/UsingIAM.html 保护 Linux 机器:stackoverflow.com/questions/21498667/…
-
应用程序 shell 是否能够退出或执行 bash 命令或像“export”或“enable”这样的内置命令?
-
@somsgod 他们实际上根本不需要 bash 但感谢它可能有用(我知道替换用户的 shell 可能会有很大问题)
-
@IgorServulo 否,控制台应用程序根本不会运行任何子命令。我还打算将其编译为静态二进制文件
-
如果您设法阻止来自应用程序控制台的所有内置命令,并且在应用程序控制台内您已限制服务器内部的操作 (rwx),则更换外壳就足够了。
标签: security amazon-ec2 ssh console-application