كيفية التحقق من اتصال SMTP باستخدام جلسة Telnet يدوية

Bird

07‏/02‏/2020

البريد الإلكتروني

1 min read

كيفية التحقق من اتصال SMTP باستخدام جلسة Telnet يدوية

Bird

07‏/02‏/2020

البريد الإلكتروني

1 min read

كيفية التحقق من اتصال SMTP باستخدام جلسة Telnet يدوية

في عالم البريد الإلكتروني، هناك العديد من الجوانب المتعلقة بالاختبار، ولكن أحد أبسط الاختبارات التي يمكنك القيام بها هو ببساطة استخدام telnet للدخول إلى خادم SMTP معين. هذا الاختبار لSMTP مفيد في تحديد ما إذا كانت أبسط المشاكل موجودة أم لا.

في عالم البريد الإلكتروني، هناك العديد من الجوانب للاختبار، لكن أحد أبسط الاختبارات التي يمكن القيام بها هو ببساطة استخدام telnet إلى خادم SMTP معين.   هذا التحقق من SMTP مفيد في تحديد ما إذا كانت هناك مشكلة أساسية أم لا.

  • هل الخادم يعمل؟

  • هل هناك جدار حماية يعيق الاتصالات؟

  • هل يسمح خادم البريد بترحيل نطاق معين/عنوان بريد إلكتروني؟

  • ما هي الأوامر التي يدعمها خادم البريد SMTP؟

  • هل يستجيب الخادم بالاسم المضيف الصحيح؟

  • هل يعمل الاتصال خارج أي برامج أو واجهات برمجة تطبيقات خارجية؟

يمكن الإجابة على كل هذه الأسئلة والمزيد من خلال اختبار telnet بسيط.

قبل أن نبدأ، تأكد من فتح جزء المرافق لهذا المنشور: إلى أين يتم إرسال رسائل العملاء المرتدة؟ في علامة تبويب جديدة حتى تتمكن من قراءته بعد الانتهاء من هذه المدونة.

ملاحظة، الأوامر المستخدمة في الأمثلة التالية (وكذلك الأوامر الإضافية) مغطاة في القسم 4.1 من RFC 2821.

كيف أرسل بريدًا إلكترونيًا باستخدام Telnet؟

إرسال بريد إلكتروني عبر telnet يمكن أن يساعدك في تحديد مشاكل التسليم ضمن تكوينك الحالي.

قبل إرسال بريد إلكتروني باستخدام telnet، تأكد من أن telnet مُثبت وممكّن على جهاز الكمبيوتر الخاص بك. معظم أجهزة الكمبيوتر تأتي مع عميل telnet مُثبت مسبقًا. بالنسبة لأنظمة Windows التي لا تملك هذه الميزة، يمكن تثبيتها عن طريق فتح قسم "البرامج والميزات" في لوحة التحكم وتحديد "تشغيل ميزات Windows أو تعطيلها". عند فتح هذه النافذة، اختر "عميل telnet" ثم اضغط على موافق.

بمجرد التحقق من تثبيت عميل telnet على الخادم، افتح نافذة الطرفية حيث ستدخل أوامر الاستدعاء الخاصة بك. على Windows، استخدم Windows + R، وأدخل "cmd"، واضغط على Enter. لمستخدمي Mac، يمكنك العثور على أيقونة الطرفية عن طريق فتح Finder والبحث عن "Utilities" في صفحة التطبيقات، أو عن طريق إدخال "طرفية" في وظيفة البحث في Launchpad.

بعد ذلك، نحتاج إلى العثور على خادم بريد لتسجيل الدخول إليه. لذلك، سنحتاج إلى سجل DNS MX لنطاق معين. يمكن العثور على ذلك باستخدام الأمر التالي (في هذه الأمثلة سيتم استخدام port25.com، ولكن يمكن استبدال أي نطاق آخر):

Windows:

nslookup -type=mx port25.com

إجابة غير موثوقة:

port25.com  MX preference = 100, mail exchanger = mail.port25.com

Linux:

nslookup -type=mx port25.com

إجابة غير موثوقة:

port25.com  mail exchanger = 100 mail.port25.com.

يستخدم SMTP واحدًا من ثلاثة منافذ — 25، 465، أو 587، والتي يستخدمها Microsoft Outlook عادةً. للحصول على تكوينات متقدمة للخادم البريدي وتحسينها، انظر دليلنا عن نصائح تهيئة PowerMTA. إذا كان جهاز توجيه SMTP الخاص بك يستخدم منفذًا مختلفًا عن 25 كما هو موضح في المثال، فستستخدم المنفذ المحدد بواسطة استجابة خادم تبادل البريد للأمر nslookup. يمكنك أيضًا التحقق من المنفذ الذي يعتمد عليه SMTP الخاص بك عن طريق سؤال مسؤولك أو تسجيل الدخول إلى خادم تبادل البريد ومراجعة البروتوكولات.

