1

我想在受限的 bash shell 或 rbash 中启动一个 octave 会话,从而将用户限制在他们的主目录中。

rbash 按预期工作,用户无法使用 cd 命令。

>prompt:~/$ /bin/bash -r
>bash-3.2$ pwd
  /home/user1
>bash-3.2$ cd /
>bash: cd: restricted
>bash-3.2$ 

当 octave 启动时,用户可以 cd 到任何目录。

>bash-3.2$ octave --silent
octave-3.4.0:1> pwd
   ans = /home/user1
octave-3.4.0:2> cd /
octave-3.4.0:3> pwd
   ans = /

有没有办法像 rbash 那样在八度范围内禁用用户帐户?

谢谢。

4

1 回答 1

0

最简单的可能是 Octave 的 chroot 环境(chroot(2) / chroot(1)),用于您的 Octave 子进程,以隔离用户访问 real /

或者,您可以将链接的 libc Octave 替换为将chdir(2)库调用限制为允许的目录(请参阅LD_PRELOAD)。

于 2012-05-03T17:50:11.490 回答