问题标签 [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.

0 投票
2 回答
2466 浏览

node.js - 在 FreeBSD Jail 中自动启动 npm 脚本

我已经在 FreeNAS 9.10 的 JAIL 中安装了一个 npm 包/脚本。(基于 FreeBSD)如果我在安装脚本的目录中运行“npm start”,它会完美运行。

但是,我需要在监狱启动时自动启动它。我现在不知道该怎么做。我需要创建一个 rc 脚本吗?

基本上我需要做的就是在启动时在正确的目录中给出“npm start”。我怎么做?

谢谢

0 投票
1 回答
991 浏览

php - 不止一个 php 监狱

我在互联网上找不到任何如何创建单独的 php 监狱,因此我可以为 /var/www/html/ 中的某人创建一个“webspace”目录,并且他们的脚本不能离开他们的 webspace 目录,因此该文件夹是根目录php 脚本,我可以安全地将我的脚本上传到另一个目录中,并且该人不可能访问其目录之外的文件。有没有解决方案如何创建单独的监狱或者我必须使用 UserDir ?

0 投票
0 回答
401 浏览

apache - 如何在 FreeBSD 中限制每个用户的 Apache MPM Prefork 进程?

我正在FreeBSD 10.3-BETA使用Apache-2.4.18 MPM Prefork. Apache 住在监狱里,通过devfs, procfs, fdescfs,和(和其他相同的文件)实际副本安装。/homenullfs/etc/{passwd,group,*db,login.conf}

MaxWorkersPerUser我在 ApacheMPM 文档中找不到任何类似的指令,所以我试图通过 FreeBSD 限制系统来限制它。

login.conf对任何用户都有一些限制,例如:

当我尝试创建更多允许的进程时,出现标准错误:

但是,如果我将连接到我的站点,则 apache 进程会从我的用户中产生 - 并坚持下去。因此,在限制为 的情况下maxprocesses=30,我可以生成ServerLimitapache 进程。并且它们都有以下限制maxproccesses=30

然后我尝试使用rctl限制。同样,即使 rctl 显示它应该将 maxproc 限制为 30,但允许增加三倍:

(由于系统存在,数字不一样,pgrep|wc我没有立即收集所有统计数据)我做错了什么?谢谢指教。

0 投票
1 回答
181 浏览

c++ - 如何防止将文件包含在系统目录之外?

#include由于安全原因,我必须防止系统目录中的任何文件。是否有任何限制可以防止#include<...>#include"..."包含不安全的文件,例如 #include </dev/tty>or #include "/dev/random"

我已阅读Docs of C Preprocessor的头文件章节以及类似的问题How do I prevent aquoted include search the directory of the current source file? 但找不到合适的方法。

由于-I-命令已经过时并且没有其他方法可以完成相同的功能,我可以使用jailkit作为低权限用户编译代码吗?还是有其他方法可以确保编译过程的安全性?

0 投票
1 回答
79 浏览

freebsd - FreeBSD 监狱 mkstemp 失败

我正在尝试使用此设置在我的监狱中安装一些东西:我按照以下方法制作了自己的监狱风格:FreeBSD 论坛 到目前为止,一切对我来说都很好,我已经将 /usr/ports 和 fstab 安装到监狱,启动监狱并进入它。但是在监狱里我不能使用make。

例如:

我对这个错误感到有些困惑,以及没有可用的 vi 等等......

0 投票
1 回答
174 浏览

c - 从 C 中实例化 BSD 监狱

我一直在尝试能够从应用程序创建 BSD 监狱。基于监狱(2)的FreeBSD手册页,我想出了:

因此,我想知道 ip4 和 ip6 字段的示例值是什么样的?此外,我可以使用哪些工具来检查监狱以确保我正确地实例化了它们?(我传统上是 Linux 用户,所以这对我来说是未知领域)。

为了澄清字段问题,我了解 Linux 中的 in_addr 类型是什么,我可以假设它与 FreeBSD 相同吗?

0 投票
1 回答
213 浏览

freebsd - 在启动时挂载被监禁的 zfs 分区

每当我重新启动我的 FreeBSD 系统时,我都必须登录到我的其中一个监狱以使用 zfs mount 手动安装文件系统。该分区具有jailed zfs 属性。监狱由 ezjail 管理,但监狱本身都在 ufs 分区上。数据集列在监狱的 ezjail 配置文件中。

0 投票
1 回答
173 浏览

freebsd - Freebsd jail 命令无故执行错误

我尝试执行命令:

我调试 /etc/rc.d/jail 并转储真正的命令是:

输出是:

文件 /var/run/jail.myjail.conf 由 rc jail 脚本根据 rc.conf 中先前工作的监狱的变量自动生成

内容是:

怎么了?

0 投票
0 回答
227 浏览

c - 为 OpenBSD 编写一个有效的监狱而不改变它的源代码有多大可能?

我一直在研究可能的操作系统来托管网站并对安全性感兴趣。我真的很喜欢 FreeBSD 监狱系统,并且理解 OpenBSD 几年前就停止了它的监狱系统,因为可能会利用竞争条件。我的一般问题是:用 C 语言编写一个不依赖于 OpenBSD 源代码更改的监狱是否可行?或者是否有必要在内核等中进行调整才能让监狱正常工作?

例如,是否可以在 OpenBSD (vmm) 中为新的虚拟机编写一个包装器,这实际上使用户无法访问虚拟机之外的任何内容?或者这基本上是不可能的,因为由于 OpenBSD 的编码方式或 C 与它的交互方式,总会有办法侵入系统?

0 投票
1 回答
330 浏览

freebsd - 为什么 poudriere 创建一对有和没有 IP 地址的监狱

在使用poudriere测试端口时,如下所示:

我收到了这个错误:

由于某种原因,无法找到/下载该软件包,因此在我尝试检查监狱解析器是否存在问题时,我通过执行以下操作列出了现有的监狱jls- 我得到了引起我注意的输出:

我注意到的是,如果我进入没有分配 IP 地址的监狱jexec 364,例如,我可以 ping/获取任何主机,但如果我进入有 IP 地址的监狱jexec 363,在这种情况下127.0.0.1我无法 ping /解决:

因此我想知道创建一对监狱的想法是什么,一个有IP(不可路由)和另一个没有IP(可路由),背后的逻辑是什么?

以防万一这是我用于 poudriere 的配置/usr/local/etc/poudriere.conf

更新

要解决我在交互模式下输入的问题 - 请注意-i

然后:

那获取了包裹,我只是将它们复制到/usr/ports/distfiles/

再说一遍:

这是一个丑陋的 hack,但主要问题是Makefile中有一条错误的行正在复制内容:

应该:

但仍然想知道为什么这对监狱是在有 IP 和没有 IP 的情况下创建的。