1、问题描述:
(1)、运行新开发“plugin_process_check_phase2”脚本中,发现很多文件无法计算其sha1的值。
(2)、单独运行lynis脚本,确认脚本可以计算处对应文件sha1的值。
(3)、在crontab定时任务中运行,无法获取文件的sha1值
问题定位:crontab 定时任务没有sudo执行权限。
- 在定时任务中运行lynis的结果
process_info[]=secure 31260 0.0 0.0 115376 2004 pts/1 S+ 15:38 0:00 bash
process_file_sha1[]=
process_file_sha1[]=
process_file_sha1[]=
process_file_sha1[]=
process_file_sha1[]=
process_file_sha1[]=
- 直接在控制台运行lynis脚本的结果
process_info[]=secure 31260 0.0 0.0 115376 2000 pts/1 S+ 15:38 0:00 bash
process_file_sha1[]=df16df1a33aa62da08d5f17fce54d9b07f639925 /usr/lib/systemd/systemd
process_file_sha1[]=74ae1fb5bc22eae1e09e746fb042fceaf7262c6f /usr/lib/systemd/systemd-journald
process_file_sha1[]=897ee8844a719efc93c367bca7e2d4cd0e586481 /usr/lib/systemd/systemd-udevd
process_file_sha1[]=e2e506d318612f8e53ad1d7b26b61a6590b76f25 /sbin/auditd
process_file_sha1[]=187b499684b4cc6f65e9120ca6aecc67ceee3a18 /usr/sbin/rsyslogd
process_file_sha1[]=aec41e1cc44983bba26afd3e3b3e3fd155eb1959 /bin/dbus-daemon
process_file_sha1[]=32295164de3fb737cd232dc3eea9c9ce1fd3f45a /usr/bin/gapd
process_file_sha1[]=e032556fd2fd3f552107b57f43a282d6ae5c4281 /usr/lib/systemd/systemd-logind
2、解决办法
修改/etc/sudoers文件,修改方法,注释掉
#
# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
# You have to run "ssh -t hostname sudo <cmd>".
#
#Defaults requiretty
3、评估带来的风险
编辑 /etc/sudoers
1)Defaults requiretty,修改为 #Defaults requiretty,表示不需要控制终端。
2)Defaults requiretty,修改为 Defaults:nobody !requiretty,表示仅 nobody 用户不需要控制终端。