Scroll to navigation

ftpd(8) System Manager's Manual (smm) ftpd(8)

الاسم

ftpdخادم بروتوكول نقل الملفات عبر الإنترنت

موجز

ftpd [option ...]

الوصف

ftpd هو عملية خادم بروتوكول نقل الملفات عبر الإنترنت. يستخدم الخادم بروتوكول TCP ويستمع إلى المنفذ المحدد في مواصفات الخدمة “ftp” ؛ انظر services(5).

الخيارات

, --ipv4
تقييد البرنامج الخفي للاستماع إلى عناوين IPv4 فقط.
, --ipv6
تقييد البرنامج الخفي للاستماع إلى عناوين IPv6 فقط.
, --debug
تُكتب معلومات التصحيح إلى سجل النظام باستخدام LOG_FTP.
, --تسجيل
تُسجل كل جلسة ftp(1) ناجحة وفاشلة باستخدام سجل النظام مع تسهيل LOG_FTP. إذا حُدد هذا الخيار مرتين، تُسجل أيضًا عمليات الاسترجاع (get)، والتخزين (put)، والإلحاق، والحذف، وإنشاء الدليل، وإزالة الدليل، وإعادة التسمية ووسائط أسماء ملفاتها.
, --anonymous-only
يُسمح فقط بتسجيل الدخول المجهول.
, --daemon
يدخل ftpd وضع البرنامج الخفي. يسمح ذلك بتشغيل ftpd بدون inetd.
, --no-version
الوضع الصامت. لا تُعطى معلومات حول إصدار ftpd للعميل.
, --max-timeout timeout
قد يطلب العميل أيضًا فترة مهلة مختلفة؛ يمكن ضبط الحد الأقصى المسموح به إلى timeout ثانية باستخدام الخيار -T. الحد المبدئي هو ساعتان.
, --timeout timeout
تُضبط فترة مهلة عدم النشاط إلى timeout ثانية (المبدئي هو 15 دقيقة).
, --pidfile pidfile
تغيير الموقع المبدئي لملف pidfile.
, --auth auth
أعطِ المستخدم المجهول اسم تسجيل دخول آخر login-name (سيظل المستخدم المجهول و ftpd يعملان). يمكن أن يكون واحدًا من
default
استخدم الاستيثاق بكلمة المرور.
pam
استخدم خدمة PAM 'ftp'.
تجاهل RFC 2577 بإعطاء معلومات عن المستخدمين المفقودين.
, --umask value
اضبط القناع المبدئي على value.
-?, --help
اعرض قائمة المساعدة.
اعرض رسالة استخدام قصيرة.
, --version
اعرض إصدار البرنامج.

العملية

يمكن استخدام الملف /etc/nologin لتعطيل الوصول إلى ftp. إذا كان الملف موجودًا، يعرضه ftpd ويخرج. إذا كان الملف /etc/ftpwelcome موجودًا، يطبعه ftpd قبل إصدار رسالة “ready”. إذا كان الملف /etc/motd موجودًا، يطبعه ftpd بعد تسجيل الدخول الناجح.

يدعم خادم ftp حاليًا طلبات ftp التالية. يتم تجاهل حالة الأحرف للطلبات.

الطلب الوصف
ABOR إحباط الأمر السابق
ACCT تحديد الحساب (مُتجاهَل)
ALLO تخصيص تخزين (بشكل فارغ)
APPE إلحاق بملف
CDUP التغيير إلى الدليل الأب لدليل العمل الحالي
CWD تغيير دليل العمل
DELE حذف ملف
EPRT منفذ اتصال بيانات موسع، RFC 2428
EPSV طلب نقل سلبي موسع، RFC 2428
FEAT عرض امتدادات الأوامر
HELP تقديم معلومات المساعدة
LIST عرض قائمة الملفات في دليل (“ls -lgA”)
LPRT منفذ اتصال بيانات طويل، RFC 1639
LPSV طلب نقل سلبي طويل، RFC 1639
MKD إنشاء دليل
MDTM إظهار وقت آخر تعديل للملف
MODE تحديد وضع نقل البيانات
NLST إعطاء قائمة بأسماء الملفات في الدليل
NOOP لا تفعل شيئًا
OPTS إعدادات الخيارات
PASS تحديد كلمة المرور
PASV التحضير لنقل من خادم إلى خادم
PORT تحديد منفذ اتصال البيانات
PWD طباعة دليل العمل الحالي
QUIT إنهاء الجلسة
REST إعادة تشغيل النقل غير المكتمل
RETR استرداد ملف
RMD إزالة دليل
RNFR تحديد اسم الملف المراد إعادة تسميته منه
RNTO تحديد اسم ملف إعادة التسمية
SITE أوامر غير قياسية (انظر القسم التالي)
SIZE إرجاع حجم الملف
STAT إرجاع حالة الخادم
STOR تخزين ملف
STOU تخزين ملف باسم فريد
STRU تحديد بنية نقل البيانات
SYST عرض نوع نظام تشغيل الخادم
TYPE تحديد نوع نقل البيانات
USER تحديد اسم المستخدم
XCUP الانتقال إلى الدليل الأب لدليل العمل الحالي (مهمل)
XCWD تغيير دليل العمل (مهمل)
XMKD إنشاء دليل (مهمل)
XPWD طباعة دليل العمل الحالي (مهمل)
XRMD إزالة دليل (مهمل)