التالي نحتاج إلى DNS PTR للـ IP الذي سنستخدمه. أولاً يجب أن نعرف ما هو عنوان IP الذي يرانا الإنترنت بامتلاكه. للعثور على ذلك يمكننا استخدام موقع مثل:

http://whatismyipaddress.com/

مع عنوان IP قم بتشغيل الأمر التالي، حيث A.B.C.D هو عنوان IP.

Windows:

nslookup -type=ptr A.B.C.D

إجابة غير موثوقة: 

D.C.B.A.in-addr.arpa name = server.example.com

Linux:

nslookup -type=ptr A.B.C.D

إجابة غير موثوقة: 

D.C.B.A.in-addr.arpa name = server.example.com

server.example.com مجرد مثال، وستكون نتائجك مختلفة.

لذلك الآن بعد أن حصلنا على سجل MX لـ port25.com و PTR لـ IP الذي سنستخدمه، حان الوقت لتسجيل الدخول إلى خادم SMTP. للقيام بذلك، استخدم الأمر التالي:

telnet mail.port25.com 25

يجب أن يظهر شيء مشابه للتالي الآن:

Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). الشخصية الهاربة هي '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP الخدمة جاهزة

إذا تلقيت رسالة خطأ مثل "cannot connect" في هذه النقطة، إما أن يكون رقم المنفذ صحيحًا أو يواجه خادم البريد مشاكل.

الأمر الأول الذي يجب إصداره لخادم البريد لـ SMTP لدينا هو EHLO أو HELO. هذا هو تحية بسيطة تبدأ الاتصالات بين عميل telnet وخادم SMTP. كما يُمرر DNS PTR لعنوان IP من الذي نتواصل منه كما تم تحديده سابقًا.

EHLO server.example.com

يجب أن يعاد شيء مشابه للتالي:

250-mail.port25.com يقول مرحبًا 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN

هذا يظهر أوامر SMTP التي يقبلها خادم SMTP. ليس كل خوادم SMTP تدعم نفس مجموعة الأوامر. على سبيل المثال، yahoo يعرض فقط التالي:

250-8BITMIME 250-SIZE 41943040 250 PIPELINING

و aol يعرض فقط واحدًا:

250 DSN

الأمر التالي الذي نحتاج إلى إصداره هو الأمر MAIL FROM. هذا يحدد العنوان الذي يتم من خلاله إرسال الإرتدادات. هذا ليس هو نفسه عنوان الـ 'from'، الذي هو عنوان البريد الإلكتروني الموضح في عميل البريد الإلكتروني.

MAIL FROM: <support@port25.com> 250 2.1.0 البريد موافق

تأكد من استخدام اسم النطاق المطابق لنطاق خادم بريدك الإلكتروني. على سبيل المثال، إذا كانت النطاق البريدي هو anycompany.com، فستريد استخدام you@anycompany.com بدلاً من بريد خارجي مثل you@free-mail-provider.com. الاختلافات في أسماء المجالات يمكن أن تتسبب في ظهور رسالة خطأ.

الآن بعد إرسال الأمر MAIL FROM، يمكننا إرسال الأمر RCPT TO. هذا الأمر يحكي لخادم البريد SMTP إلى من يجب أن تُرسل الرسالة. يمكن أن تكون هي نفسها أو مختلفة عن العنوان 'to'، الذي هو عنوان البريد الإلكتروني الظاهر في عميل البريد الإلكتروني.

RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> موافق

تحقق من صحة عنوان المستلم قبل إرسال أمر RCPT TO - يمكن أن تعرض رسالة خطأ هنا تشير إلى وجود خطأ إملائي أو استلام بريد محظور.

الأمر الأخير الذي يجب تشغيله قبل بدء جسم الرسالة هو الأمر DATA. هذا الأمر يخبر خادم البريد SMTP بأن كل شيء سيتم إرساله بعد هذا هو جسم الرسالة (الذي يحتوي أيضًا على الترويسات).

DATA 354 أرسل الرسالة

من المهم ملاحظة أنه إذا كان خادم البريد يدعم PIPELINING، كما هو الحال مع mail.port25.com، فقد ينتظر خادم البريد SMTP حتى تصدر الأمر DATA قبل الرد على أي أوامر أخرى بعد EHLO/HELO. في هذه الحالة، أدخل أوامر MAIL FROM و RCPT TO و DATA قبل انتظار الرد.

الآن بعد أن تم إرسال الأمر DATA، يمكننا البدء في إرسال محتويات الرسالة. هذا يبدأ مع مختلف الترويسات. بشكل أساسي يجب أن تحتوي الرسالة على ترويسة to و from و subject و date. الترويظامت التي يتم إدخالها هنا ستعرض للمستخدم في عميل البريد الإلكتروني الخاص بهم.

