بروتوكول الهوية

بروتوكول Ident ( بروتوكول التعريف ، ويُشار إليه اختصارًا بـ ident ) هو بروتوكول طبقة التطبيق المُحدد في RFC 1413. [ 1 ] عند إعطاء رقمي منفذ TCP مُرتبطين باتصال قائم، يُعيد خادم Ident سلسلة نصية قصيرة تُحدد مالك هذا الاتصال على مُضيف الخادم. يستمع البروتوكول على منفذ TCP رقم 113. [ 2 ] وهو يُلغي بروتوكول "خادم المصادقة" السابق. [ 3 ] [ 1 ] 

وظيفة

صُمم بروتوكول Ident ليعمل كخادم على جهاز المستخدم ، حيث يستقبل الطلبات إلى منفذ TCP محدد ، عادةً 113. في الاستعلام، يُحدد العميل زوجًا من منافذ TCP (منفذ محلي ومنفذ بعيد)، مُشفّرة كأرقام عشرية ASCII ومفصولة بفاصلة (,). ثم يُرسل الخادم استجابة تُحدد اسم المستخدم الذي يُشغل البرنامج الذي يستخدم زوج منافذ TCP المُحددة، أو تُحدد خطأً.

لنفترض أن المضيف A يريد معرفة اسم المستخدم الذي يتصل بمنفذ TCP 23 الخاص به ( Telnet ) من منفذ العميل (المضيف B) 6191. سيقوم المضيف A بعد ذلك بفتح اتصال بخدمة ident على المضيف B، وإصدار الاستعلام التالي:

6191، 23

بما أن اتصالات TCP تستخدم عادةً منفذًا محليًا فريدًا واحدًا (6191 في هذه الحالة)، يمكن للمضيف B تحديد البرنامج الذي بدأ الاتصال المحدد بمنفذ 23 الخاص بالمضيف A بشكل لا لبس فيه، إن وُجد. سيصدر المضيف B بعد ذلك ردًا يحدد المستخدم ("stjohns" في هذا المثال) الذي يملك البرنامج الذي بدأ هذا الاتصال واسم نظام التشغيل المحلي الخاص به .

6193، 23: معرف المستخدم: يونكس: stjohns

لكن إذا تبين أنه لا يوجد مثل هذا الاتصال على المضيف B، فإنه سيصدر بدلاً من ذلك استجابة خطأ:

6195، 23: خطأ: لا يوجد مستخدم

يجب أن تكون جميع رسائل التعريف محددة بتسلسل نهاية السطر الذي يتكون من حرفي إرجاع المؤشر إلى بداية السطر وحرف تغذية السطر (CR+LF). [ 1 ]

فائدة الهوية

غالبًا ما توفر خوادم الاتصال الهاتفي أو خوادم الصدفة المشتركة خدمة الهوية (ident) لتمكين تتبع إساءة الاستخدام إلى مستخدمين محددين. في حال معالجة إساءة الاستخدام على هذا الخادم، فإن المخاوف بشأن موثوقية برنامج الهوية (ident) تصبح غير ذات صلة في الغالب. ويمكن تجنب انتحال الخدمة ومخاوف الخصوصية من خلال توفير رموز مميزة قوية تشفيرًا بدلاً من أسماء المستخدمين الحقيقية.

إذا كان من المقرر أن يتولى مسؤولو الخدمة التي يتصل بها المستخدمون عبر مضيف توفير الهوية معالجة حالات إساءة الاستخدام، فيجب على خدمة الهوية توفير معلومات تُعرّف كل مستخدم. عادةً، يستحيل على مسؤولي الخدمة البعيدة معرفة ما إذا كان مستخدمون محددون يتصلون عبر خادم موثوق أو من جهاز كمبيوتر يتحكمون به بأنفسهم. في الحالة الأخيرة، لا توفر خدمة الهوية أي معلومات موثوقة.

