Linux

在 /etc/cron.daily/ 中添加腳本或在 crontab(-e) 中編輯腳本有什麼區別?

  • September 22, 2018

有多個選項 - 使用 cron - 可以在特定時間啟動您的腳本,但其中一個比另一個更安全嗎?

我的問題很簡單:

/etc/cron.daily/在中添加腳本或在腳本中編輯有什麼區別crontab(-e)

我擔心的是其他使用者能夠看到內容。我想確保除了 root 之外沒有人可以查看 crontab,無論它是在使用者的 crontab 中/etc/cron.daily/還是在使用者的 crontab 中。

其他使用者是否能夠看到其中的內容/etc/cron.daily/或 crontab,您可以通過 看到這些內容crontab -l嗎?

我總是在特定伺服器中以 root 身份登錄。我只需要知道誰/什麼/何時關於 crons,以便在實施 cron 作業時可以明智地選擇。

我正在使用 CentOS 6.6。

預設情況下,系統範圍的腳本/etc/cron*是世界可讀的。例如,在我的 Arch 上:

$ ls -ld /etc/cron*
drwxr-xr-x 2 root root 4096 May 31  2015 /etc/cron.d
drwxr-xr-x 2 root root 4096 May 31  2015 /etc/cron.daily
-rw-r--r-- 1 root root   74 May 31  2015 /etc/cron.deny
drwxr-xr-x 2 root root 4096 May 31  2015 /etc/cron.hourly
drwxr-xr-x 2 root root 4096 May 31  2015 /etc/cron.monthly
drwxr-xr-x 2 root root 4096 May 31  2015 /etc/cron.weekly

和:

$ ls -l /etc/cron.d/0hourly 
-rw-r--r-- 1 root root 128 May 31  2015 /etc/cron.d/0hourly

預設情況下,使用者特定的 cron 文件在/var/spool/cron其中,至少在我的系統上,它們不是世界可讀的:

$ ls -l /var/spool/cron/
total 8
-rw------- 1 root   root   20 Feb 23 16:34 root
-rw------- 1 terdon terdon 22 Feb 23 16:32 terdon

因此,“最安全”的方法是使用使用者的 crontab,即您使用crontab -e. 普通使用者無法閱讀:

$ cat /var/spool/cron/root 
cat: /var/spool/cron/root: Permission denied

我建議您先檢查並確保您的 CentOS 也是如此,但我目前無法訪問 CentOS 機器。

引用自:https://unix.stackexchange.com/questions/265225