让一个系统能够变得更加坚固的最好办法是将系统独立出来。请参考你公司的安全管理策略和相关人员来找到你公司应该采用何种安全策略。这里有很多事情需要我们考虑,例如考虑如何安装我们的操作系统,应用服务器,数据库服务器,网络,防火墙,路由等。
这里我们有可能对这些配置进行一些基本的描述。
这个页面中的安全配置是基于我们已知情况下的最好配置了。
配置 Web 服务器
请参考有关系统管理员中的下面有关的信息:
- 配置 Apache 服务器来限制相关页面只有需要管理员权限的用户才能进行访问:Using Apache to limit access to the Confluence administration interface。Confluence Security.
- 如何降低风险和暴利攻击:Using Fail2Ban to limit login attemptsHow to reduce the risk of brute force attacks: Best Practices for Configuring Confluence Security.
配置应用服务器
请参考下面有关应用服务器级别的系统管理员指南:
配置应用
有关如何你在 Confluence 设置角色,权限和过程的方法将会对 Confluence 产生很大的影响,不同的设置导致的安全结果也是不同的。
下面是有关一些 Confluence 特定的内容需要考虑的。没有任何安全设置都能够保证 100% 的安全的。这些安全策略被用来降低安全攻击对你系统产生的影响而让你系统能够更好的持续运行。
- 保持 Confluence 中只有少数用户具有管理员权限。基本上来说越少越好。例如,最多不要超过 3 个系统管理员。
- 同样的,限制具有较高权限的和用户组中的用户数量。如果只有一个部分应该访问敏感数据的话,那么限制这个敏感部门的用户数量。不要为了方便而不为这些用户设置特定的安全策略。不要给不需要访问敏感数据的用户的访问权限。
- 管理用户应该针对他们的管理员级别不同设置有不同的 Confluence 账号,这个账号应该与这些用户每天都使用的账号区分开来。如果John Doe 是一个系统管理员的话,他应该有一根常规的用户账号,这个账号不应该具有管理员权限来让他进行每天的工作(例如在 WIKI 写页面等)。这个账号可能被设置为 'john.doe' account。同时,这个用户应该还有一个完全不同的账号(这个账号应该不容易被外界随便猜测出来,甚至都不应该使用他规则的名字)来进行管理员相关的操作。这个账号可能为'jane smith' – 使用这个名字为一个假的名字,外界甚至没有办法猜测这个名字。这种设置的好处是,如果攻击者获得了 John Doe 的所有信息,包括 John Doe 的密码(可能是从 John Doe 的个人账号中偷出来的),但是攻击者没有办法确定管理员用户的用户名,因此攻击者也还是不能登录管理员系统进系统相关的操作。
- 限制管理员操作只有你才可以做。如果你不需要你的管理员在公司外部的网络进行进行任何管理操作的话,你可以限制管理员操作的界面只要特定的 IP 地址才能访问管理员界面中的的配置信息。请参考页面 Using Apache to limit access to the Confluence administration interface 中的内容进行配置。
- 当员工进行离职的时候,你需要创建公司员工的离职策略,并形成文字。
- 按时进行安全审查。了解当系统被攻击的时候,谁可以帮助你解决问题。进行 ‘如果这样了’ 我们应该进行如何操作的议题。(当用户在外出度假的时候密码被偷窃了,我们最糟糕的情况将会面临什么?我们将如何减少损失?)。
- 请确定你的 Confluence 数据库用户(和所有数据源的用户)具有只他们需要的权限,不要大范围赋权。
- 监控你的文件系统中的文件。如果一个攻击者希望获得你系统中的用户信息,他们通常会尝试获得多个账号的访问权限。有时候这个通过添加恶意代码来实现的,比如通过修改你文件系统中的文件。对你操作系统上的文件,可以考虑运行常规的校验来确定没有恶意代码被添加到你文静系统中。
其他需要小心考虑的地方:
- 按时对上面描述的内容进行监控。很多事情在开始的时候可能没有问题,但是随着时间的进展,可能会导致问题恶化:
- 一个系统在开始的时候确实只有 3 个系统管理员,但是随着时间的推移和变化同时也没有人对系统管理员数量进行控制的话,一年后可能系统中有 30 个管理员了。
- Apache 的管理员的限制可能在系统开始的时候是正确安装限制的,但是随着系统进行了多次升级后,我们可能忘了更新 Apache 的安全访问策略了。
再次说明的是,上面的所有安全配置可能不是所有你需要设置的安全信息和功能,安全设置与你系统安全的需求还是有很大关系的。同时,请注意没有人能够在安全上能够进行完全的保证。我们只能让攻击变得更加困难,我们好有足够的时间修复我们发现的问题。
https://www.cwiki.us/display/CONF6ZH/Best+Practices+for+Configuring+Confluence+Security