도메인의 디지털 서명(DKIM)을 사용하면 메시지 헤더에 키를 추가하여 도메인 소유자를 추가로 확인할 수 있습니다. 그러면 수신자의 서버에서 해당 도메인의 TXT DNS 레코드에 지정된 공개 키를 준수하는지 확인합니다. 발신자의 도메인. 이 설정은 필수는 아니지만 편지가 스팸으로 분류될 가능성을 크게 줄이고 수신자가 편지에 대해 더 많은 신뢰를 가질 수 있도록 해줍니다.
1. 필요한 패키지를 설치해 보겠습니다:
apt-get install opendkim opendkim-tools
2. 설정 및 활성화.
기존 기본 설정을 삭제하고 파일을 폼으로 가져오자:
nano /etc/opendkim.conf
AutoRestart Yes
AutoRestartRate 10/1h
UMask 002
Syslog yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:12301@localhost
기본 줄을 주석 처리하고 다음으로 바꿉니다:
nano /etc/default/opendkim
SOCKET="inet:12301@localhost"
postfix에 설정을 추가해 보겠습니다:
nano /etc/postfix/main.cf
milter_protocol = 2
milter_default_action = accept
smtpd_milters = inet:localhost:12301
non_smtpd_milters = inet:localhost:12301
주요 데이터와 메일 도메인 매핑 테이블을 저장하기 위한 디렉터리를 만들어 보겠습니다:
mkdir /etc/opendkim
mkdir /etc/opendkim/keys
신뢰할 수 있는 호스트와 도메인의 파일을 만들어 보겠습니다:
nano /etc/opendkim/TrustedHosts
127.0.0.1
localhost
192.168.0.1/24
*.
#.my-domain.net
#.my-domain.org
도메인-비밀 키 매핑 파일을 만들어 보겠습니다:
nano /etc/opendkim/KeyTable
mail._domainkey. :mail:/etc/opendkim/keys//mail.private
#mail._domainkey.my-domain.net my-domain.net:mail:/etc/opendkim/keys/my-domain.net/mail.private
#mail._domainkey.my-domain.org my-domain.org:mail:/etc/opendkim/keys/my-domain.org/mail.private
어떤 주소를 어떤 키에 추가할지 결정하는 설정이 있는 파일을 만들어 보겠습니다:
nano /etc/opendkim/SigningTable
*@ mail._domainkey.
#@my-domain.net mail._domainkey.my-domain.net
#@my-domain.org mail._domainkey.my-domain.org
도메인에 대한 디렉터리와 키 파일 자체를 만들어 보겠습니다:
cd /etc/opendkim/keys
mkdir
cd
opendkim-genkey -s mail -d
chown opendkim:opendkim mail.private
-s는 선택기를 지정합니다. -d는 도메인을 지정합니다. 이 명령은 mail.private에 개인 키가 포함되고 mail.txt에 공개 키가 포함되는 두 개의 파일을 생성합니다.
이 키를 DNS에서 사용하겠습니다:
nano -$ mail.txt
mail._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3Ru/oMs+d2y93gZVq81J7hZfe31GR3177XQ5dI0r8zFqh86K1pgcdvCbpaAzXw9x25
/9BUe2ot9gpxjnt5SD+dDyereVKdkIQdkJBTl21Ei8ShJf+iIyYn5/skzLYS5RzlreBGoSGT6mtfnhzRX1A18X52oZrAfUJIXqAX14LYFq
/B5Wkw8vcUiU1CrR7lteH1vCu0JQtE16CK"
"vj86V06SxtKNEiRDqHZXo5+SqjzB2qHeteTGTyxA1dBmyKGCP6cVTkU3P0unOtsDLO+47YTUC55db34DKjjr18Lny0gf0d6oT0OvCZU5m5O3v
QunxQtSPD4+Hb75xrMJqqSlXtswIDAQAB" )
이 레코드를 따옴표를 제거하여 일반 형식으로 가져와 키가 한 줄에 있도록 한 다음 이 TXT 레코드를 도메인의 DNS에 추가하겠습니다:
mail._domainkey IN TXT "v=DKIM1; k=rsa; p=MIIBI...IDAQAB"
명령으로 항목을 확인할 수 있습니다:
nslookup -q=TXT mail._domainkey. 8.8.8.8
설정을 적용하려면 서비스를 다시 시작하세요:
service postfix restart
service opendkim restart
DKIM 설정이 완료되었습니다. 이메일을 보내서 작동을 확인할 수 있습니다: check-auth@verifier.port25.com
모든 것이 올바르게 구성되면 다음 줄이 포함된 보고서를 받게 됩니다: DKIM check: pass.