From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: رسالة اختبار مُرسلة من جلسة telnet يدوية Date: Wed, 11 May 2011 16:19:57 -0400

بعد ضبط الترويصبح، نضيف الآن سطرًا فارغًا واحدًا مع إعادة الكسر/تغذية الخط (فقط اضغط على Enter مرتين) ثم نبدأ في جسم الرسالة الفعلي.

Hello World, هذه رسالة اختبار مُرسلة من جلسة telnet يدوية. بكل إخلاص، مسؤول SMTP

مع اكتمال الرسالة، نحتاج إلى إعلام خادم البريد SMTP بأننا انتهينا من الرسالة ونريد أن يقبلها خادم البريد SMTP. يتم ذلك بنقطة على سطر بمفردها. إذا احتجت إلى استخدام نقطة على سطر بمفردها أثناء كتابة الرسالة، فيجب عليك وضع نقطتين، الأولى لتفادي الثانية.

.   250 2.6.0 رسالة مستلمة

إذا حصلت على رسالة خطأ بدلاً من إشعار "تم الاستلام"، قم بتسجيل التفاصيل ذات الصلة واتصل بمزود بريدك الإلكتروني للحصول على مزيد من المساعدة. قد تكون مشاكل الاتصال أيضًا مرتبطة بالبروتوكولات الأمنية - تأكد من أنك تستخدم TLS 1.2 أو أعلى للاتصالات الآمنة.

أخيرًا، يتم إرسال الأمر QUIT لإغلاق الاتصال:

QUIT 221 2.0.0 mail.port25.com يقول وداعًا

بهذا يكون خادم البريد قد قبل الآن الرسالة للتوصيل، اختبار إرسال البريد الإلكتروني telnet الخاص بك مكتمل، ويجب أن يكون في صندوق الوارد لعنوان RCPT TO!!!

هنا جميع الأوامر دون انقطاع:

telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). الشخصية الهاربة هي '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP الخدمة جاهزة EHLO server.example.com 250-mail.port25.com يقول مرحبًا 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN MAIL FROM: <support@port25.com> 250 2.1.0 البريد موافق RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> موافق DATA 354 أرسل الرسالة From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: رسالة اختبار مُرسلة من جلسة telnet يدوية Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, هذه رسالة اختبار مُرسلة من جلسة telnet يدوية. بكل إخلاص، مسؤول SMTP . 250 2.6.0 رسالة مستلمة QUIT 221 2.0.0 mail.port25.com يقول وداعًا

إرسال بريد إلكتروني باستخدام telnet يسمح لك باختبار قدرات الاتصال بسرعة وبتكلفة أقل من معدات التشخيص القوية أو البرامج. لاختبار أدوات SMTP المتقدمة، اعتبر استخدام Swaks مع SparkPost لاختبار البريد الإلكتروني الشامل.

كيف يمكنني اختبار SMTP باستخدام مصادقة Telnet؟

الآن بعد أن تعرفت على كيفية التحقق من اتصال SMTP باستخدام telnet، سنناقش إجراءات المصادقة. تساعد مصادقة SMTP في منع كمية كبيرة من الرسائل الغير مرغوب فيها من الوصول إلى صناديق البريد الخاصة بالقراء، على الرغم من أن جميع خوادم تبادل البريد لا تتطلب ذلك. فهم المصادقة ضروري أيضا عند تحليل رؤوس البريد الإلكتروني لحل مشاكل التسليم.

الفرق الرئيسي في بروتوكولات المصادقة الحديثة هو وجود ترميز base64. يقوم base64 بتحويل البيانات الثنائية إلى شكل نص ASCII المطلوب من قبل خوادم البريد لإرسال البيانات بنجاح. إنها طريقة لتمثيل بيانات تسجيل الدخول الخاصة بك — بعض الجمع بين النصوص — في شكل رقمي يمكن للحاسوب فهمه.

يمكنك توليد base64 الخاص بك باستخدام برامج أو أدوات مجانية على الإنترنت. بمجرد أن تقوم بإيصال المعلومات إلى خادم البريد، فإنه يقارن هذه البيانات مع سجلاته لتحديد المصادقة.

لاختبار مصادقة SMTP عبر telnet، قم بإكمال الخطوات التالية:

  • افتح المحطة واتصل بخادم البريد باستخدام اسم خادم telnet وأمر الوصول — mail.port25.com في المثال أعلاه.

  • رحب بالخادم بـ EHLO أو HELO، أدخل AUTH LOGIN، وانتظر استجابة الحاسوب.

  • قم بإدخال اسم المستخدم المشفر بـ base64 واترك الخادم يجيب.

  • أدخل كلمة المرور المشفرة بـ base64، ويجب أن تحصل على استجابة مثل "نجحت المصادقة".

  • تابع مع MAIL FROM, RCPT TO, DATA, و QUIT لإرسال البريد الإلكتروني المصادق عليه.

