具有非root执行权限的非root用户的crontab

具有非root执行权限的非root用户的crontab

我想允许非 root 用户创建定期任务,但我不想通过授予他们访问 crontab 的权限来间接授予他们 root 访问权限。他们是否有其他选择来创建没有 root 访问权限的 cron 任务?

我可以在 crontab 中自己创建一个脚本,检查所有用户主文件夹并运行他们提供的具有用户权限的类似 crontab 的文件。但是......这基本上是重新发明 crontab 并且我确信我的实现很容易出现安全问题。

有没有办法在不重新发明轮子的情况下做到这一点?很奇怪的是Linux 还没有提供这种机制。

答案1

默认情况下,每个用户都可以创建一个 crontab。用户所需要的只是能够通过 ssh 登录系统。用户登录后,所要做的就是

crontab -e 

这将打开一个 crontab 文件供它们填充。用户使用完 crontab 后,该文件将保存在每个用户的 /var/spool/cron/* 中。

将运行计划的作业作为用户,具有用户的权限不像root

如果您想为不同的用户创建 crontab,您可以自己为每个用户创建它们,然后检查它们。用户不需要 root 访问权限来执行此操作

在 RHEL 系统上,用户的 crontab会有路径/var/spool/cron/joe

答案2

在许多Linux系统上,每个用户都有自己的cron表,他们可以使用命令进行管理crontab;它不会以root的权限执行,而是以他们自己的权限执行。

相关内容