Scroll to navigation

SENDMAIL(8) System Manager's Manual SENDMAIL(8)

الاسم

sendmail - وكيل نقل بريد إلكتروني

موجز

sendmail [flags] [address ...]
newaliases
mailq [-v]
hoststat
purgestat
smtpd

الوصف

Sendmail يرسل رسالة إلى واحد أو أكثر من المستلمين، موجهًا الرسالة عبر أي شبكات ضرورية. يقوم Sendmail بإعادة التوجيه بين الشبكات حسب الحاجة لتوصيل الرسالة إلى المكان الصحيح.

Sendmail ليس مخصصًا كروتين لواجهة المستخدم؛ برامج أخرى توفر واجهات أمامية سهلة الاستخدام؛ يُستخدم sendmail فقط لتوصيل رسائل منسقة مسبقًا.

بدون أعلام، يقرأ sendmail مدخله القياسي حتى نهاية الملف أو سطر يتكون فقط من نقطة واحدة ويرسل نسخة من الرسالة الموجودة هناك إلى جميع العناوين المدرجة. يحدد الشبكة (الشبكات) التي سيستخدمها بناءً على بناء الجملة ومحتويات العناوين.

يتم البحث عن العناوين المحلية في ملف وتلقينها بشكل مناسب. يمكن منع التلقين بوضع شرطة مائلة عكسية قبل العنوان. بدءًا من الإصدار 8.10، يتم تضمين المرسل في أي توسعات للاسم المستعار، على سبيل المثال، إذا أرسل `john` إلى `group`، وتضمن `group` `john` في التوسعة، فسيتم أيضًا توصيل الرسالة إلى `john`.

المعاملات

