尽可能遵循安全最佳实践很重要,但您不想让事情变得过于困难或因担心跟上最新的漏洞而失眠。根据我的经验,有两个关键因素可以帮助您确保个人服务器足够安全,以便在保持理智的同时投放到互联网上:
1) 通过默默无闻的安全性
不用说,在“现实世界”中依赖它是一个坏主意,而且不值得娱乐。但那是因为在现实世界中,坏人知道那里有什么,并且有战利品。
在个人服务器上,您将遭受的大多数“攻击”只是自动扫描已经受到攻击的机器,寻找已知易受攻击的产品的默认安装。如果您的服务器在默认端口或默认位置没有提供任何诱人的东西,那么自动攻击者就会继续前进。因此,如果您要运行 ssh 服务器,请将其放在非标准端口 (>1024) 上,它很可能永远找不到。如果您可以在 Web 服务器上使用这种技术,那就太好了,也可以将其转移到一个不起眼的端口。
2) 包管理
除非绝对必要,否则不要自己从源代码编译和安装 Apache 或 sshd。如果你这样做了,你就有责任跟上最新的安全补丁。让来自 Linux 发行版(如 Debian 或 Ubuntu)的优秀软件包维护者为您完成工作。从发行版的预编译包安装,保持最新状态只需偶尔发出apt-get update && apt-get -u dist-upgrade命令,或使用 Ubuntu 提供的任何精美的 GUI 工具。