问题标签 [chroot]
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 - 如何在 chroot 监狱中运行命令而不是 root 并且没有 sudo?
我正在设置一个最小的 chroot 并希望避免其中包含 sudo 或 su 但仍以非 root 身份运行我的进程。这是一个小技巧,因为运行 chroot 需要 root。我可以编写一个程序来执行此操作,如下所示:
这是我最好的选择还是有一个标准工具可以为我做到这一点?
我在这里推出了自己的:
python - Python脚本打开一个bash提示终止脚本
我想在 python 中编写一个 chroot 包装器。该脚本将复制一些文件,设置一些其他内容,然后执行 chroot,并且应该让我进入 chroot shell。
棘手的部分是我不想在进入 chroot 后运行任何 python 进程。
换句话说,python 应该完成设置工作,调用 chroot 并自行终止,将我留在 chroot shell 中。当我退出 chroot 时,我应该在我调用 python 脚本时所在的目录中。
这可能吗?
ssh - chroot 访问 www 文件夹
这是设置
sshd_config:
我可以很好地连接到文件夹
但是我无法访问网站开发者文件夹,因为它超出了定义的 chroot 目录的范围
我怎样才能访问这个目录?是否可以通过 sshd_config 定义访问权限?
security - 如何通过 rsync 安全地接收来自最终用户的文件
我想允许我的 Web 应用程序的用户通过 rsync 上传目录的内容。这些只是在线注册的用户,所以我不想为他们创建永久的 unix 帐户,并且我想确保他们上传的任何文件都仅存储在我的服务器上特定于他们帐户的目录下。理想情况下,流程应该是这样的:
- 用户通过经过身份验证的 Web UI 说“我想用 rsync 更新我的文件”
- 服务器说“好的,请运行:rsync /path/to/yourfiles uploaduser123abc@myserver:/”
- 客户端运行它,将任何已更改的文件更新到服务器上
- 上传位置是 chrooted 什么的——我们要确保客户端只写入服务器上指定目录下的文件
- 理想情况下,客户端不需要输入密码 - 用户名中的 123abc 足以作为一个秘密令牌来保证这个 rsync 事务的安全,并且在事务之后这个令牌被销毁 - 在新的步骤 1 发生之前不再有 rsync。
- 服务器有一组更新的用户文件。
如果您使用过 Google AppEngine,则所需的行为类似于它的“更新”命令——它只将更改的文件发送到 appengine 进行托管。
实现这样的事情的最佳方法是什么?是否会创建一次性用户,然后在这些帐户下的 chroot 监狱中运行 rsync 守护程序?是否有任何库(最好是 Python)或脚本可以做这样的事情?
linux - 我可以限制对某个进程的某些文件的访问吗?
是否可以在 Linux 中启动一个进程,并限制它对某些文件/目录的访问?例如:
some-script.sh
将无法在./sandbox
.
python - 使用 distutils 安装 INTO chroot 环境
我维护了一个 chrooted Linux 映像,并且我有一个想要安装到该 chrooted 映像中的包。
两个软件包最终都安装到两个位置;我无法弄清楚发生了什么以及如何解决它。
我的 setup.py:
完成我想做的事情的最佳方法是什么?
chroot - 使用busybox chroot
我面临一些使用busybox执行chroot的问题。描述:我创建了一个 1GB 的稀疏文件,然后将其格式化为 ext3 文件系统。然后将该目录作为环回设备挂载到/mnt/busybox上,然后创建一个bin目录并将busybox复制到bin下,然后在/mnt/busybox下执行ln -s bin/busybox bin/ls。然后当我尝试跑步时
chroot /mnt/busybox bin/busybox ls chroot:无法运行命令“bin/busybox”:权限被拒绝
即使我在 root 中,当我检查堆栈跟踪时,我发现 chroot("/mnt/busybox") 返回 0 但 execve("bin/busybox", ["bin/busybox", "ls"], [/* 24 vars */]) = -1 EACCES(权限被拒绝)失败。问题是什么以及如何解决?
谢谢
linux - 在 ubuntu 中从 Chroot 内部运行服务器
由于应用程序的特殊性质,我正在考虑在 chroot 环境中运行 Apache、Tomcat 等服务器。使用 schroot 和 debootstrap,我可以在 chroot 目录中创建我的 10.04 ubuntu(minimal ubuntu) 的克隆。我已经在 chroot 中安装了 tomcat 和 apache。但是我如何访问这两个服务器呢?
- 我可以像安装在父服务器上的普通 apache/tomcat 一样访问它们吗?
- 父操作系统可以访问chroot os的apache/tomcat吗?
首先,哪些选项是可能的。其次,我应该处理每个选项的任何警告。
我想要类似的东西
python - 将文件写入 chroot 环境
我正在尝试将数据写入 chroot 环境中的文件。由于我是非 root 用户,因此我与 chroot 通信的唯一方法是使用 schroot 命令。
目前我正在使用以下技巧来写入数据。
但我敢肯定,如果文本有一些特殊字符、引号等,这会让我很伤心。所以有什么更好的方法将 $text 发送到 chroot。很可能我将通过 python 脚本使用上述命令。有没有更简单的方法?
mysql - 在 chroot 中运行 mysql
我的 10.04 ubuntu 机器上有一个 chroot 环境。我试图在这个 chroot 环境中运行 mysql,但我得到了这个错误。
基本上我使用 debootstrap 和 schroot 来创建 chroot。然后我在这个 chroot 环境中安装了“ubuntu-minimal”和 mysql-server。如果您对这里感兴趣,这里是我遵循的所有步骤https://help.ubuntu.com/community/DebootstrapChroot。但是 mysql 在 chroot 中不起作用。/var/log/mysql.log 和 /var/log/mysql.err 文件为空且 mysqld 服务器正在运行。任何指针?