차근차근/이것저것

centOS sendmail에서 gmail로 발송이 안됨. 5 -스팸함으로 감

예쁜꽃이피었으면 2017. 1. 5. 10:57


다시 해보자. 메일 로그를 보니 DKIM ? 이거에서 문제가 있는 것 같다.. 이것 부터 다시 해보자.



Jan  5 01:05:18 id opendkim[9888]: can't load key from /etc/opendkim/keys/soft.com/default.private: Permission denied

Jan  5 01:05:18 id opendkim[9888]: v0515IrC014761: error loading key 'default._domainkey.soft.com'

Jan  5 10:05:18 id sendmail[14761]: v0515IrC014761: Milter: data, reject=451 4.3.2 Please try again later




http://perte.tistory.com/14


리눅스 로그의 위치 : /var/log/maillog

실시간 메일 로그 : tail -f  /var/log/maillog



따라할 곳


open-DKIM 설치

https://www.enteroa.com/2016/05/19/open-dkim-%EC%84%A4%EC%B9%98/


Installing OpenDKIM RPM via Yum with Postfix or Sendmail (for RHEL / CentOS / Fedora)

https://www.stevejenkins.com/blog/2011/08/installing-opendkim-rpm-via-yum-with-postfix-or-sendmail-for-rhel-centos-fedora/





1. 키생성

~]# /usr/sbin/opendkim-genkey -D /etc/opendkim/keys/soft.com -d soft.com -s default

~]# chown -R root.opendkim /etc/opendkim/keys/soft.com

~]# chmod 640 /etc/opendkim/keys/soft.com/default.private

~]# chmod 644 /etc/opendkim/keys/soft.com/default.txt





2.

/etc/opendkim.conf 파일에서 KeyTable, SigningTable, ExternalIgnoreList, InternalHosts 주석을 해제 한다.



KeyTable           /etc/opendkim/KeyTable

SigningTable       refile:/etc/opendkim/SigningTable

ExternalIgnoreList refile:/etc/opendkim/TrustedHosts

InternalHosts      refile:/etc/opendkim/TrustedHosts


-> ok


3.이후 생성한 DKIM 정보를 아래 파일들에 삽입해야 한다 ‘ㅅ’a

/etc/opendkim/KeyTable (키테이블이 사용할 DKIM key를 선언.)


default._domainkey.soft.com soft.com:default:/etc/opendkim/keys/soft.com/default.private



4.

/etc/opendkim/SigningTable (사용할 메일주소와 키테이블을 매칭한다.) -> 이 부분이 이해가 안가..



webmaster@soft.com default._domainkey.soft.com <- 이거 하나만 두자..일단..




5./etc/opendkim/TrustedHosts 이파일은 sendmail 메일의 access.db 와 기능이 설정법 및 기능이 같다.

즉 DKIM사이닝을 해줄 IP 등을 추가한다. 일반적인 로칼서버 에서의 웹 발송은 127.0.0.1 과 ::1 만 설정하면 되겠다.

-> 이건 넘김



6.아래 명령어로 생성된 DKIM 값을 발췌해서.


cat /etc/opendkim/keys/soft.com/default.txt

default._domainkey      IN      TXT     ( "v=DKIM1; k=rsa; "

          "p=MIGfMA0GddddddddddddddsApHWLJHmebvWBytgMnkYQeREHcaExoM4lYBYY+28ZlKWKx+pSGofW8ep2woOVsss+kuknu3zzD12w0JFhOzD/PIntxDGzuDZ4okQIDAQAB" )  ; ----- DKIM key default for soft.com




7. DNS 서버의 zone 파일에서 아래와 같이 TXT 값을 삽입한다. – 괄호랑 주석은 제거한다. ‘ㅅ’a


어제는 /etc/named.rfc1912.zones 이 부분을 수정했는데.. zone파일이 어디인지 다시 보자


/etc/named.caching-nameserver.conf을 열고..

어.. 다시 보니까.. 


directory "/var/named"; 이게 보임..


어제 /etc/named.rfc1912.zones 에 추가했던 키값은 삭제..


@     IN      TXT     "v=DKIM1; k=rsa; "

"p=MIGfMA0GddddddddddddddsApHWLJHmebvWBytgMnkYQeREHcaExoM4lYBYY+28ZlKWKx+pSGofW8ep2woOVsss+kuknu3zzD12w0JFhOzD/PIntxDGzuDZ4okQIDAQAB"


/var/named에보니.. zone파일이 localdomain.zone하고.. localhost.zone하고 두개 있음..


localhost.zone 에 추가함..

@     IN      TXT     "v=DKIM1; k=rsa; p=MIGfMA0GddddddddddddddsApHWLJHmebvWBytgMnkYQeREHcaExoM4lYBYY+28ZlKWKx+pSGofW8ep2woOVsss+kuknu3zzD12w0JFhOzD/PIntxDGzuDZ4okQIDAQAB"



8.그후 서비스 시작 및 init.d에 등록.

~]# /etc/init.d/opendkim start

~]# chkconfig --level 2345 opendkim on


-> 이건 다시 안해도 되지 않을까..



9.자 이제 sendmail 에 open-DKIM 연결고리만 만들어 주면 된다 ‘ㅅ’b

/etc/mail/sendmail.mc 파일에 아래와 같은 내용을 삽입한다.


INPUT_MAIL_FILTER(`opendkim', `S=inet:8891@127.0.0.1')dnl



10.그후에 적용 및 sendmail 재시작

~]# cd /etc/mail

~]# make 혹은 m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

 

~]# service sendmail restart



-> 나는 m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf






메일 보내봄..

Jan  5 10:50:19 id sendmail[17492]: v051njCe017492: from=webmaster@soft.com, size=7, class=0, nrcpts=1, msgid=<201701050150.v051njCe017492@plantid.cafe24.com>, proto=SMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]

Jan  5 01:50:19 id opendkim[9888]: v051njCe017492: can't determine message sender; accepting

Jan  5 10:50:19 id sendmail[17492]: v051njCe017492: Milter insert (1): header: Authentication-Results: id.cafe24.com; dkim=permerror (bad message/signature format)

Jan  5 10:50:21 id sendmail[17500]: STARTTLS=client, relay=gmail-smtp-in.l.google.com., version=TLSv1/SSLv3, verify=FAIL, cipher=AES128-SHA, bits=128/128

Jan  5 10:50:22 id sendmail[17500]: v051njCe017492: to=받는 사람@gmail.com, delay=00:00:19, xdelay=00:00:02, mailer=esmtp, pri=120007, relay=gmail-smtp-in.l.google.com. [64.233.189.26], dsn=2.0.0, stat=Sent (OK 1483581029 38si46237868pln.323 - gsmtp)





dkim=permerror (bad message/signature format) 이 부분이 신경 쓰이긴 하지만 메일이 옴!
지메일로 전혀 발송이 안됐는데 이제 스팸함으로 온다! 

+ 메일보낼 때 제목을 적었는데 제목은 오지 않았다.



반응형