旧ブログ記事

cron(crontab)を使えるユーザを制御する方法

投稿日:2013年8月29日 更新日:

定期的に処理を実行するには欠かせないcron。デフォルトだと誰でも実行できるようになっているけれども、要件によっては「このユーザにはcron使わせたくねぇな(;´Д`)」とか「基本的には誰にも使わせたくないんだけど、コイツだけには使わせてやるか(*゜∀゜*)」的なことをやりたい場合がある。

で、それは簡単に実現できるよ……というお話。あ、CentOS 6.x系のお話ね。

ということで、RTFMの格言(?)を思い出しつつ、crontab(1)のman pageを参照してみる。それについて書かれている部分を一部引用したのがコイツ。

allow ファイルが存在する場合、ユーザーがこのコマンドを使用するには、 そのファイル中に(そのユーザーが)リストアップされている必要がある。 allow ファイルは存在せずに deny ファイルが存在する場合、ユーザーがこのコマンドを使用するには、 deny ファイル中にリストアップされて いない 必要がある。 いずれのファイルも存在しない場合、スーパーユーザーのみがこのコマンドを 使えるか、あるいはすべてのユーザーがこのコマンドを使えることになり、 そのいずれであるかはサイトに依存した設定パラメータによって決まる。

ちなみに文中の「allowファイル」というのは「/etc/cron.allow」、「denyファイル」ってのは「/etc/cron.deny」のこと……だと思ってたんだけど、man pageによるとそれぞれ「/var/cron/allow」、「/var/cron/deny」って書いてあるな(゜Д゜;)

RPM(cronie-1.4.4-7.el6.x86_64)の中身を見てみると、下記の通り「/etc/cron.deny」が作られてるから、「/etc/cron.allow」と「/etc/cron.deny」で良いと思われる。たぶん。

# rpm -ql cronie
/etc/cron.d
/etc/cron.d/0hourly
/etc/cron.deny
/etc/pam.d/crond
/etc/rc.d/init.d/crond
/etc/sysconfig/crond
/usr/bin/crontab
/usr/sbin/crond
/usr/share/doc/cronie-1.4.4
/usr/share/doc/cronie-1.4.4/AUTHORS
/usr/share/doc/cronie-1.4.4/COPYING
/usr/share/doc/cronie-1.4.4/ChangeLog
/usr/share/doc/cronie-1.4.4/INSTALL
/usr/share/doc/cronie-1.4.4/README
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/man/man8/cron.8.gz
/usr/share/man/man8/crond.8.gz
/var/spool/cron
  • この記事を書いた人
  • 最新記事

Yuta Hayakawa

ハムスターLOVEな自称PHP&GNU/Linux系エンジニア。 趣味で「自己満足系自作曲」を作っています。余裕のあるときならコラボ等歓迎(ただしボクは低レベル)。 各オンラインストアで自作曲販売中。SoundCloudでもお聞きいただけます!

-旧ブログ記事
-, ,

Copyright© 美徳という名の背徳 , 2018 All Rights Reserved.