可以通过HTTPS为应用程序提供服务的Node.js服务器作为非root用户运行吗? 问题是没有sudo,似乎没有办法像这样运行脚本,因为它必须访问证书。
我知道可以在启动Node后删除root权限,但如果可能的话,我想避免这种情况,因为这可能会导致一些意外的行为。
证书问题很容易解决,只是把它们给你的用户,并相应地调整权限。
你会发现,虽然你不能让你的服务器监听HTTPS端口,443,因为它是一个特权的(<1024)。
你可以用不同的方法解决这个问题,比如:
前面的反向代理(Apache / nginx)将请求转发到侦听较高端口的节点
端口转发443-> 1443(或者高于1024端口的任何端口)以及在1443上监听的节点
使用linuxfunction(CAP_NET_ADMIN IIRC)。
也许还有其他方法。