티스토리 뷰
스프링프레임웍의 JavaMailSenderImpl을 이용해서 메일을 발송하는 방법에 대해 알아 보겠습니다.
우선 천리길도 한걸음 부터..
가장 중요한 smtp 서버와 연결하고 메일이 잘 가는지 테스트 부터 하고 가는게 좋지 않겠습니까..
급할수록 돌아가라.. ㅡㅡ;;
요새는 방화벽등도 많아서 cmd 창에서 테스트 부터 하고 가는게 좋을듯..
서버가 릴레이를 허용하는 경우에는 그 메일 서버에 계정이 없더라도 메일을 발송할 수 있습니다.
이렇게 릴레이를 허용하는 경우 타인에 의해 스팸 메일을 보내는데 악용이 될 수 있으므로 특정 IP에서만 릴레이가 되도록 하는게 일반적입니다.
릴레이를 허용하는 서버의 경우 명령창에서 telnet 명령으로 간단하게 메일 발송을 테스트 해볼 수 있습니다.
다음은 Microsoft IIS 메일서버를 이용해서 명령창으로 메일을 발송하는 예 입니다.
나오는 메세지는 서버에 따라 다를 수 있습니다.
윈도우의 cmd 창을 열어서
C:\>telnet smtp.yourdomain.co.kr 25
220 Server_Hostname Microsoft ESMTP MAIL Service, Version: ...
HELO localhost
250 Server_Hostname Hello [xxx.xxx.xxx.xxx]
MAIL FROM: 보내는_사람_메일주소
250 2.1.0 보내는_사람_메일주소....Sender OK
RCPT TO: 받는_사람_메일주소
250 2.1.5 받는_사람_메일주소
DATA
354 Start mail input; end with <CRLF>.<CRLF>
Subject: 여기에 메일 제목이 옵니다.
메일내용이 여기에 옵니다.
.
250 2.6.0 <xxxxxx@smtp_hostname> Queued mail for delivery
이스케이프 문자: 'CTL+]'
Microsoft Telnet> quit
DATA 명령후에 Subject: 다음에 제목을 작성하고 엔터키를 두번 누릅니다.
메일 내용을 작성한 후 라인의 첫글자로 마침표(.) 를 입력하고, 바로 엔터키를 누르면 내용 작성이 끝났다는 표시 입니다.
HELLO 인지 알고 쳤는데 HELO 가 맞습니다..
텔넷에서 빠져나오기 위해서 'CTRL + ]' 를 누르고 Telnet 프롬프트가 나오면 quit를 입력하여 종료합니다.
Queued mail for delivery 라고 나오면 메일이 갔다.
참조:
https://offbyone.tistory.com/167
Microsoft SMTP가 아닌 다른 SMTP 서버에서 했을경우도 살펴보면
cmd 창을 열고
C:\>telnet ip주소 25
220 Server_Hostname ESMTP MAIL ...
HELO localhost
250 OK
MAIL FROM: 보내는_사람_메일주소
250 2.1.0 Sender <보내는_사람_메일주소> Ok
RR
500 5.5.2 Syntax error, unrecognized command[RR]
RCPT TO: 받는_사람_메일주소
250 2.1.0 Recipient <받는_사람_메일주소> Ok
DATA
354 Start mail input; end with <CRLF>.<CRLF>
Subject: 여기에 메일 제목이 옵니다.
메일내용이 여기에 옵니다.
.
250 2.5.0 Message accepted for delivery
이렇게 뜨고 한 5초~10초 있다가 메일이 왔다.
위에 RR은 일부러 에러를 내봤다.
그럼 에러 코드와 이유가 500 5.5.2 Syntax error ... 온다.
다시 제대로 치니까 250 이 왔다. 250 이면 정상인것 같다^^
'자바(Java)' 카테고리의 다른 글
이메일 수신확인 원리 (0) | 2018.09.28 |
---|---|
[Spring] 스프링에서 메일 보내기 - 첨부파일 (2) (0) | 2018.09.27 |
[java] 자바 공부하기 좋은 사이트 (0) | 2018.09.10 |
[java] 자바 메일 javax.mail.MessagingException: Could not connect to SMTP host: , port:25 (0) | 2018.09.10 |
[java] 자바 콘솔 (cmd)에서 패키지 실행 Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/MessagingException (0) | 2018.09.10 |
- Total
- Today
- Yesterday
- Python
- XE
- 오라클
- C언어
- 자바 smtp
- xe애드온
- EC
- php
- 프로씨
- 포인터
- 자바
- 이클립스
- 파이썬
- MySQL
- webix
- 파싱
- ocjap
- C
- ocajp
- proc
- KG
- xe addon
- 라이믹스 모듈
- 문자열
- JDBC
- 인포믹스
- esql
- XE3
- 플러터
- 스크래핑
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |