커피닉스, 시스템 엔지니어의 쉼터
  FreeBSD 10에서 sendmail DH key 에러 작성일 : 2015/07/14 18:20
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 10596
     
    제  목 : FreeBSD 10에서 sendmail DH key 에러
    작성자 : 좋은진호(truefeel, http://coffeenix.net/ )
    작성일 : 2015.7.14(화)

    FreeBSD 10.1에서 서버 내부 메일(cron결과 메일, 서버 로그 메일 등) 발송할 때, 다음과 같은 에러가 나왔다.

     
    Jul 14 13:05:36 cnx sendmail[35077]: STARTTLS=client, error: connect failed=-1, reason=dh key too small, SSL_error=1, errno=0, retry=-1
    Jul 14 13:05:36 cnx sm-mta[35078]: STARTTLS=server, error: accept failed=0, reason=sslv3 alert handshake failure, SSL_error=1, errno=0, retry=-1, relay=localhost [127.0.0.1]
    Jul 14 13:05:36 cnx sendmail[35077]: ruleset=tls_server, arg1=SOFTWARE, relay=[127.0.0.1], reject=403 4.7.0 TLS handshake.
     


    이 에러가 왜 갑자기 나오는지 확인해봤더니 FreeBSD 10.1-p13에서 다음과 같은 패치가 이뤄졌다. 패치 후 DH Key(Diffie-Hellman Key)가 너무 짧아서 생겼던 것.

     
    20150618:       p13     FreeBSD-EN-15:08.sendmail
            Improvements to sendmail TLS/DH interoperability. [EN-15:08]
     


    openssl로 DH 파라미터 생성해준 후 sendmail 재실행하면 완료.

     
    # cd /etc/mail/certs
    # openssl dhparam -out dh.param 4096
     


    메일 발송하면 다음과 같이 나올 것이다.

     
    Jul 14 13:26:47 cnx sm-mta[36512]: STARTTLS=server, relay=localhost [127.0.0.1], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-AES256-GCM-SHA384, bits=256/256
    Jul 14 13:26:47 cnx sendmail[36511]: STARTTLS=client, relay=[127.0.0.1], version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-GCM-SHA384, bits=256/256
    ... 생략 ...
     


    커피닉스, 시스템 엔지니어의 쉼터 / URL : http://coffeenix.net/board_view.php?bd_code=1777