Centos

生成預設 DKIM 密鑰:無法確定主機的域名,因此跳過預設密鑰生成

  • January 21, 2019

我正在遵循本指南

https://www.linuxtechi.com/configure-domainkeys-with-postfix-on-centos-7/

當我到達本節時,它給出了一個錯誤

# opendkim-default-keygen
Generating default DKIM keys:
Cannot determine host's domain name, so skipping default key generation.

我確實設置了主機名

# hostname
domain.org

# cat /etc/hostname
domain.org

# cat /etc/hosts
# Your system has configured 'manage_etc_hosts' as True.
# As a result, if you wish for changes to this file to persist
# then you will need to either
# a.) make changes to the master file in /etc/cloud/templates/hosts.redhat.tmpl
# b.) change or remove the value of 'manage_etc_hosts' in
#     /etc/cloud/cloud.cfg or cloud-config from user-data
#
# The following lines are desirable for IPv4 capable hosts
127.0.0.1 domain domain.org
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4

# The following lines are desirable for IPv6 capable hosts
::1 domain domain.org
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=domain.org
NOZEROCONF=yes

(我用 . 替換了所有域名實例domain。)

網上其他頁面只說設置主機名,就是設置好了。

# cat /etc/centos-release
CentOS Linux release 7.5.1804 (Core)

感謝 RubberStamp 的評論,我剛剛查看了opendkim-default-keygen文件並在另一個視窗中手動複製和粘貼每一行。

# less /usr/sbin/opendkim-default-keygen

[root@domain postfix]# prog=opendkim
[root@domain postfix]# KEYGEN=/usr/sbin/$prog-genkey
[root@domain postfix]# DKIM_SELECTOR=default
[root@domain postfix]# DKIM_KEYDIR=/etc/$prog/keys
[root@domain postfix]# ls /etc/opendkim
keys  KeyTable  SigningTable  TrustedHosts
[root@domain postfix]# ls /etc/opendkim/keys
[root@domain postfix]# hostname --domain
[root@domain postfix]# mkdir -p $DKIM_KEYDIR
[root@domain postfix]# $KEYGEN -D $DKIM_KEYDIR -s $DKIM_SELECTOR -d domain.org
[root@domain postfix]# chown -R root:$prog $DKIM_KEYDIR
[root@domain postfix]# chmod 640 $DKIM_KEYDIR/$DKIM_SELECTOR.private
[root@domain postfix]# chmod 644 $DKIM_KEYDIR/$DKIM_SELECTOR.txt

引用自:https://unix.stackexchange.com/questions/495485