تقتصر فائدة برنامج Ident لإثبات هوية معروفة لمضيف بعيد على الظروف التي:

  • المستخدم المتصل ليس مدير الجهاز. هذا الأمر محتمل فقط بالنسبة للخوادم التي توفر الوصول إلى سطر أوامر يونكس ، والخوادم المشتركة التي تستخدم بنية مشابهة لـ suEXEC، وما شابه ذلك.
  • يثق المستخدمون بمسؤولي الجهاز ويعرفون سياسة المستخدم الخاصة بهم. وهذا ينطبق على الأرجح على الأجهزة المضيفة ضمن نطاق أمني مشترك، كما هو الحال داخل مؤسسة واحدة.
  • يثق المستخدم بأن الجهاز هو الجهاز الذي يدّعي أنه هو، ويعرفه جيدًا. لا يُمكن تحقيق ذلك بسهولة إلا للأجهزة المضيفة على شبكة محلية أو شبكة افتراضية، حيث تكون جميع الأجهزة المضيفة على الشبكة موثوقة، ولا يُمكن إضافة أجهزة مضيفة جديدة بسهولة بسبب الحماية المادية. أما في الشبكات البعيدة والشبكات المحلية العادية، فيُمكن الحصول على ردود تعريف خاطئة عن طريق انتحال عناوين IP، وفي حال استخدام نظام أسماء النطاقات (DNS)، يُمكن استخدام جميع أنواع الحيل المتعلقة بنظام أسماء النطاقات. قد يُقدّم برنامج التعريف ردودًا موقّعة تشفيرًا، والتي، إذا أمكن التحقق منها، تُحلّ هذه المشكلة الأخيرة، ولكن ليس الأولى.
  • لا توجد عوائق وسيطة أمام الاتصال بـ identd مثل جدار الحماية أو NAT أو الخادم الوكيل (كما هو الحال عند استخدام identd مع Apache httpd). هذه أمور شائعة عند الانتقال بين نطاقات الأمان (كما هو الحال مع خوادم HTTP أو FTP العامة ).

بروتوكول

Ident هي خدمة بسيطة لطلب/استجابة عبر بروتوكول TCP. يتصل العميل بالخادم على المنفذ 113 ويرسل رقم منفذ TCP الخاص بالخادم ورقم منفذ TCP الخاص بالعميل كأرقام عشرية ASCII مفصولة بفاصلة (مثال: 113 6191, 23). يرد الخادم إما USERIDباستجابة تتضمن علامة نظام التشغيل وسلسلة تعريف، أو ERRORبرمز مثل 113 NO-USERأو HIDDEN-USER114. [ 1 ]

الأمن والخصوصية

تشير المواصفات إلى أن معلومات Ident موثوقة بقدر موثوقية المضيف الذي يُعيدها، وقد تكشف معلومات تُعتبر عادةً خاصة. وتحذر من استخدام Ident للتحكم في الوصول. [ 1 ]

يصف دليل أمن المعلومات الصادر عن فريق هندسة الإنترنت (IETF) استخدام بروتوكول Ident للتحقق من هوية المرسل (على سبيل المثال في أنظمة البريد الإلكتروني) بأنه "فكرة سيئة"، مشيرًا إلى مخاطر تشمل إعادة التوجيه، واختطاف بروتوكول TCP، واحتمالية الحصول على ردود مضللة أو خاطئة؛ كما يشير إلى مشكلات تشغيلية ناتجة عن قيام العديد من المواقع بإسقاط أو حظر استعلامات Ident. [ 4 ]

النشر والاستخدام

تاريخيًا، استُخدم بروتوكول Ident في الأنظمة متعددة المستخدمين للمساعدة في التدقيق ومعالجة إساءة الاستخدام (على سبيل المثال، في شبكات IRC). أما مواصفات IRC الحديثة فتعتبر Ident اختياريًا: إذ يجوز للخوادم استخدام بروتوكول Ident للبحث عن "اسم المستخدم الحقيقي" للعميل، وغالبًا ما تُعلّم (إذا كان مُفعّلاً) الأسماء التي يُدخلها العميل على أنها غير مُوثّقة عند عدم تلقّي ردّ من Ident. [ 5 ]

عملياً، يؤدي الاستخدام الواسع النطاق لجدران الحماية وترجمة عناوين الشبكة (NAT) إلى تقليل فائدة Ident عبر الشبكات، حيث يتم عادةً حظر أو ترجمة الاتصالات الواردة إلى مضيفي العميل. [ 6 ]

تاريخ

نُشرت خدمة Ident كمعيار مقترح في فبراير 1993، لتحل محل "خادم المصادقة" السابق. [ 3 ] [ 1 ] ولا يزال اسم الخدمة "auth/ident" مُخصصًا لمنفذ TCP رقم 113 في سجل IANA. [ 2 ]

انظر أيضاً

مراجع

  1. 1 2 3 4 5 6 RFC 1413. IETF . doi : 10.17487 /RFC1413 .
  2. 1 2 "سجل اسم الخدمة ورقم منفذ بروتوكول النقل" . هيئة الأرقام المخصصة للإنترنت (IANA) . تم الاطلاع عليه بتاريخ 15-09-2025 .
  3. 1 2 RFC 931. IETF . doi : 10.17487 /RFC0931 .
  4. RFC 3552. IETF . doi : 10.17487 /RFC3552 .
  5. "بروتوكول عميل IRCv3 (المواصفات الحديثة)" . modern.ircdocs.horse . تم الاطلاع عليه بتاريخ 15-09-2025 .
  6. RFC 3022. IETF . doi : 10.17487 /RFC3022 .

للمزيد من القراءة