Skip to main content

คู่มือการใช้ Simple Mail Transfer Protocol (SMTP)

Week 9 (เมษายน 2025)

Week 9 (เมษายน 2025)
Anonim

Simple Mail Transfer Protocol (SMTP) เป็นโปรโตคอลการสื่อสารมาตรฐานสำหรับการส่งข้อความอีเมลในเครือข่ายธุรกิจและอินเทอร์เน็ต SMTP ได้รับการพัฒนาขึ้นในช่วงต้นทศวรรษ 1980 และยังคงเป็นหนึ่งในโปรโตคอลที่นิยมใช้มากที่สุดในโลก

ซอฟต์แวร์อีเมลส่วนใหญ่ใช้ SMTP เพื่อส่งและโพรโทคอลโพรโทคอลโพรโทคอล 3 (POP3) หรืออินเทอร์เน็ตโพรโทคอลการเข้าถึงข้อความ (IMAP) สำหรับรับจดหมาย แม้จะมีอายุไม่มีทางเลือกที่แท้จริงสำหรับ SMTP ที่มีอยู่ในการใช้งานหลัก

SMTP ทำงานอย่างไร

โปรแกรมอีเมลไคลเอ็นต์ที่ทันสมัยทั้งหมดสนับสนุน SMTP การตั้งค่า SMTP ที่เก็บรักษาไว้ในไคลเอ็นต์อีเมลประกอบด้วยที่อยู่ IP ของเซิร์ฟเวอร์ SMTP (พร้อมกับที่อยู่ของเซิร์ฟเวอร์ POP หรือ IMAP สำหรับรับอีเมล) ไคลเอ็นต์บนเว็บจะฝังที่อยู่ของเซิร์ฟเวอร์ SMTP ภายในคอนฟิกูเรชันในขณะที่ไคลเอ็นต์พีซีมีการตั้งค่า SMTP ที่อนุญาตให้ผู้ใช้ระบุเซิร์ฟเวอร์ของตนเองได้

เซิร์ฟเวอร์ SMTP ที่มีอยู่จริงอาจทุ่มเทเพื่อให้บริการการรับส่งอีเมล แต่มักใช้งานร่วมกับ POP3 และบางครั้งก็เป็นหน้าที่ของพร็อกซีเซิร์ฟเวอร์

SMTP ทำงานบน TCP / IP และใช้ TCP พอร์ตหมายเลข 25 สำหรับการสื่อสารมาตรฐาน เพื่อปรับปรุง SMTP และช่วยต่อสู้กับสแปมบนอินเทอร์เน็ตกลุ่มมาตรฐานได้ออกแบบพอร์ต TCP 587 เพื่อสนับสนุนโปรโตคอลบางอย่าง บริการอีเมลทางเว็บบางอย่างเช่น Gmail ใช้พอร์ต TCP 465 ที่ไม่เป็นทางการสำหรับ SMTP

คำสั่ง SMTP

มาตรฐาน SMTP กำหนดชุดของคำสั่ง - ชื่อของประเภทเฉพาะของข้อความที่ส่งเมลไคลเอ็นต์ไปยังเซิร์ฟเวอร์จดหมายเมื่อร้องขอข้อมูล คำสั่งที่ใช้บ่อยที่สุดคือ:

  • HELOและEHLO- คำสั่งที่เริ่มต้นเซสชันโปรโตคอลใหม่ระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ คำสั่ง EHLO ขอให้พวกเขาตอบสนองกับส่วนขยาย SMTP ที่เป็นทางเลือกที่สนับสนุน
  • MAIL- คำสั่งเพื่อเริ่มต้นการส่งข้อความอีเมล
  • RCPT- สั่งให้ระบุที่อยู่อีเมลหนึ่งสำหรับผู้รับข้อความปัจจุบันที่เตรียมไว้
  • ข้อมูล- คำสั่งระบุจุดเริ่มต้นของการส่งข้อความอีเมล คำสั่งนี้จะเริ่มต้นข้อความจากการติดตามผลอย่างน้อยหนึ่งข้อความซึ่งแต่ละส่วนมีข้อความ ข้อความล่าสุดในลำดับว่างเปล่า (มีเฉพาะช่วง (.) เป็นอักขระเลิกใช้งาน) เพื่อระบุถึงจุดสิ้นสุดของอีเมล
  • rSet- ในขณะที่อยู่ระหว่างการส่งอีเมล (หลังจากออกคำสั่ง MAIL) การสิ้นสุดการเชื่อมต่อ SMTP อย่างใดอย่างหนึ่งสามารถรีเซ็ตการเชื่อมต่อหากพบข้อผิดพลาด
  • NOOP- ข้อความว่างเปล่า ("ไม่มีการดำเนินการ") ที่ออกแบบมาเพื่อตรวจสอบการตอบสนองของส่วนอื่น ๆ ของเซสชัน
  • เลิก- ยุติเซสชันโปรโตคอล

ผู้รับของคำสั่งเหล่านี้ตอบกลับด้วยหมายเลขรหัสความสำเร็จหรือความล้มเหลว

ปัญหาเกี่ยวกับ SMTP

SMTP ไม่มีคุณลักษณะด้านความปลอดภัยในตัว ผู้ส่งอีเมลขยะทางอินเทอร์เน็ตได้เปิดใช้งานเพื่อใช้ประโยชน์จาก SNMP ในอดีตโดยการสร้างอีเมลขยะจำนวนมากและส่งพวกเขาผ่านทางเซิร์ฟเวอร์ SMTP ที่เปิดอยู่ การป้องกันสแปมมีการปรับปรุงตลอดหลายปีที่ผ่านมา แต่ไม่สามารถป้องกันได้ นอกจากนี้ SMTP ไม่ได้ป้องกันไม่ให้ผู้ส่งอีเมลขยะตั้งค่า (ผ่านคำสั่ง MAIL) ที่อยู่อีเมล "From:" ปลอม