这些天来,我正在读这篇Facebook工程学的文章具有SSH的可扩展和安全访问。这篇文章的大部分内容对我来说都是有意义的,但我没有足够的经验来理解有关堡垒主机的段落:
安全域。在我们的基础设施中,工程师无法直接访问由网络防火墙执行的生产系统。相反,我们使用一个堡垒主机来实现生产。工程师只能从受信任的网络对这些堡垒主机进行身份验证。这些主机使用集中式LDAP和Kerberos安装来共享帐户信息,它们需要双因素身份验证以防止密码泄漏。一旦用户经过正确的身份验证和授权,后台进程就会与我们的内部CA联系,请求一个签名的SSH证书。该证书包含允许该特定工程师使用的所有主体。从堡垒主机获得适当的证书后,工程师可以将SSH作为根用户或其他低特权用户进入生产机器。这样,我们确保没有任何工程师有比他或她更多的权限。我们不会在笔记本电脑上放置SSH证书,因为很难控制每个员工在其上运行的所有内容。尽管笔记本电脑是集中管理的,但它们比堡垒服务器更容易出现漏洞。因此,我们不信任他们的SSH私钥。
不幸的是,本文没有进一步解释工程师如何登录到堡垒主机中,以及SSH密钥存储在哪里。根据这一段,在我看来,工程师首先(从他们自己的笔记本电脑上)登录一个地下室主机,然后在获得证书并穿上堡垒主机后,工程师就可以从地下室主机登录到生产机器了。
第二段说,他们“不把SSH证书放在笔记本电脑上”,这表明他们似乎有办法防止SSH证书被复制到工程师的个人笔记本上。然而,作为一名安全新手,我很难想象他们如何才能防止这种情况发生。特别是,如果工程师通过SSH登录到堡垒主机,看起来就像一个简单的scp
或rsync
可以将SSH证书复制回个人笔记本电脑。
我的其他想法是:
发布于 2022-10-07 23:14:11
通常,当管理员希望对服务器进行SSH访问时,他们会创建一个客户端证书,将其存储在设备上(例如管理员/工程师的笔记本电脑),并使用从膝上型计算机到服务器的直接网络连接访问服务器,并使用证书作为身份验证。
Facebook表示,他们更进一步,通过循环证书和堡垒主机来增加PAM (特权访问管理),以防止与服务器的直接连接发生任意连接。
到达生产服务器的唯一方法是从堡垒主机。因此,在笔记本电脑上安装证书不会有任何作用,因为笔记本电脑无法连接到服务器。
它们还在用户连接到堡垒主机时为用户生成新的证书。那样的话,管理员总是使用新的证书,而任何可能被破坏的旧证书都会失效,所以即使证书被复制出来,它也是无用的。
因此,所有这些都与防止复制证书无关。本文解释了为什么他们使用一个堡垒主机进程,以及他们如何管理他们的证书。
请注意,所有这些都在您链接的文章中。
https://security.stackexchange.com/questions/265334
复制相似问题