我正在一家小型公司工作,那里有 4 名开发人员(几年后可能会增加到 6 名或 8 名)。我想建立一个环境,让开发人员可以访问互联网,但不能在互联网上共享公司的任何数据。我想到了以下计划:
- 设置一个集中式 git 服务器(Debian)。该服务器将具有互联网访问权限。开发人员在该服务器上只拥有 git 帐户,不会拥有任何其他帐户。
- 不要让开发人员的个人机器 (Windows XP/Windows 7) 访问互联网。
- 在中央服务器(托管 git 的同一台服务器)上运行虚拟机(任何多用户操作系统)。开发人员将在此虚拟机上拥有一个帐户。他/她可以通过此虚拟机访问互联网。禁止此虚拟机与底层服务器以及任何开发人员的机器之间进行任何数据移动。
- 所有开发人员都需要在本地机器上配备 USB 端口,以便将代码刻录到微控制器中。此端口仅供将代码转储到微控制器(当前情况下为 MPLAB)的相关软件使用。所有其他软件均不得访问该端口。
- 默认情况下,与服务器关联的所有 USB 端口将仅供在其上运行的 VM 使用。这将使开发人员能够在 USB 记忆棒和 VM/互联网之间移动个人数据。
随着越来越多的开发人员加入,通过该计划为他们提供互联网支持将变得困难,因为它会降低服务器上运行的虚拟机的速度。有人能建议一个更好的替代方案吗?上述计划有什么明显的缺陷吗?
预期服务器的一些关键细节如下:1)操作系统:Debian 2)内存:8GB 3)CPU:Intel Xeon E3-1220v2 4C/4T
附言:该问题是由 Stack-Exchange(超级用户)在其他论坛上提出的。由于我发现这不是一个提出此问题的合适地方,因此我已将其从那里删除并在此处提出。
答案1
Michael 说得对。你需要一个防弹衣公司政策第一并设立一个法律团队来执行该协议。
然而,您可以采取一些措施在安全性和可用性之间进行权衡。
一个好的第一步是聘请具有良好安全背景的网络架构师。
然而,理论是这样的:
首先,将您的网络分成两个物理段,一个用于公司专有,一个用于公共领域。
在这两个信息域中,您有单独的计算机,并且每张桌子都有一个 KVM,这样它们就不需要 4 个显示器,只需要 2 个。
在您的专有网络中,您拥有开发、测试和构建环境、内部 Git 服务器等。
在公共网络上,您拥有诸如 Exchange、Web 代理等。
您需要一个非常安全的网络代理来允许您拦截和过滤 HTTPS 流量,以便您可以执行深度数据包检查来查找看起来像公司专有材料的内容。
您必须找到一些软件来拦截复制到 USB 设备和网络共享的数据,并检查是否有公司专有数据在任一方向复制,并在专有数据被转移到公共领域时阻止传输。
您的公共网络应该受到双重保护,即不同供应商的防火墙,与互联网隔离,其中 DMZ 用于出站流量,而复杂的下一代防火墙则专注于应用程序流量,而不是状态端口阻止。
设置完成后,聘请一家经过认可的渗透测试公司来评估您的网络,然后根据他们的建议进一步保护您的网络。
哦,还有钱。你需要很多钱,既要支付顾问和法律团队的费用,也要购买先进的防火墙和检查技术。