假设您在 Amazon ec2 上创建一个新实例,并选择默认的 Ubuntu AMI。您会推荐哪些方法让实例尽可能安全?
埃利亚斯
答案1
这是一个相当模糊的问题,答案跨越了书籍。无论您部署到哪里,您谈论的都是保护 Linux 服务器。
答案2
你部署它的目的是什么?这是一个 Web 服务器、数据库还是其他什么东西?正如 Nathans 所说,你主要在谈论保护 Linux 服务器。
答案3
Elias:简单的答案是决定要公开哪些服务(ssh、http、https),并在您的机器上仅启用这些服务。我通常将 ssh 分配给非标准端口(端口 22 以外的端口),因为我注意到那里会发生暴力攻击。通过编辑 /etc/ssh/sshd_config 更改 sshd 端口并重新启动 ssh 服务。请记住,您可以在机器上运行服务,但仍可以排除通过安全组对其进行的访问。
考虑Fail2ban或者其他阻止暴力 ssh 攻击的替代方案。
不要忽视显而易见的事情。我曾目睹过攻击探测标准 LAMP 内容,检查常用密码。使用以下命令创建用户帐户:sudo adduser --disabled-password,然后将公钥复制到实例。避免使用不使用安全连接的服务 (ftp)。我倾向于通过 https 而不是 http 运行 Web 服务。
我甚至还没有触及表面,但如果你应用一些常识性程序,你就应该可以避免最常见的通用攻击。