Differences between revisions 9 and 10
Revision 9 as of 2006-01-04 09:23:20
Size: 2520
Editor: 211
Comment:
Revision 10 as of 2006-01-04 09:30:19
Size: 2607
Editor: 211
Comment:
Deletions are marked like this. Additions are marked like this.
Line 52: Line 52:
메일발송 스크립트. 메일발송 스크립트. (여기서 msg.txt의 첫 라인은 제목으로 처리됨)
Line 60: Line 60:
Usage = "./bulkmail.py address.txt < msg.txt"
try:
    addressFileName = sys.argv[1]
except IndexError:
    print Usage
    sys.exit(1)
Line 63: Line 70:
fromaddr = toEuckr('김형용 <yong27@bh.net>') fromaddr = toEuckr('김형용 <yong27@biohackers.net>')
Line 75: Line 82:

사용법은 (여기서 msg.txt의 첫 라인은 제목으로 처리됨)
{{{
$ ./bulkmail.py addrs.txt < msg.txt
}}}

SimpleMailTransferProtocol

메일을 주고받기 위해 사용하는 [TCP]/[IP]프로토콜. 서버들 사이에서 E-mail을 전송하고 받기 위해서 일반적으로 이용된다.

포트25번을 사용하며, 클라이언트가 요청/응답의 간단한 대화를 통하여 [SMTP]서버와 연결을 만들고, 메세지를 보내는 사람과 받는사람(들)의 메일주소를 전송한다. 서버가 메일주소를 받아들이면 그때 클라이언트가 메세지를 전송한다.

항상 인터넷에 연결되어 있지 않은 호스트들을 위해 [POP3]는 우체국처럼 작업한다.

대표적인 프로그램으로

메일서버를 돌리려면, pop, imap서버가 따로 필요하다. (특히, PostFix의 경우)

  • [Dovecot]
  • [Cyrus]

웹메일 프로그램

웹메일 서비스

  • [Gmail]

UbuntuLinux, DDNS환경에서 메일서버 세팅하기

UbuntuLinux, [DDNS]환경에서 PostFix, [Dovecot], SquirrelMail으로 메일서버 세팅하기. (꽤 까다로운 점이 있었는데, 원래 도메인으로는 안되던것. mail. 호스트를 따로 지정해야만 동작했다.) -- ["yong27"] DateTime(2005-11-04T00:38:22Z)

# apt-get install postfix
# apt-get install dovecot
# apt-get install squirrelmail
# vi /etc/postfix/main.cf
myhostname = mail.mydomainname
# vi /etc/dovecot/dovecot.conf
# squirrelmail-config

Python 메일발송

메일발송 스크립트. (여기서 msg.txt의 첫 라인은 제목으로 처리됨)

   1 #!/usr/bin/env python
   2 # -*- coding: utf-8 -*-
   3 
   4 import smtplib, sys
   5 from email.MIMEText import MIMEText
   6 
   7 Usage = "./bulkmail.py address.txt < msg.txt"
   8 try:
   9     addressFileName = sys.argv[1]
  10 except IndexError:
  11     print Usage
  12     sys.exit(1)
  13 
  14 toEuckr = lambda s: unicode(s, 'utf-8').encode('euc-kr')
  15 server = smtplib.SMTP('biohackers.net')
  16 #server.set_debuglevel(1)
  17 fromaddr = toEuckr('김형용 <yong27@biohackers.net>')
  18 subject = toEuckr(sys.stdin.readline())
  19 contents = toEuckr(sys.stdin.read())
  20 for line in file(sys.argv[1]):
  21     toaddr = line.strip()
  22     msg = MIMEText(contents,'plain','euc-kr')
  23     msg['From'] = fromaddr
  24     msg['To'] = toaddr
  25     msg['Subject'] = subject
  26     server.sendmail(fromaddr, toaddr, msg.as_string())
  27 server.quit()

SMTP (last edited 2013-04-17 10:52:11 by 211)

web biohackers.net