$ ps -aux|grep atd
daemon 800 0.0 0.1 27964 2228 ? Ss 19:11 0:00 /usr/sbin/atd -f
alan-sy+ 7042 0.0 0.0 12780 948 pts/0 S+ 20:22 0:00 grep atd
$ /sbin/getpcaps 800
Capabilities for `800': = cap_chown,cap_dac_override,cap_dac_read_search,cap_fowner,cap_fsetid,cap_kill,cap_setgid,cap_setuid,cap_setpcap,cap_linux_immutable,cap_net_bind_service,cap_net_broadcast,cap_net_admin,cap_net_raw,cap_ipc_lock,cap_ipc_owner,cap_sys_module,cap_sys_rawio,cap_sys_chroot,cap_sys_ptrace,cap_sys_pacct,cap_sys_admin,cap_sys_boot,cap_sys_nice,cap_sys_resource,cap_sys_time,cap_sys_tty_config,cap_mknod,cap_lease,cap_audit_write,cap_audit_control,cap_setfcap,cap_mac_override,cap_mac_admin,cap_syslog,cap_wake_alarm,cap_block_suspend,cap_audit_read+p
$ ls -l /usr/sbin/atd
-rwxr-xr-x 1 root root 22536 Dec 8 2016 /usr/sbin/atd
# /lib/systemd/system/atd.service
[Unit]
Description=Deferred execution scheduler
Documentation=man:atd(8)
[Service]
ExecStart=/usr/sbin/atd -f
IgnoreSIGPIPE=false
[Install]
WantedBy=multi-user.target
at
パッケージのバージョンは3.1.20-3
。
atd
なぜユーザーに削除されますかdaemon
? Fedora Linux 30ではこれは起こりません。
atd
root
すべてのユーザーからの要求を受け入れ、そのユーザーとしてを含むタスクを実行できるため、すべての機能を維持する必要があります。
ユーザーはdaemon
使用しないでください。必要に応じて、各デーモンは独自のユーザーアカウントを使用してセキュリティリスクを制限する必要があります。 (それおそらくカーネルは、root以外のユーザーがroot機能を維持するプロセスを操作することを許可しないため、この場合は重要ではありません。
ベストアンサー1
これは、LSB の作成者と関連する Debian 管理者との間の歴史と意見の違いによるものです。base-passwd
Debian ドキュメントdaemon
ユーザーは言う:
ディスク上の特定のファイルに書き込む必要がある一部の権限のないデーモンプロセスは、daemon.daemon(
portmap
、、、、およびその他)として実行されますatd
。ファイルを所有する必要がないデーモンは、時にはNobody.nogroupとして実行されます。一般に、専用のユーザーを使用する方が良いですが、より複雑なセキュリティを認識するデーモンは確かにそうします。デーモンユーザーは、ローカルにインストールされたデーモンを使用すると便利かもしれません。lambdamoo
mon
それも言う
LSB 1.3はデーモンをレガシーとしてリストし、次のように言います。 「デーモン」UID / GIDは、システムへのアクセスを制限するためにデーモンが実行される権限のないUID / GIDとして使用されます。通常、デーモンには別のUID / GIDが必要です。 」
ただし、通常 Debian ドキュメントでは、daemon
ユーザーがそれを使用できるようにします。
atd
daemon:daemon
代わりにルートを使用してください2005年、LSB 1.3は現在リリースされてから数年になりました。ルートからルートに切り替えるのはdaemon
十分な権限を減らすと見なされ、専用ユーザーを追加するよりも簡単です。あなたが言ったように、この場合は重要ではないかもしれません。
上記のバグは、daemon
root以外のユーザーとの間で削除するための次の理由を提供します(バグは専用グループの使用を提案します...)。
Debianのcrontabは最近setuid rootの代わりにsetgid crontabを実行するように修正されました。 atの要件は基本的に似ているので、おそらく同じように動作し、基本的にsetuid rootプログラムが1つ少なくなることをお勧めします。