我在使用Ubuntu 14.04的数字海洋水滴上运行我的rails应用程序。在发布后的几天内,我的液滴被黑了。在设置液滴时我已经处理了以下事情。但是安全性仍然受到了损害。
1)没有root密码。我用ssh密钥设置了root用户 2)rails应用程序托管在私人仓库中。所以甚至连机器的IP都没有曝光。 3)更改了rails app的默认端口。
我知道上面的配置是基本的,但它通常可以帮我完成工作。
在液滴受损后我设置了一个新的液滴。同样,在几天内,新的液滴也受到了损害。所以我的设置肯定存在安全漏洞。
为了提供有关rails应用程序的背景知识,它是一个使用Twilio语音API,MySQL作为数据库,独角兽作为应用程序服务器,sidekiq和redis进行后台处理的应用程序。
我仍然可以访问最新的受损小滴。在受损的Droplet中寻找线索,并在authorized_keys文件中注意到一些流氓ssh密钥条目。我找不到任何其他异常或者authorized_keys文件如何获得新条目。
我应该如何调试此问题?
答案 0 :(得分:0)
redis设置中存在安全漏洞。以下文章详细解释。 http://antirez.com/news/96
长话短说,开箱即用的redis设置将6379端口暴露给互联网。