CentOS 5에 yum으로 설치가능한 Exim 버전은 4.63이다. 4.63은 DKIM을 지원하지 않으므로 DKIM을 사용하기 위해서는 상위 버전을 설치해야 한다.
- /etc/yum.repos.d/atrpms.repo 파일을 만든다.
[atrpms-stable]
name=Centos $releasever – $basearch – ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
includepkgs=libspf2* libsrs*[atrpms-testing]
name=Centos $releasever – $basearch – ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/testing
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
includepkgs=exim* - exim을 설치한다.
yum install exim
- /etc/exim/exim.conf의 상단에 다음 라인 추가
DKIM_DOMAIN = ${lc:${domain:$h_from:}}
DKIM_FILE = /etc/exim/dkim/${lc:${domain:$h_from:}}.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}} - /etc/exim/exim.conf의 remote_smtp 항목 수정
remote_smtp:
driver = smtp
dkim_domain = DKIM_DOMAIN
dkim_selector = mail
dkim_private_key = DKIM_PRIVATE_KEY
dkim_canon = relaxed
dkim_strict = 0 - 인증서 생성
$ mkdir /etc/exim/dkim/ && cd /etc/exim/dkim/
$ openssl genrsa -out example.com.pem 768
$ openssl rsa -in example.com.pem -out example.com-public.pem -pubout -outform PEM - DNS에 위에서 생성된 DKIM public 키 추가mail._domainkey.example.com. IN TXT “v=DKIM1; t=y; k=rsa; p=MIGfMA0AQAB”
t=y는 테스트 중임을 의미. 테스트가 끝나면 삭제해야 한다.
- DNS 설정 테스트
$ dig +short txt x._domainkey.example.com
“v=DKIM1\; k=rsa\; p=MIGfMA0AQAB” - gmail 계정으로 메일을 발송. DKIM 인증이 되는지 gmail에서 ‘원본 보기’ 메뉴를 통해서 확인
Authentication-Results: mx.google.com; spf=neutral (google.com: ….., dkim=pass (test mode) header.i=@example.com
- DNS 수정
t=y 삭제