使用虚拟文件系统在沙箱中运行nodejs

问题描述 投票:0回答:1

我正在研究在线python编译器的项目。当用户发送python时,服务器将执行它。我想要做的是,使用虚拟文件系统创建一个沙箱,实例化该脚本,并且该沙箱应该远离真实服务器的文件系统,但是nodejs应该能够控制该沙箱的stdin和stdout。

如何使其成为可能?

node.js sandbox virtualfilesystem
1个回答
1
投票

Docker是将内容沙盒化的好方法。

您可以跑步

docker run --network none python:3

从您的node.js服务器。查看其他switches of docker run以插入尽可能多的安全漏洞。

该是,您运行docker命令from your node.js server and pass the user's python code via stdin

现在,如果您的node.js服务器位于一台计算机上,而发件箱应在另一台计算机上运行,​​您告诉docker使用DOCKER_HOST environment variable连接到另一台计算机。

© www.soinside.com 2019 - 2024. All rights reserved.