阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何解决s权限位引发postfix及crontab异常

3次阅读
没有评论

共计 1184 个字符,预计需要花费 3 分钟才能阅读完成。

一、问题现象

业务反馈某台应用服务器,普通用户使用 mutt 程序发送邮件时,提示“postdrop warning: mail_queue_enter: create file maildrop/713410.6065: Permission denied”,而且普通用法使用 crontab -e 编辑自身任务计划时,也会提示“crontab: edits left in /tmp/crontab.XXXXCl0bLz”。

二、问题分析与解决
1、postdrop 异常问题

如何解决 s 权限位引发 postfix 及 crontab 异常

使用 postfix check 命令检测发现有如下报错:

postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postqueue
postfix/postfix-script: warning: not set-gid or not owner+group+world executable: /usr/sbin/postdrop

上面的提示其实已经非常清楚了,在这两个可执行文件的组权限中,没有 s 权限位。慎重起见,不审找了一台主机对比下,发现确实不存在 s 权限,正常的权限如下:

# ll /usr/sbin/postqueue
-rwxr-sr-x. 1 root postdrop 259992 Jan 27 2014 /usr/sbin/postqueue

解决方法非常简单:

chmod g+s /usr/sbin/postqueue
chmod g+s /usr/sbin/postdrop
postfix reload
2、crontab 普通用户无法编辑问题

使用 crontab -e 发现可以正常查看,但是编辑完,保存时提示“crontab: edits left in /tmp/crontab.XXXXCl0bLz”。即然上面第一个问题是 s 权限位引起的,这个问题想必也是,所以未做 strace 或审计跟踪,地接查看 /usr/bin/crontab 权限位,发现和正常主机对比,发现用户权限上少了 s 权限 ---crontab 命令和 passwd 命令类似,需要用户具有 s 权限位。执行如下命令后,问题解决:

chmod u+s /usr/bin/crontab
rccron restart

注:这点对比了下 SuSE 和 redhat 下的区别,发现 user 权限下如果没有 s 权限位。在 redhat 下提示:

  1. You (test) are not allowed to use this program (crontab)
  2. See crontab(1) for more information

而且直接 crontab - l 命令查看时,都会提示上面的错误。而在 SuSE 没有这个 s 权限,仍然可以正常的通过crontab -l 进行查看。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-11-01发表,共计1184字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中