SMTP

GreenBeanΒ·2021λ…„ 10μ›” 28일
1
post-thumbnail

Simple Mail Transfer Protocol

SMTP μ„œλ²„λž€?

  • SMTPλŠ” SMTP (Simple Mail Transfer Protocol)의 μ•½μž
    • 일반적으둜 μ „μž 메일 μ „μ†‘μ„μœ„ν•œ ν‘œμ€€ ν”„λ‘œν† μ½œ
    • 이메일을 μ†‘μˆ˜μ‹ ν•˜λŠ” μ„œλ²„λ₯Ό SMTP μ„œλ²„λΌκ³  함

SMTPλž€?

  • νƒ€μΈμ—κ²Œ 메일을 보내렀면 λ„·μŠ€μΌ€μ΄ν”„μ˜ λ©”μ‹ μ €λ‚˜ μΈν„°λ„·μ΅μŠ€ν”Œλ‘œμ–΄μ˜ 아웃룩 μ΅μŠ€ν”„λ ˆμŠ€, μœ λ„λΌ λ“±μ˜ μœˆλ„μš° ν”„λ‘œκ·Έλž¨μ„ 톡해 메일을 λ³΄λ‚΄κ²Œ 됨
  • 메일을 μž‘μ„±ν•΄μ„œ λ³΄λ‚΄μ‹œλ©΄ κ·Έ 메일은 SMTP μ„œλ²„(λ³΄λ‚΄λŠ” λ©”μΌμ„œλ²„, Outgoing mailserver)둜 일단 μ „μ†‘λ˜λ©° 이 SMTP μ„œλ²„μ—μ„œ SENDMAIL ν”„λ‘œκ·Έλž¨μ„ κ΅¬λ™ν•˜μ—¬ ν•΄λ‹Ή 메일 μ£Όμ†Œλ‘œ 메일을 λ³΄λ‚΄κ²Œ 됨
  • λ°”λ‘œ μ΄λŸ¬ν•œ 역할을 ν•˜λŠ”κ²ƒμ„ SMTP μ„œλ²„, λ³΄λ‚΄λŠ” 메일 μ„œλ²„, Outgoing Mailserver라고 함
  • μ „μž 메일을 λ³΄λ‚΄λŠ” κ³Όμ •κ³Ό SMTP μ„œλ²„μ—μ„œ μˆ˜ν–‰λ˜λŠ” μ—­ν• 
    1. IDκ°€ abc@gmail.com 인 μ „μž 메일을 xyz@psychz.com 으둜 λ³΄λ‚΄λŠ” μ‹œλ‚˜λ¦¬μ˜€ κ³ λ €
      • μ—¬κΈ°μ„œ 보낸 μ‚¬λžŒ SMTP 메일 μ„œλ²„λŠ” "gmail" μ„œλ²„μ΄κ³  λ°›λŠ” μ‚¬λžŒ SMTP 메일 μ„œλ²„λŠ” "psychz"
      • MS Outlook λ˜λŠ” Thunderbird와 같이 μ‹œμŠ€ν…œμ— μ„€μΉ˜λœ μ „μž 메일 ν΄λΌμ΄μ–ΈνŠΈλ₯Ό 톡해 메일을 보낼 수 μžˆλŠ”λ°, 이 μ „μž 메일 ν΄λΌμ΄μ–ΈνŠΈλŠ” μ „μž λ©”μΌμ˜ SMTP 메일 μ„œλ²„(이 κ²½μš°μ—λŠ” Google μ„œλ²„)에 λ‘œκ·ΈμΈν•˜λŠ” 것을 λ„μ™€μ€Œ
      • μ›Ή λΈŒλΌμš°μ €λ₯Ό 톡해 μ„œλ²„ μ›Ή μ‚¬μ΄νŠΈμ— λ‘œκ·ΈμΈν•˜κ³  κ±°κΈ°μ—μ„œ 메일을 보내고 받을 μˆ˜λ„ 있음
    2. μ „μž 메일을 μž…λ ₯ν•˜κ³  xyz@psychz.comκ³Ό 같은 λ°›λŠ” μ‚¬λžŒμ˜ μ£Όμ†Œλ‘œ 보내기λ₯Ό ν΄λ¦­ν•˜λ©΄ μ „μž 메일이 Gmail SMTP μ„œλ²„μ— λ„λ‹¬ν•˜μ—¬ 거기에 μ €μž₯됨
    3. Gmail SMTP μ„œλ²„λŠ” λ°›λŠ” μ‚¬λžŒμ˜ μ£Όμ†Œλ₯Ό ID "xyz"와 DNS "psychz.com"의 두 λΆ€λΆ„μœΌλ‘œ μ•‘μ„ΈμŠ€
      • Gmail SMTP μ„œλ²„λŠ” μˆ˜μ‹ μžμ— λŒ€ν•œ 정보λ₯Ό μ–»κΈ° μœ„ν•΄ DNS μ„œλ²„μ— 접속
      • DNS μ„œλ²„λŠ” μš°μ„  μˆœμœ„ 정보λ₯Ό μ‚¬μš©ν•˜μ—¬ λ°›λŠ” μ‚¬λžŒμ˜ 도메인 이름에 맀핑 된 IP μ£Όμ†Œλ₯Ό λ°˜ν™˜
        • 이것듀은 λ°›λŠ” μ‚¬λžŒμ˜ SMTP μ„œλ²„μ˜ IP μ£Όμ†Œμ΄λ©° 이 경우 psychz
      • λ°›λŠ” μ‚¬λžŒμ΄ μ—¬λŸ¬ μ„œλ²„λ₯Ό ν¬ν•¨ν•˜λ©΄ μ—¬λŸ¬ IP μ£Όμ†Œκ°€ μš°μ„  μˆœμœ„λ‘œ 제곡됨
    4. IP μ£Όμ†Œλ₯Ό 받은 ν›„ 보낸 μ‚¬λžŒ SMTP μ„œλ²„λŠ” λ°›λŠ” μ‚¬λžŒ SMTP μ„œλ²„λ₯Ό 찾을 λ•ŒκΉŒμ§€ IP μ£Όμ†Œμ— μš°μ„  μˆœμœ„λ₯Ό λΆ€μ—¬ν•˜κ³  μ „μž 메일이 μ €μž₯된 λ°›λŠ” μ‚¬λžŒμ˜ SMTP μ„œλ²„λ‘œ μ „μž 메일이 전솑됨
    5. λ°›λŠ” μ‚¬λžŒ SMTP μ„œλ²„λŠ” λ°›λŠ” μ‚¬λžŒμ˜ ID 즉 "xyz"에 μ•‘μ„ΈμŠ€ν•˜μ—¬ μ‚¬μš©μžμ˜ 계정에 μ €μž₯함

