Simple Mail Transfer Protocol (SMTP) הוא פרוטוקול תקשורת סטנדרטי לשליחת הודעות דואר אלקטרוני ברשתות עסקיות ובאינטרנט. SMTP פותחה במקור בתחילת שנות השמונים ונשארה אחד הפרוטוקולים הפופולריים ביותר בשימוש ברחבי העולם.
תוכנת הדואר האלקטרוני בדרך כלל משתמשת ב- SMTP לשליחה ופרוטוקולים של Post Office Protocol 3 (POP3) או בפרוטוקול IMAP (Internet Message Protocol) לקבלת דואר. למרות גילו, לא חלופה אמיתית SMTP קיים בשימוש המרכזי.
כיצד עובד SMTP
כל תוכנת הדוא"ל המודרנית תומכת ב- SMTP. הגדרות ה- SMTP המתוחזקות בלקוח דוא"ל כוללות את כתובת ה- IP של שרת SMTP (יחד עם הכתובות של שרת POP או IMAP לקבלת הודעות דוא"ל). לקוחות מבוססי אינטרנט להטביע את הכתובת של שרת SMTP בתוך התצורה שלהם, בעוד לקוחות מחשב לספק הגדרות SMTP המאפשרים למשתמשים לציין שרת משלהם של בחירה.
שרת SMTP פיזי עשוי להיות מוקדש לשירות שירות דואר אלקטרוני בלבד, אך לעתים קרובות בשילוב עם לפחות POP3 ולפעמים פונקציות שרת proxy אחרים.
SMTP פועל על גבי TCP / IP ומשתמש ביציאת TCP מספר 25 לתקשורת סטנדרטית. כדי לשפר את ה- SMTP ולסייע במאבק בדואר זבל באינטרנט, קבוצות סטנדרטים תכננו גם את יציאת TCP 587 לתמיכה בהיבטים מסוימים של הפרוטוקול. כמה שירותי דואר אלקטרוני באינטרנט, כגון Gmail, משתמשים ביציאה TCP הרשמית 465 עבור SMTP.
פקודות SMTP
תקן ה- SMTP מגדיר קבוצה של פקודות - שמות של סוגים ספציפיים של הודעות שמשתמשות בדואר אלקטרוני לשרת הדואר בעת בקשת מידע. הפקודות הנפוצות ביותר הן:
- HELO ו- EHLO - פקודות היוזמות הפעלת פרוטוקול חדש בין הלקוח לשרת. הפקודה EHLO מבקשת מהם להגיב עם כל הרחבות אופציונליות של SMTP שהוא תומך בהן
- MAIL - הפקודה כדי להתחיל לשלוח הודעת דואר אלקטרוני
- RCPT - הפקודה לספק כתובת דוא"ל אחת עבור הנמען של ההודעה הנוכחית להיות מוכן
- DATA - פקודה המציינת את תחילת השידור של הודעת הדואר האלקטרוני. פקודה זו מפעילה סדרה של הודעת מעקב אחת או יותר שכל אחת מהן מכילה חלק מהודעה. ההודעה האחרונה ברצף ריקה (המכילה רק נקודה (.) כאופי סיום) כדי לסמן את סוף הדוא"ל.
- RSET - תוך כדי שליחת הודעת דואר אלקטרוני (לאחר הנפקת פקודת MAIL), שני קצות חיבור ה- SMTP יכולים לאפס את החיבור אם הוא נתקל בשגיאה
- NOOP - הודעה ריקה ("ללא פעולה") שתוכננה כסוג של פינג כדי לבדוק את ההיענות של הקצה השני של הפגישה
- QUIT - מסיים את הפעלת הפרוטוקול
מקבל פקודות אלה משיב עם מספרי קוד הצלחה או כשל.
בעיות עם SMTP
ל- SMTP אין תכונות אבטחה מובנות. שולחי דואר זבל באינטרנט אפשרו לנצל SNMP בעבר על ידי יצירת כמויות עצומות של דואר זבל ושלח אותם באמצעות שרתי SMTP פתוחים. הגנה מפני דואר זבל השתפר עם השנים, אבל הם לא בטוחים. בנוסף, SMTP אינו מונע שולחי דואר זבל להגדיר (באמצעות הפקודה MAIL) מזויפות "מאת:" כתובות דוא"ל.