목록발송 (4)
준호씨의 블로그
javamail API 를 이용한 기본적인 메일 발송 코드를 구현 해 보자. 아래는 gmail 의 mx 레코드중 하나로 메일을 직접 보내는 예제이다. final String host = "gmail-smtp-in.l.google.com."; final String from = "junho85@daum.net"; final String to = "junho85@gmail.com"; Properties properties = System.getProperties(); properties.setProperty("mail.smtp.host", host); Session session = Session.getDefaultInstance(properties); try { MimeMessage message = ne..
신뢰할 수 없는 IP 에서 발송된 이메일은 스팸으로 판정 받기 쉽다. 그렇다면 IP 의 신뢰도를 높이려면 어떻게 해야 할까? 여러가지 기법이 있는데 여기서는 SPF (Sender Policy Framework) 레코드를 이용 해 볼 것이다. test@junho85.pe.kr 주소로 메일을 발송 할 경우 junho85.pe.kr 이라는 도메인으로 메일을 발송하는 서버의 IP 를 junho85.pe.kr 의 TXT 레코드에 기입 해 두는 것이다. 도메인의 설정 변환 권한은 도메인의 주인만 가지고 있기 때문에 스패머가 함부로 조작하기 어렵다. 그렇기 때문에 도메인에 기록된 IP 정보는 메일수신서버가 신뢰할 수 있는 좋은 근거가 된다. 도메인의 레코드 정보를 수정 하는 방법은 상황에 따라 다르지만 여기서는 가비..
예전에 linux shell 에서 telnet SMTP 로 메일 발송하기 2014.03.28 을 올렸던 적이 있었는데 이번에 영상으로 촬영 해 보았다. 앞으로 이메일과 관련된 내용들을 꾸준히 올려 볼 생각이다. 여러가지 개발 언어로 이메일을 발송하는 방법이나 이메일과 관련된 도메인 이야기 등에 대해 다뤄볼 생각이다.
아래는 telnet 에서 smtp 포트인 25번 포트로 메일을 바로 발송 하는 과정입니다. 결과 메일을 발송하는 과정은 일단 메일 주소의 도메인의 MX 레코드를 찾는 것부터 시작 됩니다. 메일주소에서 도메인이 daum.net 이라면 dig 명령어나 nslookup 등의 명령어로 MX 레코드가 어떻게 되는지 확인 해 볼 수 있습니다. daum.net 의 경우 mx1~4.daum.net 으로 되어 있음을 알 수 있습니다. (이 정보는 종종 바뀌기도 합니다.) 자 telnet 으로 mx1.hanmail.net 에 접속해 보겠습니다. SMTP 는 기본적으로 25번 프로토콜을 이용합니다. junho85@junho85:~$ telnet mx1.hanmail.net 25 Trying 211.110.65.13... C..