![使用默认的“ubuntu”用户部署应用程序还是创建单独的用户?](https://linux22.com/image/727875/%E4%BD%BF%E7%94%A8%E9%BB%98%E8%AE%A4%E7%9A%84%E2%80%9Cubuntu%E2%80%9D%E7%94%A8%E6%88%B7%E9%83%A8%E7%BD%B2%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E8%BF%98%E6%98%AF%E5%88%9B%E5%BB%BA%E5%8D%95%E7%8B%AC%E7%9A%84%E7%94%A8%E6%88%B7%EF%BC%9F.png)
我有一个 Ruby on Rails 应用程序并使用 Capistrano 将其部署到服务器。
部署用户和运行应用程序的用户是相同的 - 默认ubuntu
用户。(具有 sudo 访问权限ubuntu ALL=(ALL) NOPASSWD:ALL
:)
也许这种设置有点不安全,万一我的 Rails 应用程序存在缺陷,允许用户访问系统ubuntu
?
我正在考虑让这两个用户:
deploy
用户:仅具有 sudo 访问权限以nginx
在服务器上启动/重启。具有对服务器的 SSH 访问权限。railsrunner
:没有 sudo 访问权限,也没有 SSH 访问权限 (railsrunner:x:12345:12345::/nonexistent:/usr/sbin/nologin
)
这是个好方法吗?拥有deploy
用户或railsrunner
用户本身有什么好处吗?还是我应该只使用ubuntu
用户?(或者其他什么?)