استخدم submit.cf حتى لو لم يشير وضع التشغيل إلى إرسال بريد أولي.
استخدم sendmail.cf حتى لو أشار وضع التشغيل إلى إرسال بريد أولي.
اضبط نوع النص إلى type. القيم القانونية الحالية هي 7BIT أو 8BITMIME.
الدخول في وضع ARPANET. يجب أن تنتهي جميع أسطر الإدخال بـ CRLF، وسيتم إنشاء جميع الرسائل بـ CRLF في النهاية. كما يتم فحص حقلي “From:” و “Sender:” لاسم المرسل.
فحص ملف الإعدادات.
التشغيل كخفي. سيقوم Sendmail بالانقسام والتشغيل في الخلفية للاستماع على المقبس 25 لاتصالات SMTP الواردة. يُشغل هذا عادة من /etc/rc.
مثل -bd باستثناء التشغيل في المقدمة.
طباعة قاعدة بيانات حالة المضيف الدائمة.
مسح الإدخالات منتهية الصلاحية من قاعدة بيانات حالة المضيف الدائمة.
تهيئة قاعدة بيانات الأسماء المستعارة.
تسليم البريد بالطريقة المعتادة (مبدئي).
طباعة قائمة الطوابير.
طباعة عدد الإدخالات في الطوابير؛ متاح فقط مع دعم الذاكرة المشتركة.
استخدم بروتوكول SMTP كما هو موصوف في RFC821 على الإدخال والإخراج القياسي. هذا العلم يستلزم جميع عمليات العلم -ba المتوافقة مع SMTP.
شغّل في وضع اختبار العناوين. هذا الوضع يقرأ العناوين ويعرض خطوات التحليل؛ يُستخدم لتصحيح جداول التهيئة.
تحقق من الأسماء فقط - لا تحاول جمع أو تسليم رسالة. وضع التحقق يُستخدم عادةً للتحقق من صحة المستخدمين أو القوائم البريدية.
استخدم ملف تهيئة بديل. Sendmail يتخلى عن أي صلاحيات محسّنة (تعيين-معرف-المستخدم أو تعيين-معرف-المجموعة) إذا تم تحديد ملف تهيئة بديل.
أرسل مخرجات التصحيح إلى ملف السجل المشار إليه بدلاً من stdout.
اضبط علم التصحيح لـ فئة إلى مستوى. فئة إما عدد صحيح أو اسم يحدد الموضوع، و مستوى عدد صحيح يحدد مستوى مخرجات التصحيح المطلوب. المستويات الأعلى تعني عادةً مخرجات أكثر. يمكن تحديد أكثر من علم بفصلها بفواصل. قائمة بفئات التصحيح الرقمية موجودة في ملف TRACEFLAGS في توزيعة مصدر sendmail.
الخيار -d0.1 يطبع إصدار sendmail والخيارات التي تم تجميعه بها.
معظم الفئات الأخرى مفيدة فقط مع، وموثقة في، كود مصدر sendmail.
اضبط الاسم الكامل للمرسل.
يضبط اسم الشخص "من" (أي مرسل الظرف للبريد). قد يُستخدم هذا العنوان أيضًا في رأس From: إذا كان هذا الرأس مفقودًا أثناء الإرسال الأولي. عنوان مرسل الظرف يُستخدم كمستلم لإشعارات حالة التسليم وقد يظهر أيضًا في رأس Return-Path:. -f يجب أن يُستخدم فقط من قبل مستخدمين "موثوقين" (عادةً root، daemon، و network) أو إذا كان الشخص الذي تحاول أن تصبحه هو نفس الشخص الذي أنت عليه. وإلا، سيتم إضافة رأس X-Authentication-Warning إلى الرسالة.
إرسال رسالة عبر المرحّل (البوابة)، مثلاً، عندما يستدعي rmail sendmail .
اضبط عدد القفزات إلى N. عدد القفزات يزداد في كل مرة تتم فيها معالجة البريد. عندما يصل إلى حد، يُعاد البريد مع رسالة خطأ، ضحية حلقة تسمية مستعارة. إذا لم يُحدد، يتم عد سطور "Received:" في الرسالة.
لا تقم بإزالة النقطة البادئة من الأسطر في الرسائل الواردة، ولا تعامل النقطة في سطر بمفردها على أنها نهاية الرسالة الواردة. يجب ضبط هذا إذا كنت تقرأ بيانات من ملف.
اضبط المعرف المستخدم في رسائل سجل النظام إلى الوسم المقدم.
اضبط شروط إعلام حالة التسليم إلى dsn، والتي يمكن أن تكون `never' لعدم وجود إعلامات أو قائمة مفصولة بفواصل من القيم `failure' للإعلام إذا فشل التسليم، و`delay' للإعلام إذا تأخر التسليم، و`success' للإعلام عند تسليم الرسالة بنجاح.
لا تقم بعملية التسمية البديلة.
اضبط الخيار الخيار إلى القيمة المحددة. يستخدم هذا النموذج أسماء طويلة. انظر أدناه لمزيد من التفاصيل.
اضبط الخيار x إلى القيمة المحددة. يستخدم هذا النموذج أسماء أحرف مفردة فقط. الأسماء القصيرة غير موصوفة في صفحة الدليل هذه؛ راجع دليل تثبيت وتشغيل Sendmail للحصول على التفاصيل.
اضبط اسم البروتوكول المستخدم لاستلام الرسالة. يمكن أن يكون اسم بروتوكول بسيط مثل “UUCP” أو بروتوكول واسم مضيف، مثل “UUCP:ucbvax”.
عالج الرسائل المحفوظة في الطابور على فترات زمنية محددة. إذا تم حذف الوقت، عالج الطابور مرة واحدة. يُعطى الوقت كرقم موسوم، حيث `s' تعني ثوانٍ، `m' تعني دقائق (مبدئي)، `h' تعني ساعات، `d' تعني أيام، و`w' تعني أسابيع. على سبيل المثال، `-q1h30m' أو `-q90m' كلاهما سيضبط المهلة على ساعة وثلاثين دقيقة. بشكل مبدئي، سيعمل sendmail في الخلفية. يمكن استخدام هذا الخيار بأمان مع -bd.
مشابه لـ -qالوقت، باستثناء أنه بدلاً من إنشاء عملية فرعية دورياً لمعالجة الطابور، يقوم sendmail بإنشاء عملية فرعية واحدة دائمة لكل طابور تتناوب بين معالجة الطابور والنوم. يُعطى وقت النوم كوسيطة؛ المبدئي هو ثانية واحدة. ستنام العملية دائمًا لمدة 5 ثوانٍ على الأقل إذا كان الطابور فارغًا في تشغيل الطابور السابق.
عالج الرسائل المحفوظة في الطابور مرة واحدة ولا تستخدم fork()، بل اعمل في المقدمة.
عالج المهام في مجموعة الطابور المسماة الاسم فقط.
تحديد المهام المعالجة بتلك التي تحتوي على substr كسلسلة فرعية من معرف الطابور أو لا عند تحديد !.
تحديد المهام المعالجة بالمهام المحجوزة التي تحتوي على substr كسلسلة فرعية من سبب الحجز أو لا عند تحديد !.
تحديد المهام المعالجة بتلك التي تحتوي على substr كسلسلة فرعية من أحد المستلمين أو لا عند تحديد !.
تحديد المهام المعالجة بتلك التي تحتوي على substr كسلسلة فرعية من المرسل أو لا عند تحديد !.
حجز عناصر الطابور العادية بالسبب المعطى أو إلغاء حجز عناصر الطابور المحجوزة إذا لم يُعطَ سبب. يجب استخدام هذا فقط مع نوع من مطابقة العناصر كما هو موصوف أعلاه.
تعيين مقدار الرسالة المراد إرجاعها إذا ارتدت الرسالة. يمكن أن تكون معلمة return `full' لإرجاع الرسالة بأكملها أو `hdrs' لإرجاع الرؤوس فقط. في الحالة الأخيرة، تُرجع الارتدادات المحلية الرؤوس فقط أيضًا.
صيغة بديلة ومهملة للعلامة -f.
قراءة الرسالة للمستلمين. سيتم فحص سطور To: و Cc: و Bcc: لعناوين المستلمين. سيتم حذف سطر Bcc: قبل الإرسال.
إذا تطلب إرسال بريد عبر سطر الأوامر استخدام وسيطة SMTPUTF8 لأمر MAIL، على سبيل المثال، لأن رأسًا يستخدم ترميز UTF-8، ولكن العناوين في سطر الأوامر كلها ASCII، فيجب استخدام هذا الخيار. متاح فقط إذا كان دعم EAI مفعّلاً، وتم تعيين خيار SMTPUTF8.
تعيين معرف الظرف الأصلي. يتم نشر هذا عبر SMTP إلى الخوادم التي تدعم DSN ويُعاد في رسائل الخطأ المتوافقة مع DSN.
الدخول في وضع الإسهاب. سيتم الإعلان عن توسعات الأسماء المستعارة، إلخ.
سجل كل حركة المرور داخل وخارج وكلاء البريد في ملف السجل المشار إليه. يجب استخدام هذا فقط كملاذ أخير لتصحيح أخطاء وكلاء البريد. سيسجل كمية كبيرة من البيانات بسرعة كبيرة.
--
أوقف معالجة أعلام الأوامر واستخدم بقية الوسائط كعناوين.

