当由 postfix 使用时,不授予文件的写入权限

当由 postfix 使用时,不授予文件的写入权限

我必须将我的工作平台从 Ubuntu 更改为 Centos7。

我的脚本在 Ubuntu 上运行良好,但在 Centos 上运行不佳。

我的脚本应该更新 /tmp/CheckAccessRight.log 文件,当手动执行该脚本时,该文件被授予“写权限”。

test -w /tmp/CheckAccessRight.log

如果通过后缀调用脚本,则不会授予该文件“写权限”。

# 猫/等/别名

check:  "|/home/owner/bin/CheckAccessRight.sh"

$ ls -l /etc/aliases*

-rw-r--r--. 1 root root  5730 Nov 10 11:53 /etc/aliases
-rw-r--r--. 1 root root 12288 Nov 10 11:53 /etc/aliases.db

$ ls -l /tmp/CheckAccessRight.log

-rw-rw-r--. 1 owner owner 7843 Nov 10 12:26 /tmp/CheckAccessRight.log

/etc/postfix/main.cf:default_privs = 所有者

任何想法 ?

$状态

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      31

答案1

我检查了审计日志:

*grep CheckAccessRight.log  /var/log/audit/audit.log*

类型 = AVC 消息 = 审核 (1541841282.927:466):avc:拒绝 { 写入 } pid = 10383 comm =“vismail-dispatc”名称 =“CheckAccessRight.log”dev =“dm-0”ino = 16777285 scontext = system_u:system_r:postfix_local_t:s0 tcontext = unconfined_u:object_r:user_tmp_t:s0 tclass = file

*semanage permissive -a postfix_local_t*
*semodule -l | grep permissive*

permissive_postfix_local_t (空)

permissivedomains(空)

我正在进步,文件的“写入权限”是现在当由 postfix 使用时被授予!

看起来还不错!

相关内容