我有一堆 PHP 脚本由 cron( /etc/crontab
) 在特定时间运行。这些脚本归 www-data 所有。但是,www-data 没有 shell 访问权限。事实上,它已将“nologin”设置为其 shell。
我不确定以哪个用户身份运行该脚本。我认为以 root 身份运行该脚本并不安全 - 这会给它过多的访问权限,以防这些脚本中发生任何有害的事情。但我也不确定授予 www-data 用户 shell 访问权限是否安全。
有谁对这个问题更了解可以帮助我吗?
答案1
使用拥有 Web 路径中文件的用户来运行 cron 作业更加安全。
运行 cron 作业不需要 shell 访问权限。但是,如果出于某种原因需要它,您可以在SHELL=/bin/bash
crontab 中的环境变量中对其进行配置。
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 * * * * php test.php