الخيارات

هناك أيضًا عدد من خيارات المعالجة التي يمكن ضبطها. عادةً ما تُستخدم هذه فقط من قبل مسؤول النظام. يمكن ضبط الخيارات إما في سطر الأوامر باستخدام العلم -o (للأسماء القصيرة)، أو العلم -O (للأسماء الطويلة)، أو في ملف الإعدادات. هذه قائمة جزئية مقتصرة على الخيارات التي يُحتمل أن تكون مفيدة في سطر الأوامر وتظهر الأسماء الطويلة فقط؛ للحصول على قائمة كاملة (وتفاصيل)، راجع دليل تثبيت وتشغيل Sendmail. الخيارات هي:

استخدم ملف الأسماء المستعارة البديل.
بالنسبة لوكلاء البريد التي تُعتبر “باهظة الثمن” للاتصال بها، لا تبدأ اتصالًا فوريًا. هذا يتطلب الطابور.
قم بتسجيل نقطة تفتيش لملف الطابور بعد كل N عملية تسليم ناجحة (المبدئي 10). هذا يتجنب عمليات التسليم المكررة المفرطة عند الإرسال إلى قوائم بريدية طويلة متقطعة بسبب أعطال النظام.
اضبط وضع التسليم إلى x. أوضاع التسليم هي `i' للتسليم التفاعلي (المتزامن)، `b' للتسليم في الخلفية (غير المتزامن)، `q' للطابور فقط - أي أن التسليم الفعلي يُجرى في المرة التالية التي يُشغل فيها الطابور، و`d' للمؤجل - نفس `q' باستثناء تجنب عمليات البحث في قاعدة البيانات للخرائط التي ضبطت الخيار -D (المبدئي لخريطة المضيف).
اضبط معالجة الأخطاء إلى الوضع x. الأوضاع الصالحة هي `m' لإعادة إرسال رسالة الخطأ بالبريد، `w' “لكتابة” رسالة الخطأ (أو إعادة إرسالها بالبريد إذا لم يكن المرسل مسجل الدخول)، `p' لطباعة الأخطاء على الطرفية (المبدئي)، `q' لتجاهل رسائل الخطأ (يُعاد فقط حالة الخروج)، و`e' لإجراء معالجة خاصة لـ BerkNet. إذا لم يُعد نص الرسالة بالبريد بواسطة الوضعين `m' أو `w' وإذا كان المرسل محليًا لهذا الجهاز، تُلحق نسخة من الرسالة بالملف dead.letter في الدليل الرئيسي للمرسل.
احفظ أسطر From بنمط UNIX في مقدمة الرسائل.
الحد الأقصى لعدد المرات التي يُسمح للرسالة فيها بـ “القفز” قبل أن نقرر أنها في حلقة.
لا تعتبر النقاط في سطر بمفردها كمنهي للرسالة.
إرسال رسائل الخطأ بتنسيق MIME. إذا لم يتم تعيينه، يتم تعطيل امتداد SMTP الخاص بإشعار حالة التسليم (DSN).
تعيين مهلة خبيئة الاتصال.
تعيين حجم خبيئة الاتصال.
مستوى السجل.
لا ترسل إلى "نفسي" (المرسل) إذا كنت ضمن توسيع اسم مستعار.
التحقق من صحة الجانب الأيمن من الأسماء المستعارة أثناء أمر newaliases(1).
إذا تم تعيينه، فقد تحتوي هذه الرسالة على ترويسات نمط قديم. إذا لم يتم تعيينه، تكون هذه الرسالة مضمونة بأن تحتوي على ترويسات نمط جديد (أي فواصل بدلاً من مسافات بين العناوين). إذا تم تعيينه، يُستخدم خوارزمية تكيفية تحدد تنسيق الترويسة بشكل صحيح في معظم الحالات.
تحديد الدليل الذي سيتم فيه طابور الرسائل.
حفظ الإحصائيات في الملف المسمى.
تعيين مهلة الرسائل غير المسلمة في الطابور إلى الوقت المحدد. بعد فشل التسليم (مثلًا بسبب تعطل مضيف) لهذه المدة الزمنية، سيتم إرجاع الرسائل الفاشلة إلى المرسل. المدة المبدئية هي خمسة أيام.
إذا تم ضبطه، يتم الاستعلام عن قاعدة بيانات المستخدم للحصول على معلومات إعادة التوجيه. يمكنك اعتبار هذا ملحقًا لآلية الأسماء المستعارة، باستثناء أن قاعدة البيانات مخصصة للتوزيع؛ الأسماء المستعارة محلية لمضيف معين. قد لا يكون هذا متاحًا إذا لم يكن برنامج sendmail الخاص بك يحتوي على خيار USERDB مُدرجًا في الترجمة.
تفرع كل مهمة أثناء تشغيل قائمة الانتظار. قد يكون مناسبًا على الأجهزة ذات الذاكرة المحدودة.
تجريد الرسائل الواردة إلى سبع بتات.
ضبط معالجة الإدخال ذي الثماني بتات إلى وجهات ذات سبع بتات على mode: m (mimefy) يحول إلى تنسيق MIME ذي سبع بتات، p (pass) يمرره كثماني بتات (لكنه ينتهك البروتوكولات)، و s (strict) يرجع الرسالة.
ضبط المدة التي يجب أن تبقى فيها مهمة في قائمة الانتظار بين محاولات إرسالها.
ضبط مجموعة الأحرف المبدئية المستخدمة لتسمية البيانات ذات الثماني بتات غير الموسومة بخلاف ذلك.
ضبط السلوك عندما لا توجد ترويسات مستلمين (To: أو Cc: أو Bcc:) في الرسالة على action: none يترك الرسالة دون تغيير، add-to يضيف ترويسة To: مع مستلمي المغلف، add-apparently-to يضيف ترويسة Apparently-To: مع مستلمي المغلف، add-bcc يضيف ترويسة Bcc: فارغة، و add-to-undisclosed يضيف ترويسة تقرأ `To: undisclosed-recipients:;'.
ضبط الحد الأقصى لعدد العمليات الفرعية التي يُسمح لخفيض SMTP الوارد بتوليدها في أي وقت على N.
ضبط الحد الأقصى لعدد الاتصالات في الثانية إلى منفذ SMTP على N.

