![OpenDKIM 无法绑定到端口权限被拒绝](https://linux22.com/image/640393/OpenDKIM%20%E6%97%A0%E6%B3%95%E7%BB%91%E5%AE%9A%E5%88%B0%E7%AB%AF%E5%8F%A3%E6%9D%83%E9%99%90%E8%A2%AB%E6%8B%92%E7%BB%9D.png)
我看到很多此类问题,但我收到的是“地址已被使用”错误,而不是“权限被拒绝”错误。
我通过这个博客安装了OpenDKIM:
http://blog.matoski.com/articles/spf-dk-dkim-plesk-debian/
一切都进行得很顺利,直到我重新启动 Postfix 后,我的日志立即爆出以下内容:
OpenDKIM Filter: Unable to bind to port inet:8891@localhost: Permission denied
OpenDKIM Filter: Unable to create listening socket on conn inet:8891@localhost
smfi_opensocket() failed
我已经验证没有其他任何东西在监听该端口,并且我已回顾了博客文章并可以确认其他一切都是正确的。
[root@server opendkim]# ps aux | grep opendkim
root 18173 0.0 0.0 103252 864 pts/0 S+ 18:39 0:00 grep opendkim
[root@server opendkim]#
[root@server opendkim]# netstat -nlp | grep 8891
[root@server opendkim]#
我怀疑这与 selinux 阻止创建另一个侦听器有关,但我不知道如何更改它。或者,也许我错了。
答案1
尝试运行以下命令
semanage port -a -t milter_port_t -p tcp 8891
答案2
我也遇到了同样的问题 - 原来是打字错误(在 Ubuntu 16 上 - 从 14 升级后无法正常工作)。
我在 /etc/default/opendkim 中遗漏了地址的“inet”部分(原始问题中也给出了,我只写了“8891@localhost”,而不是“inet:8891@localohst”)。另外,我之前在 /etc/opendkim.conf 中也有同样的设置,但在新版本中似乎被忽略了。