如何以root身份从Rails运行命令?

Dra*_*ail 5 ruby ipc ruby-on-rails

我正在考虑编写一个Rails应用程序来管理cPanel等服务器。

最困难的部分是选择最佳的方式来运行需要root特权(例如)的命令adduser,或执行需要其他用户特权的事情(例如更改nginx配置文件)。

我只知道两种方法可以做到这一点:

  1. 我可以编写一个独立的守护程序,该守护程序将以root身份运行并完成所有工作,并通过IPC或类似方法接收命令。
  2. 以root用户身份运行Rail的服务器,并从中执行任何操作或从中执行命令/ bash脚本。

以下哪种方法最好?是否存在另一种方法?

the*_*Man 3

你需要做#2。

以 root 身份启动您的应用程序,您将能够以 root 身份执行所有操作。

编写代码作为守护进程运行也可以,但调试起来比较困难。

无论哪种情况,您都必须防止通过未经授权的访问进行黑客攻击。只要一不小心,您的系统就会受到损害。