晴耕雨読

working in the fields on fine days and reading books on rainy days

/etc/cron.denyでユーザがcrontabを編集できないようにする

/etc/cron.deny を使ったユーザがcrontabを編集できないようにする設定について説明します。

user1がcrontabを編集不可にするには、以下のコマンドを実行します。

~]# echo user1 >> /etc/cron.deny

root以外の全ユーザがcrontabを編集できないようにする

~]# echo root > /etc/cron.allow
~]# echo > /etc/cron.deny

上記の設定をすると、root以外のユーザが自身のcrontabを編集しようとしても、拒否されます。

~]$ crontab -e
You (user1) are not allowed to use this program (crontab)
See crontab(1) for more information

しかし、すでに登録してあるタスクは実行されるので、注意が必要です。

各ユーザが登録・編集したcrontabの一覧は /var/spool/cron/ の下に格納されているので、必要に応じて確認と不要タスクのコメントアウト (#) をする必要があります。

~]# ls /var/spool/cron/
~]# vim /var/spool/cron/user1
# vimでコマンドやファイルを実行している行をコメントアウトすること

以上です。