通过 Sendmail 发送邮件时显示错误:
vectortrade sm-mta[16951]: NOQUEUE: SYSERR(root): 哈希映射“access”: 不安全的映射文件 /etc/mail/access.db: 权限被拒绝
应该有什么权限呢?现在我们进行如下设置:
root@a:/etc/mail# ls -la
total 232
drw---S--- 7 smmta smmsp 4096 Mar 22 06:10 .
drwxr-xr-x 89 root root 4096 Mar 22 09:11 ..
-rw------- 1 root root 4261 Mar 22 03:16 access
-rwx-wx--x 1 root root 12288 Mar 22 03:16 access.db
-rw-r--r-- 1 root root 281 Feb 11 2014 address.resolve
lrwxrwxrwx 1 root smmsp 10 Feb 7 04:30 aliases -> ../aliases
-rw-r----- 1 root smmsp 12288 Mar 22 03:16 aliases.db
-rw-r--r-- 1 root smmsp 3218 Mar 22 05:25 databases
-rw------- 1 root root 826 Mar 22 06:04 dkim.key
-rw-r--r-- 1 root root 5657 Feb 11 2014 helpfile
-rw-r--r-- 1 root smmsp 47 Mar 22 04:12 local-host-names
drwxr-sr-x 2 smmta smmsp 4096 Feb 7 04:30 m4
-rwxr-xr-- 1 root smmsp 9994 Mar 22 05:25 Makefile
drwxr-xr-x 2 root root 4096 Feb 7 04:30 peers
drwxr-xr-x 2 root smmsp 4096 Feb 11 2014 sasl
-rw-r--r-- 1 root smmsp 60131 Mar 22 05:25 sendmail.cf
-rw-r--r-- 1 root root 12236 Mar 22 03:16 sendmail.conf
-rw-r--r-- 1 root smmsp 4218 Mar 22 05:23 sendmail.mc
-rw-r--r-- 1 root root 149 Feb 11 2014 service.switch
-rw-r--r-- 1 root root 180 Feb 11 2014 ervice.switch-nodns
drwxr-sr-x 2 smmta smmsp 4096 Feb 7 04:30 smrsh
-rw-r--r-- 1 root smmsp 44049 Mar 22 03:16 submit.cf
-rw-r--r-- 1 root smmsp 2383 Mar 22 03:16 submit.mc
drwxr-xr-x 2 smmta smmsp 4096 Feb 7 04:30 tls
-rw-r--r-- 1 root smmsp 0 Feb 7 04:30 trusted-users
帮我理解一下。这是在设置 DKIM 后发生的。
答案1
您遇到的错误是:
哈希图“access”:不安全的映射文件 /etc/mail/access.db
意味着sendmail
识别文件/文件夹权限访问的潜在安全问题。即非root用户可能能够使用它来获得root
权限。
限制只有 root 才能访问文件/文件夹:
- 该文件对于用户和组
access.db
而言都是可写入的。root
root
以下将允许仅由root
而不是由组写入此文件root
,并将使此文件更安全(因为只有root
帐户才能写入此文件)
sudo chmod g-w /etc/mail/access.db
- 根据这本旧书
/etc/mail
目录应由 root 拥有。
就您而言,该目录的所有者是非 root 用户。
更新/etc/mail
权限为 root 所有:
sudo chown root /etc/mail
更新/etc/mail
权限为仅 root 可读/写:
sudo chmod 711 /etc/mail