μˆœμ„œ

  • 1 - μ—°κ²° μ„€μ • 단계 : SMTP ν΄λΌμ΄μ–ΈνŠΈκ°€ TCPλ₯Ό μ΄μš©ν•΄ SMTP μ„œλ²„μ™€ μ„Έμ…˜μ„ μ„€μ •
  • 2 - μ—°κ²° 섀정이 μ™„λ£Œλ˜λ©΄ SMTP μ„œλ²„μ— 메일을 λ³΄λ‚΄λŠ” 데이터 전솑 단계λ₯Ό 진행 (μ†‘μ‹ μž, μˆ˜μ‹ μžμ˜ μ£Όμ†Œ 및 메일 제λͺ©κ³Ό 같은 헀더 정보)
  • 3 - 메일 전솑을 μ™„λ£Œν•˜λ©΄ TCP 연결을 μ’…λ£Œν•˜λŠ” μ—°κ²°ν•΄μ œ 단계가 μ§„ν–‰λ˜λ©° SMTPκ°€ μ’…λ£Œλ¨
  • μ€‘κ³„μ „λ‹¬μž 역할을 ν•¨μœΌλ‘œμ¨ 메일 μ„œλ²„ κ°„μ˜ μ†‘μˆ˜μ‹  뿐만 μ•„λ‹ˆλΌ 메일 ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ μ„œλ²„λ‘œ 보낼 λ•Œ μ‚¬μš©λ˜λŠ” ν”„λ‘œν† μ½œ
  • μΈν„°λ„·μ—μ„œ 이메일을 κ΅ν™˜ν•  λ•Œ κ·Έ 과정을 μ •λ ¬ν•΄μ€Œ

POP3λž€?

  • μžμ‹ μ—κ²Œ 온 메일을 받아보렀면 POP3 μ„œλ²„(λ°›λŠ” λ©”μΌμ„œλ²„, Incoming Mailserver)에 μžμ‹ μ˜ 계정을 가지고 μžˆμ–΄μ•Ό 함
  • μžμ‹ μ—κ²Œ 온 메일은 POP3 μ„œλ²„μ— μ €μž₯되며 이것을 메일 ν”„λ‘œκ·Έλž¨μ„ ν†΅ν•΄μ„œ μžμ‹ μ˜ μ»΄ν“¨ν„°λ‘œ λ°›μ•„λ³Ό 수 있음
  • POP3 μ„œλ²„λŠ” μ„œλΉ„μŠ€ν•˜λŠ” 메일 μ„œλ²„μ˜ POP3 계정을 μ‚¬μš©ν•΄μ•Όλ§Œ "ID@고객의 도메인"κ³Ό 같은 자기 고유의 도메인 이메일 μ£Όμ†Œλ₯Ό μ‚¬μš©ν•  수 있게 됨
  • μžμ‹ μ˜ 도메인이 μ „μ‚°μ‹€μ˜ μ„œλ²„μ— 심어져 있기 λ•Œλ¬Έμ— POP3 μ„œλ²„λ₯Ό μ‚¬μš©ν•΄μ„œ μžμ‹ μ˜ 도메인 λ©”μΌμ£Όμ†Œλ‘œ 온 메일을 λ°›μ•„ λ³Ό 수 있음
  • 독립 메일 계정 λ˜λŠ” POP3 메일 κ³„μ •μ΄λž€ 보톡 μœ„μ™€ 같은 λͺ¨λ“  κΈ°λŠ₯을 ν•  수 μžˆλŠ” μžμ‹ λ§Œμ΄ μ‚¬μš©ν•˜λŠ” 메일 계정을 λ§ν•˜λ©° λΉ„λ°€λ²ˆν˜Έκ°€ 뢀여됨
profile
🌱 Backend-Dev | hwaya2828@gmail.com

0개의 λŒ“κΈ€