我可以使用 root 用户将 python bottle 应用程序公开到 Internet 吗?

May I use a root user to expose the python bottle application to the Internet?

我用Bottle做了一个WEB应用,想发布。我决定对 Web 服务器使用 paste,因为 official document 说这是最简单的方法。

为了让网络服务器进程监听80端口,该进程必须由root用户启动。我不是安全专家,无法判断使用 root 用户启动直接暴露在互联网上的应用程序是否安全。

在这种情况下我应该避免使用 root 用户吗?

建议创建一个受限用户的 chroot 环境。

在这里您可以找到关于如何创建 chroot 环境的指南www.howtogeek.com/441534/how-to-use-the-chroot-command-on-linux/amp/

没有

不要 运行 您的网络服务器 root

Shall I avoid using root user in such a situation?

是的,避免 运行ning 作为 root

In order to let the web server process listen on the port 80

您的 Web 服务器不需要侦听端口 80。一种常见的构造方法是在您的 Web 服务器前面放置一个代理(如负载平衡器)。您的服务器侦听 non-privileged 端口(例如 8000);负载均衡器(正在侦听端口 80)将所有请求转发到您的服务器。

接受的答案(实际上并没有回答你的问题)只是提到了 chroot,但我建议你不要担心。 运行 作为 non-privileged 用户比使用 chroot 更重要。我认为 chroot 相对于你最初对 运行ning 的担忧是次要的,因为 root.