我正在努力让电子邮件服务器从 php 发送电子邮件
Centos 7
PHP 7.2
Exim 版本 4.92
开放的金
如果我在我的 exim.conf 文件中更改此行,它将更改错误,所以我知道错误来自那里
dkim_private_key = /etc/opendkim/keys/domain.com/default.private
错误:
2019-08-24 00:01:33 1i1NF6-000241-Vr unable to open file for reading: /etc/opendkim/keys/domain.com/default.private
权限:
-rw-r--r-- 1 opendkim opendkim 887 Aug 23 22:48 /etc/opendkim/keys/domain.com/default.private
我已将所有权更改为 exim:exim
将权限改为777
每次更改后重新启动 exim 和 opendkim
似乎没什么帮助
[root@mail ~]# ll -d /etc/
drwxr-xr-x. 86 root root 8192 Aug 24 00:06 /etc/
[root@mail ~]# ll -d /etc/opendkim/
drwxr-xr-x 3 root opendkim 107 Aug 23 22:51 /etc/opendkim
[root@mail ~]# ll -d /etc/opendkim/keys/
drwxr-x--- 3 opendkim opendkim 29 Aug 23 22:48 /etc/opendkim/keys/
[root@mail ~]# ll -d /etc/opendkim/keys/example.com/
drwxr-xr-x 2 opendkim opendkim 63 Aug 23 22:49 /etc/opendkim/keys/example.com/
[root@mail ~]# ll /etc/opendkim/keys/example.com/
-rw-r--r-- 1 opendkim opendkim 887 Aug 23 22:48 default.private
-rw-r--r-- 1 opendkim opendkim 319 Aug 23 22:48 default.txt
答案1
Exim 仅在需要时读取密钥。这意味着所有密钥和证书必须可供 exim 以非 root 用户身份运行(exim
如果记忆不错的话,这是在 Red Hat 衍生系统上)。
由于该/etc/opendkim/keys/
目录仅对其组可执行opendkim
,因此 exim 进程将无法进入该目录,因此它将无法读取密钥。
让用户/etc/opendkim/keys
可以访问该目录exim
可能会有所帮助(例如,将exim
用户添加到组中)。opendkim