我成功地使用了本教程: http : //techbot.me/2010/08/deployment-recipes-deploying-monitoring-and-securing-your-rails-application-to-a-clean-ubuntu-10-04-install-使用nginx和独angular兽/我们的ruby on rails服务器上。
但我不知道这个安装是否安全。 让我感到困扰的是同一个用户“部署者”,谁是一个sudoer,正在运行这个应用程序。
这是否会打开通过某种forms的代码注入攻击者获得完全访问系统的可能性(与apache进程运行的普通apache安装相反,如www-data)?
一般来说,使用sudoers中的deployer并不一定意味着攻击者是自动根的; 攻击者仍然需要运行sudo才能从deployer帐户升级。
要求deployer运行sudo的密码将会更安全。 你会更安全,如果你限制deployer可以使用sudo运行的sudo比“所有”实际需要的,例如,如果deployer只有sudo privs,以便它可以重新加载nginx,那么你可以从“员工”组,然后添加一行到/etc/sudoers例如:
deployer ALL=(ALL) /etc/init.d/nginx reload
请参阅sudo文档以获取更多详细信息。
另外,您正在查看的文档看起来更像是一个基本的部署指南,而不是“保护您的网站”指南。 例如,看看这个RubyConf对话,以获取更具体的安全性。