في الأسماء المستعارة، قد يكون الحرف الأول من الاسم شريطًا عموديًا لتسبب تفسير باقي الاسم كأمر لتوجيه البريد إليه. قد يكون من الضروري وضع الاسم بين علامتي اقتباس لمنع sendmail من حذف الفراغات بين الوسائط. على سبيل المثال، اسم مستعار شائع هو:

msgs: "|/usr/bin/msgs -s"

قد تحتوي الأسماء المستعارة أيضًا على الصيغة “:include:filename” لطلب sendmail بقراءة الملف المسمى للحصول على قائمة بالمستلمين. على سبيل المثال، اسم مستعار مثل:

poets: ":include:/usr/local/lib/poets.list"

سيقرأ /usr/local/lib/poets.list لقائمة العناوين المكونة للمجموعة.

يُرجع Sendmail حالة خروج تصف ما فعله. تُعرّف الرموز في <sysexits.h>:

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

إذا استُدعي كـ newaliases، فسيُعيد sendmail بناء قاعدة بيانات الأسماء المستعارة. إذا استُدعي كـ mailq، فسيطبع sendmail محتويات طابور البريد. إذا استُدعي كـ hoststat، فسيطبع sendmail قاعدة بيانات حالة المضيف الدائمة. إذا استُدعي كـ purgestat، فسيُزيل sendmail الإدخالات منتهية الصلاحية من قاعدة بيانات حالة المضيف الدائمة. إذا استُدعي كـ smtpd، فسيعمل sendmail كخادم خفي، كما لو أن الخيار -bd قد حُدد.

ملاحظات

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

الملفات

باستثناء الملف /etc/mail/sendmail.cf نفسه، فإن أسماء المسارات التالية محددة جميعًا في /etc/mail/sendmail.cf. وبالتالي، هذه القيم هي تقريبات فقط.


/etc/mail/aliases
البيانات الأولية لأسماء الأسماء المستعارة

/etc/mail/aliases.db
قاعدة بيانات أسماء الأسماء المستعارة

/etc/mail/sendmail.cf
ملف الضبط

/etc/mail/helpfile
ملف المساعدة

/var/lib/sendmail/sendmail.st
الإحصائيات المجمعة

/var/spool/mqueue/*
الملفات المؤقتة

انظر أيضًا

binmail(1), mail(1), rmail(1), syslog(3), aliases(5), mailaddr(7), rc(8)

طلب تعليقات الإنترنت DARPA RFC819, RFC821, RFC822. دليل تثبيت وتشغيل Sendmail، رقم 8، SMM.

http://www.sendmail.org/

أرقام براءات الاختراع الأمريكية 6865671, 6986037.

التاريخ

ظهر أمر sendmail في 4.2BSD.

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

$Date: 2013-11-22 20:51:56 $