linux - Unix : Restricting a directory to an user

标签 linux security shell unix ubuntu

我有一个 root 用户,他在一个目录中有一组输入文件

/home/root/inputs/input1.txt

我创建了另一个虚拟用户 /home/dummy ,他无法查看/home/root/inputs 下的输入文件。但是这个虚拟用户将创建一个 c 程序并执行它。这个程序应该使用下面的输入

 /home/root/inputs/input1.txt.

我怎样才能做到这一点? 我不希望虚拟用户从他的代码中查看输入文件(通过使用 system(ls,cat)),但我希望虚拟用户调用二进制文件和使用此输入。

sudo -u dummy ./a.out < /home/root/inputs/input1.txt 

拒绝授予我权限。

正在为我的类(class)创建这个脚本。

最佳答案

你不能那样做,因为 a.ou当你使用 < 时它没有读取文件. shell 是。您需要更改 a.out 以便它接受参数,然后您将能够运行 sudo -u dummy ./a.out /home/root/inputs/input1.txt它将起作用。

关于linux - Unix : Restricting a directory to an user,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17946854/

相关文章:

javascript - 如何阻止非浏览器客户端提交请求?

php - 安全地允许 PHP 对系统文件进行读写访问

linux - 在 shell 中批量启动多个计算

java - 如何将安全性传播到我的独立 Web 服务企业应用程序?

python - Bash 脚本与用于 Shell-Command-Heavy 实用程序的 Python 脚本的优点

shell - 测试运算符 -a 和 -o 是否短路?

c++ - 蛇的头距离 body 几点(C++ 游戏)

linux - 每次运行lua脚本时如何生成随机值

c - 为什么添加变量后.bss段没有增加?

c - 多次执行fork会带来什么风险?