我知道大部分的一般建议:“关闭不必要的服务”、“不,真的,关闭不必要的服务”、“最小特权”等等。我也看到了一些用于强化 Linux 机器的指南和/或工具,例如 Bastille,但似乎没有一个是针对 NetBSD 量身定制的。
为了列出此列表,假设我已经确保root
没有 SSH 访问权限,但我没有安装任何服务器软件。
保护新的 NetBSD 盒的第一步是什么?
更新:明确地说,我正在寻找具体步骤。在服务器管理方面,我完全是自学成才,但我觉得我对一般原则有相当的了解。我正在寻找详细信息有两个原因:
- 看看是否有我忽略的 NetBSD 特定内容。
- 看看其他人是否有更好的方法将一般原则付诸实践。
谢谢。
答案1
请参见安全(8)在 NetBSD 手册中。您可以:
- 放安全级别强化
rc.conf
生产系统 - 启用
security.curtain = 1
系统配置参数限制用户互相见面。 - 制作相关文件不可变的或者仅附加和标志位
- 启用 PaX保护和地址空间布局随机化(澳大利亚卫星定位系统) 扩展系统配置参数(
security.pax.mprotect.global=1
,security.pax.aslr.global=1
) - 考虑威瑞克已验证的二进制文件
另请参阅 Elad Efrat 的论文NetBSD 的最新安全增强功能。
请注意,阻止更改二进制文件的功能也会阻止您升级系统,因此请准备在单用户模式下进行升级。
PaX 扩展可能会阻止某些软件(例如 gnu make)运行。您可以禁用 .global 标志,并使用以下命令在二进制基础上设置 PaX 标志帕克斯特。
答案2
每个系统都一样:
- 安装并配置防火墙。使其尽可能严格。
- 确保系统定期更新
- 禁用 ssh 密码登录,仅允许证书
- 建立良好的日志记录和日志分析程序。
- 设置服务器时:如果可能的话,但将其关在监狱里(chroot jails)
- 不要安装 X11、网络浏览器或任何非服务器软件(当然,工作站除外……)。
- 断开与网络的连接;-)
答案3
正如 SvenW 所说,基本概念非常适用于所有领域。
如需详细了解,互联网安全中心有一个基准适用于 FreeBSD。我想应该很容易就能转换到您的环境中。