假设您为客户部署了基于 Debian 的 Xen VM。您如何以最安全的状态将其交给客户,同时又使系统保持客户期望的状态?
我不喜欢通过 SSH 访问 root 帐户而不受任何 IP 限制的想法 - 但这似乎是最实用的。我个人赞成在我们的自动部署过程中生成 SSH 密钥、创建非 root 用户、禁用 root 登录并仅允许非 root 用户使用其密钥登录 - 然后告诉客户他们可以按照自己的意愿进行更改。
把钥匙交给客户怎么样?电子邮件?
答案1
如果您想授予 root 访问权限而不授予 root 权限,那么您可以使用 sudo,这样所有活动都会被记录下来,并且您还应该为客户端无权访问的日志设置单独的 syslog 服务器。
您可以使用密钥,但您仍然允许任何源连接,使用硬件防火墙或 iptables/ipchains 您可以锁定源。
再次,我不会仅仅将端口开放到互联网,将默认的 22 更改为高端端口,并拥有内联应用程序防火墙或 IPS 单元。
有一些免费的开源 IPS 软件,但我只使用过 IBM ISS Proventia 等商业软件
斯图尔特
答案2
同时保持系统处于客户期望的状态
我认为这是问题的核心。对于许多选择来说,易用性和严密安全性之间存在着连续性,理想情况下,您不会通过艰难的方式(通过客户投诉)发现客户期望的界限在哪里。
我建议你吸取竞争对手的教训。去注册各种(备受尊敬的)提供商的 VPS,看看他们怎么做的。然后模仿同样的事情(除非每个人都做错了)。这样,从你的竞争对手那里转换过来的客户也会有熟悉的设置体验。
答案3
这只是我的一个想法,但如果您有一个自动管理系统,可以在付款处理后为 VPS 分配用户名和密码,为什么不从用于从管理系统检索 root 密码的 IP 地址设置 30 分钟的防火墙规则?之后,他们更改 root 密码,管理系统尝试使用原始密码登录(只是为了检查密码是否已更改),并打开 VPS 的防火墙。
- 用户通过自动支付系统支付服务器费用
- 付款通过 VPS 主机上的任何内部程序或系统进行处理。
- 用户登录管理仪表板获取 VPS IP 地址和密码(可能点击“授权此 IP 地址 30 分钟”链接)
- 管理系统向 VPS 前面的防火墙发送请求,授权 $usersip 访问 $vpsip 30 分钟
- 用户登录VPS,并更改root密码。
- 用户点击仪表板中的“向世界开放 VPS”链接,即可在 VPS 上设置正常的防火墙限制。
可能不是最容易使用的,但如果您想实现一个安全的系统,这是一个想法。