티스토리 뷰

반응형
SMTP를 이용해서 이메일 전송하는 방법에 대해서 간단하게 알아봅시다. 별거 아니라는 생각이 들 수도 있겠지만 알아두면 유용하고 모르면 상당히 불편할 수도 있습니다. 따라서 번거롭더라도 일단 익혀두시면 유용하게 사용할 수 있을 겁니다. 기타 SMTP 와 관련된 보다 자세한 내용들은 RFC 821를 참고하시기 바랍니다.

예제: aaa@bb.com 사용자가 ccc@ddd.com에게 이메일 보내기

우선 텔넷을 이용해서 SMTP 포트에 접속, 직접 이메일을 작성해보도록 하겠습니다. STMP 서버는 예약된 포트번호가 25번입니다. 따라서 텔넷 프로그램을 이용해서 다음과 같이 자신이 사용할 수 있는 SMTP 서버에 접속합니다. (리눅스 텔넷이 아닌 이야기나 새롬데이타맨 같은 경우에는 기본적으로 입력내용이 화면에 보이지 않기 때문에 여러 가지로 불편한 점이 많습니다. 옵션에서 '입력내용 echo' 설정을 해주시기 바랍니다.)
telnet <ip 또는 도메인명> 25

ex) telnet mail.amail.co.kr 25
접속하면 간단한 메세지와 함께 프롬프트가 나타납니다. 우선 다음과 같이 한 줄씩 차례대로 입력해 봅니다. (한 줄씩 입력할 때마다 서버에서 응답이 오기 때문에 입력 후 잠시 기다리시기 바랍니다.)
helo localhost (SMTP 서버에게 자신이 누군지를 알려주는 부분,  맘대로 적어도 별 상관은 없음)
mail from: <aa@bbb.com>
rcpt to: <ccc@ddd.com>
data
from: 보내는사람<aa@bbb.com>
To: 받는사람<ccc@ddd.com>
Subject: 고객님 안녕하십니까?

안녕하십니까? 고객님 만나서 반갑습니다.
저희 웹사이트에 방문해 주셔서 대단히 감사합니다.
그럼 이만
.
quit

data 를 입력한 이후에 모든 내용을 타이핑했으면 . 를 찍어주고 quit를 입력해서 SMTP와의 접속을 끊습니다. 만약 본문내용을 HTML로 보내고 싶다면 아래와 같이 해주면 됩니다.
helo localhost (또는 보내는 사람의 서버명)
mail from: <aa@bbb.com>
rcpt to: <ccc@ddd.com>
data
From: 보내는사람<aaa@bb.com>
To: 받는사람<ccc@ddd.com>
Subject: 고객님 안녕하십니까?
Content-Type: text/html; charset=euc-kr

<html>
<head>
<title>가입환영 이메일</title>
</head>
<body>
안녕하십니까? 고객님 만나서 반갑습니다.
저희 웹사이트에 방문해 주셔서 대단히 감사합니다.
그럼 이만
</body>
</html>
.
quit

이런 식으로 Content-Type을 추가해주고 data 이하에 HTML 소스를 입력하면 됩니다. PHP의 mail() 함수나 JavaMail 같은 경우에 smtp 접속하는 부분은 API에서 내부적으로 처리하고 실제로는 data 부분의 내용만 세팅하도록 되어 있습니다. 하지만 모든 웹 프로그래밍 언어가 mail() 같은 기능을 제공해주지는 않을 뿐만 아니라 소켓연결 API만 있는 프로그래밍 언어로 이메일 보내기를 할 경우에는 기본적인 SMPT 사용법을 알고 있어야만 합니다.

따라서 SMTP에서는 기본적으로 가장 많이 사용하게 되는 HELO, MAIL, RCPT, DATA, QUIT 의 명령어 외에도 사용자 확인을 할 수 있는 VRFY, 메일링 리스트를 확인할 수 있는 EXPN, 이메일의 터미널 또는 메일박스로의 전송을 지정할 수 있는 SOML, SAML, 현재까지의 SMTP 트랜잭션을 취소할 때 사용하는 RSET, 도움말을 볼 때 쓰는 HELP, 그리고 TURN, NOOP 등의 명령어들도 있다는 것을 알아두셔야 합니다.


출처 - http://network.hanb.co.kr/view.php?bi_id=458
반응형

'Programing' 카테고리의 다른 글

CSS, java script 기초적 PPT 강의 자료  (0) 2007.08.30
JSP 주석처리  (0) 2007.08.30
[ANT] 설치 및 환경설정방법  (0) 2007.08.30
PHP로 MSSQL연동하쟈!  (0) 2007.08.30
prospring - sample chapter  (0) 2007.08.30
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
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
글 보관함