الأوامر التالية غير القياسية أو الخاصة بـ UNIX مدعومة بواسطة طلب SITE.

الطلب الوصف
UMASK تغيير umask، مثال: SITE UMASK 002
IDLE ضبط مؤقت الخمول، مثال: SITE IDLE 60
CHMOD تغيير وضع ملف، مثال: SITE CHMOD 755 filename
HELP لعرض معلومات المساعدة.

يتم التعرف على طلبات ftp المتبقية المحددة في RFC 959 للإنترنت، ولكنها غير منفذة. لم يتم تحديد MDTM و SIZE في RFC 959، ولكنها ستظهر في تحديث RFC القادم لـ FTP.

سيقوم خادم ftp بإحباط نقل ملف نشط فقط عندما يسبق أمر ABOR إشارة Telnet "مقاطعة العملية" (IP) وإشارة Telnet "مزامنة" في تيار أوامر Telnet، كما هو موصوف في RFC 959 للإنترنت. إذا تم استلام أمر STAT أثناء نقل البيانات، مسبوقًا بإشارة Telnet IP ومزامنة، فسيتم إرجاع حالة النقل.

يفسر ftpd أسماء الملفات وفقًا لاتفاقيات “التوسيع الشامل” المستخدمة بواسطة csh(1). يسمح هذا للمستخدمين باستخدام الرموز الوصفية “*?[]{}~”.

يستوثق ftpd من المستخدمين وفقًا لثلاث قواعد.

  1. يجب أن يكون اسم تسجيل الدخول في قاعدة بيانات كلمات المرور، /etc/passwd ، وألا يكون له كلمة مرور فارغة. في هذه الحالة، يجب على العميل توفير كلمة مرور قبل أن يتم تنفيذ أي عمليات ملف.
  2. يجب ألا يظهر اسم تسجيل الدخول في الملف /etc/ftpusers.
  3. يجب أن يكون لدى المستخدم شل قياسي يتم إرجاعه بواسطة getusershell(3).
  4. إذا كان اسم المستخدم هو “anonymous” أو “ftp” ، فيجب أن يكون حساب ftp مجهول موجودًا في ملف كلمة المرور (المستخدم “ftp”). في هذه الحالة، يُسمح للمستخدم بتسجيل الدخول عن طريق تحديد أي كلمة مرور (حسب الاتفاقية، يجب استخدام عنوان بريد إلكتروني للمستخدم ككلمة مرور).

في الحالة الأخيرة، يتخذ ftpd إجراءات خاصة لتقييد صلاحيات وصول العميل. يقوم الخادم بإجراء chroot(2) إلى الدليل الرئيسي للمستخدم “ftp”. لضمان عدم اختراق أمان النظام، يُوصى ببناء الشجرة الفرعية “ftp” بعناية، باتباع هذه القواعد:

~ftp
اجعل الدليل الرئيسي مملوكًا لـ “root” وغير قابل للكتابة من قبل أي شخص.
~ftp/bin
اجعل هذا الدليل مملوكًا لـ “root” وغير قابل للكتابة من قبل أي شخص (الوضع 555). يجب أن يكون البرنامج ls(1) موجودًا لدعم أمر القائمة. يجب أن يكون هذا البرنامج بالوضع 111.
~ftp/etc
اجعل هذا الدليل مملوكًا لـ “root” وغير قابل للكتابة من قبل أي شخص (الوضع 555). يجب أن تكون الملفات passwd(5) و group(5) موجودة لكي يتمكن أمر ls من إنتاج أسماء المالكين بدلاً من الأرقام. لا يُستخدم حقل كلمة المرور في passwd ، ويجب ألا يحتوي على كلمات مرور حقيقية. الملف motd ، إذا كان موجودًا، سيتم طباعته بعد تسجيل دخول ناجح. يجب أن تكون هذه الملفات بالوضع 444.
~ftp/pub
اجعل هذا الدليل بالوضع 777 ومملوكًا لـ “ftp”. يمكن للضيوف بعد ذلك وضع الملفات التي يجب أن تكون قابلة للوصول عبر الحساب المجهول في هذا الدليل.

الملفات

/etc/ftpusers
قائمة المستخدمين غير المرحب بهم/المقيدين.
/etc/ftpchroot
قائمة المستخدمين لتغيير الجذر إلى دليلهم الرئيسي.
/etc/ftpwelcome
إشعار الترحيب.
/etc/motd
إشعار الترحيب بعد تسجيل الدخول.
/etc/nologin
يتم عرضه ورفض الوصول.

انظر أيضًا

ftp(1), getusershell(3), syslogd(8)

العلل

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

التاريخ

ظهر الأمر ftpd في 4.2BSD.

ترجمة

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

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

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

9 فبراير 2019 أدوات شبكة جنو