الآن بعد أن تعرفت على كيفية التحقق من اتصال SMTP باستخدام telnet، سنناقش إجراءات المصادقة. تساعد مصادقة SMTP في منع كمية كبيرة من الرسائل الغير مرغوب فيها من الوصول إلى صناديق البريد الخاصة بالقراء، على الرغم من أن جميع خوادم تبادل البريد لا تتطلب ذلك. فهم المصادقة ضروري أيضا عند تحليل رؤوس البريد الإلكتروني لحل مشاكل التسليم.

الفرق الرئيسي في بروتوكولات المصادقة الحديثة هو وجود ترميز base64. يقوم base64 بتحويل البيانات الثنائية إلى شكل نص ASCII المطلوب من قبل خوادم البريد لإرسال البيانات بنجاح. إنها طريقة لتمثيل بيانات تسجيل الدخول الخاصة بك — بعض الجمع بين النصوص — في شكل رقمي يمكن للحاسوب فهمه.

يمكنك توليد base64 الخاص بك باستخدام برامج أو أدوات مجانية على الإنترنت. بمجرد أن تقوم بإيصال المعلومات إلى خادم البريد، فإنه يقارن هذه البيانات مع سجلاته لتحديد المصادقة.

لاختبار مصادقة SMTP عبر telnet، قم بإكمال الخطوات التالية:

  • افتح المحطة واتصل بخادم البريد باستخدام اسم خادم telnet وأمر الوصول — mail.port25.com في المثال أعلاه.

  • رحب بالخادم بـ EHLO أو HELO، أدخل AUTH LOGIN، وانتظر استجابة الحاسوب.

  • قم بإدخال اسم المستخدم المشفر بـ base64 واترك الخادم يجيب.

  • أدخل كلمة المرور المشفرة بـ base64، ويجب أن تحصل على استجابة مثل "نجحت المصادقة".

  • تابع مع MAIL FROM, RCPT TO, DATA, و QUIT لإرسال البريد الإلكتروني المصادق عليه.

الآن بعد أن تعرفت على كيفية التحقق من اتصال SMTP باستخدام telnet، سنناقش إجراءات المصادقة. تساعد مصادقة SMTP في منع كمية كبيرة من الرسائل الغير مرغوب فيها من الوصول إلى صناديق البريد الخاصة بالقراء، على الرغم من أن جميع خوادم تبادل البريد لا تتطلب ذلك. فهم المصادقة ضروري أيضا عند تحليل رؤوس البريد الإلكتروني لحل مشاكل التسليم.

الفرق الرئيسي في بروتوكولات المصادقة الحديثة هو وجود ترميز base64. يقوم base64 بتحويل البيانات الثنائية إلى شكل نص ASCII المطلوب من قبل خوادم البريد لإرسال البيانات بنجاح. إنها طريقة لتمثيل بيانات تسجيل الدخول الخاصة بك — بعض الجمع بين النصوص — في شكل رقمي يمكن للحاسوب فهمه.

يمكنك توليد base64 الخاص بك باستخدام برامج أو أدوات مجانية على الإنترنت. بمجرد أن تقوم بإيصال المعلومات إلى خادم البريد، فإنه يقارن هذه البيانات مع سجلاته لتحديد المصادقة.

لاختبار مصادقة SMTP عبر telnet، قم بإكمال الخطوات التالية:

  • افتح المحطة واتصل بخادم البريد باستخدام اسم خادم telnet وأمر الوصول — mail.port25.com في المثال أعلاه.

  • رحب بالخادم بـ EHLO أو HELO، أدخل AUTH LOGIN، وانتظر استجابة الحاسوب.

  • قم بإدخال اسم المستخدم المشفر بـ base64 واترك الخادم يجيب.

  • أدخل كلمة المرور المشفرة بـ base64، ويجب أن تحصل على استجابة مثل "نجحت المصادقة".

  • تابع مع MAIL FROM, RCPT TO, DATA, و QUIT لإرسال البريد الإلكتروني المصادق عليه.

دعنا نوصلك بخبير من Bird.
رؤية القوة الكاملة لـ Bird في 30 دقيقة.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.

دعنا نوصلك بخبير من Bird.
رؤية القوة الكاملة لـ Bird في 30 دقيقة.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.

دعنا نوصلك بخبير من Bird.
رؤية القوة الكاملة لـ Bird في 30 دقيقة.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.

R

وصول

G

نمو

م

إدارة

A

أتمتة

النشرة الإخبارية

ابقَ على اطلاع مع Bird من خلال التحديثات الأسبوعية إلى بريدك الوارد.