问题标签 [jail]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - debootstrap 访问原始根系统 chroot jail
我正在编写一个像 spoj.pl 这样的在线编码 jude 网站,并且我正在创建一个用于编译和执行程序的监狱。我写了一个脚本,它采用 c/c++ 源代码,编译并运行代码。我需要在 debootstrap 创建的监狱中执行此程序,但我必须限制对我的脚本的权限并允许二进制文件仅读取原始 /home/ubuntu 系统中存在的输入/输出文件。
可能吗 ?
我需要使用受限的监狱用户在监狱中调用 /home/ubuntu 的 scripts.py,编译代码并运行二进制文件。Jail 用户永远不能访问任何 /home/ubuntu 文件,除了 input_output/input*txt 我可以授予然后执行权限
linux - 创建一个 Chroot 监狱并将所有系统文件复制到监狱中
我正在 linux 中创建 chroot jail,但我无权访问任何系统文件,如 ls/cd/gcc/g++。我需要将哪些必要的 libs/bin/systme 文件复制到我的 chroot 监狱?
linux - Linux VSFTPD:将“特定用户”关进其家中?
我同时使用 Redhat 和 CentOS。当我执行以下操作时:
然后所有用户都在家中入狱。
我真正想知道的是:
- 如何只监禁特定用户?
linux - Linux VSFTPD:将“特定 SFTP 用户”关在家里?
我同时使用 Redhat 和 CentOS。我以前想把一个“特定用户”关在家里。然后我按照这个答案得到了它。
当用户(比如说,使用 FileZilla)使用:
- 协议:
FTP
.. 没事!
但同样,当用户连接时:
- 协议:(
SFTP
在 FileZilla 设置中)
.. 该特定用户的监禁不再起作用。还是可以浏览的。
我怎样才能让它拥有:
- 在
vsFTPd
,使用时将特定用户监禁到其家中Protocol: SFTP
。
谢谢!
python - 在 chroot-environment OpenBSD 中配置设备
我一直在挠头一段时间,找不到让它工作的方法......
我想在我的 OpenBSD 服务器上运行一些 cgi 脚本(用 Python 编写)。由于 OpenBSD 上的网络服务器在监狱中运行,我重新创建了整个文件夹结构(/bin /dev /usr /usr/local/lib 等),但是当我'我试图导入一些需要访问 /dev/urandom 设备的 Python 模块。
我已经使用 mknod 创建了设备专用文件。
我得到以下输出
和
所以我在 /var/www/dev 文件夹中执行了以下命令(OpenBSD web-server 在 chroot -u www /var/www 中运行)
然而,Python 仍然报告说
相同的代码在非 chroot-ed 环境中运行良好。
任何帮助将不胜感激!
python - 在我的服务器上运行任意不友好的 Python 代码
我正在制作一个游戏,用户可以在其中编写 Python 程序来控制互相战斗的机器人。每一回合(在千回合游戏中),他们的脚本都会在我的服务器上运行,以确定机器人的下一步行动。如何防止这些用户对我的服务器不利?
我已经想到/研究了以下内容:
eval
在有限的环境中编译他们的代码(即__builtins__
禁用)- 使用特定于操作系统的监狱,如
chroot
/ptrace
- 在某种虚拟机中运行代码
我有一个 Python 程序,它运行用户的脚本一千次。如何强制执行最长一分钟的总持续时间、限制他们的内存资源、阻止他们访问任何文件或网络连接等等?什么是理想的解决方案或解决方案的组合?
bash - 让谁在所有监狱中
寻找一个脚本,该脚本将显示所有登录的用户,这些用户按他们登录的 FreeBSD 监狱排序。因此,需要who
在所有当前正在运行的 FreeBSD 监狱和主主机中运行该命令。
我做这个:
但是jexec
需要root执行并且我通常以非root身份登录并且每次都使用su是痛苦的......
这里还有其他简单的方法吗?
linux - 相对于 sshd jail root 的文件结构
我正在为我的系统(archlinux)上的一些用户设置一个 sshd 监狱。在不深入细节的情况下,我想尽量减少问题的范围。
设置/etc/ssh/sshd_config
:
和类似的系统/etc/password
条目:
所以问题是: 主目录是/home/testuser1
相对于sshd_config
条目/var/jailedusers
的,即 passwd 条目应该是/var/jailedusers/home/testuser1
还是其中的/home/testuser1
目录- 并且是同一条船上的外壳 - 是 passwd 条目还是简单的。/var/jailedusers
/home/testuser1
/var/jailedusers/bin/bash
/bin/bash
最后登录时系统/etc/passwd
读取或/var/jailedusers/etc/passwd
按sshd_config
条目读取。
java - 为 Scala 创建一个被监禁的环境需要什么
我是一个网站的开发人员,程序员可以在该网站上提交在游戏中相互竞争的机器人。我正在尝试将 Scala 添加到我们支持的语言列表中,但我在这里遇到了麻烦。
问题是每个机器人都从它自己的监狱运行,我无法让 scala 从监狱运行(Linux 系统顺便说一句),因为我收到一条错误消息,指出找不到可执行文件。在监狱之外,一切都很完美。所以我错过了一些可以投入监狱的东西。我有所有的 Java 依赖库,整个 jvm 文件夹和整个 scala 文件夹..但是还有一些其他的东西仍然丢失,我不知道它可能是什么。
以下是编译脚本的重要行(按我的想法工作)
run_ai 是从监狱运行机器人时调用的脚本,$MAIN 是要运行的主要 scala 文件。正如我所说,这一切在监狱外都很好。
这是创建监狱内所需的一切的脚本。在这里,我显然遗漏了一些重要的东西。
简而言之:从监狱运行 scala 会导致错误:“./scala not found”,如果我尝试其他类似的东西:/scala/bin/scalac,我会得到同样的错误。(运行在监狱中添加的 Java 工作正常)。所以我缺少一些运行 Scala 的东西。
我的问题是:运行 Scala 究竟需要什么?
linux - 在被监禁的环境中运行 Haskell 程序需要什么
我想从我自己构建的监禁环境中运行一个简单的 Haskell 程序。我想运行以下 Haskell 程序:
它只是向标准错误和标准输出输出一个字符串,在监狱外工作得很好。代码编译如下:
正如我所说,我得到了一个运行程序的 run_ai 可执行文件,这在监狱之外可以正常工作。下面是放在监狱环境中的东西,我认为这里缺少一些东西,因为当我在监狱中运行程序时,它绝对什么都不做,它甚至不退出,也没有给出任何错误/输出转储。
我知道监狱本身很好用,因为我已经成功地将它用于十几种其他编程语言,但是 Haskell 让我很头疼,因为我对可能出现的问题一无所知。遗憾的是,我不是 Haskell 方面的专家,但我只需要它来编译并在监狱中运行。我是否遗漏了运行可执行 Haskell 文件实际需要的东西?
所以我的问题是:我错过了什么/做错了什么?