.\" -*- coding: UTF-8 -*- .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland .\" All rights reserved .\" .\" As far as I am concerned, the code I have written for this software .\" can be used freely for any purpose. Any derived versions of this .\" software must be clearly marked as such, and if the derived work is .\" incompatible with the protocol description in the RFC file, it must be .\" called by a name other than "ssh" or "Secure Shell". .\" .\" Copyright (c) 1999,2000 Markus Friedl. All rights reserved. .\" Copyright (c) 1999 Aaron Campbell. All rights reserved. .\" Copyright (c) 1999 Theo de Raadt. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: sshd_config.5,v 1.397 2026/03/28 05:07:12 djm Exp $ .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .Dd $Mdocdate: 28 مارس 2026 $ .Dt SSHD_CONFIG 5 .Os .Sh الاسم .Nm sshd_config .Nd ملف إعدادات عفريت OpenSSH .Sh الوصف يقرأ .Xr sshd 8 ملف الإعداد من .Pa /etc/ssh/sshd_config (أو الملف المحدد بواسطة الفتحة .Fl f في سطر الأوامر). يحتوي الملف على أزواج من (الكلمة المفتاحية والوسيط)، بمعدل زوج واحد لكل سطر. ما لم يُذكر خلاف ذلك، تُستخدم أول قيمة تُحصل عليها لكل كلمة مفتاحية. تُفسر السطور التي تبدأ بـ .Ql # والسطور الفارغة على أنها تعليقات. يمكن اختياريًا إحاطة الوسائط بعلامتي اقتباس مزدوجتين .Pq \&" لتمثيل الوسائط التي تحتوي على مسافات. .Pp الكلمات المفتاحية الممكنة ومعانيها هي كما يلي (لاحظ أن الكلمات المفتاحية غير حساسة لحالة الأحرف والوسائط حساسة لها): .Bl -tag -width Ds .It Cm AcceptEnv تُحدد متغيرات البيئة المرسلة من العميل التي تُنسخ إلى بيئة الجلسة .Xr environ 7 . راجع .Cm SendEnv و .Cm SetEnv في .Xr ssh_config 5 لمعرفة كيفية إعداد العميل. يُقبل متغير البيئة .Ev TERM دائمًا عندما يُطلب طرفية وهمية (pseudo-terminal) من العميل لأنه مطلوب بواسطة البروتوكول. تُحدد المتغيرات بالاسم، وقد تحتوي على محارف برية (wildcard) مثل .Ql * و .Ql \&? . يمكن الفصل بين متغيرات البيئة المتعددة بمسافات بيضاء أو توزيعها عبر عدة توجيهات .Cm AcceptEnv . يُرجى الحذر من أن بعض متغيرات البيئة قد تُستخدم لتجاوز بيئات المستخدمين المقيدة. لهذا السبب، يجب توخي الحذر عند استخدام هذا التوجيه. الافتراضي هو عدم قبول أي متغيرات بيئية. .It Cm AddressFamily يحدد عائلة العناوين (address family) التي يجب استخدامها بواسطة .Xr sshd 8 . الوسائط الصالحة هي .Cm any (المبدئي)، أو .Cm inet (استخدام IPv4 فقط)، أو .Cm inet6 (استخدام IPv6 only). .It Cm AllowAgentForwarding يحدد ما إذا كان توجيه .Xr ssh-agent 1 مسموحًا به. المبدئي هو .Cm yes . لاحظ أن تعطيل توجيه العميل لا يحسن الأمان إلا إذا مُع المستخدمون أيضًا من الوصول إلى الغلاف الأصلي (shell)، حيث يمكنهم دائمًا تثبيت موجهين خاصين بهم. .It Cm AllowGroups يمكن أن تُتبع هذه الكلمة المفتاحية بقائمة من أنماط أسماء المجموعات، مفصولة بمسافات. إذا حُددت، فسيُسمح بالولوج فقط للمستخدمين الذين تطابق مجموعتهم الأساسية أو قائمة مجموعاتهم الإضافية أحد الأنماط. أسماء المجموعات فقط هي الصالحة؛ لا يُتعرف على معرف المجموعة الرقمي (GID). بشكل مبدئي، يُسمح بالولوج لجميع المجموعات. لا يُرجع إلى .Cm AllowGroups للمجموعات التي تطابق .Cm DenyGroups . .Pp انظر قسم PATTERNS في .Xr ssh_config 5 لمزيد من المعلومات حول الأنماط. قد تظهر هذه الكلمة المفتاحية عدة مرات في .Nm sshd_config حيث تقوم كل نسخة بالإلحاق بالقائمة. .It Cm AllowStreamLocalForwarding يحدد ما إذا كان توجيه StreamLocal (مقبس نطاق يونكس Unix-domain socket) مسموحًا به. الخيارات المتاحة هي .Cm yes (المبدئي) أو .Cm all للسماح بتوجيه StreamLocal، و .Cm no لمنع كل توجيه StreamLocal، و .Cm local للسماح بالتوجيه المحلي فقط (من منظور .Xr ssh 1 ) ، أو .Cm remote للسماح بالتوجيه عن بُعد فقط. لاحظ أن تعطيل توجيه StreamLocal لا يحسن الأمان إلا إذا مُع المستخدمون أيضًا من الوصول إلى الغلاف (shell)، حيث يمكنهم دائمًا تثبيت موجهين خاصين بهم. .It Cm AllowTcpForwarding يحدد ما إذا كان توجيه TCP مسموحًا به. الخيارات المتاحة هي .Cm yes (المبدئي) أو .Cm all للسماح بتوجيه TCP، و .Cm no لمنع كل توجيه TCP، و .Cm local للسماح بالتوجيه المحلي فقط (من منظور .Xr ssh 1 ) ، أو .Cm remote للسماح بالتوجيه عن بُعد فقط. لاحظ أن تعطيل توجيه TCP لا يحسن الأمان إلا إذا مُع المستخدمون أيضًا من الوصول إلى الغلاف (shell)، حيث يمكنهم دائمًا تثبيت موجهين خاصين بهم. .It Cm AllowUsers يمكن أن تُتبع هذه الكلمة المفتاحية بقائمة من أنماط أسماء المستخدمين، مفصولة بمسافات. إذا حُددت، فسيُسمح بالولوج فقط لأسماء المستخدمين التي تطابق أحد الأنماط. أسماء المستخدمين فقط هي الصالحة؛ لا يُتعرف على معرف المستخدم الرقمي (UID). بشكل مبدئي، يُسمح بالولوج لجميع المستخدمين. إذا كان النمط يأخذ الشكل USER@HOST فسيتم فحص USER و HOST بشكل منفصل، مما يقيد ولوج لمستخدمين معينين من مضيفين معينين. وقد تحتوي معايير HOST بالإضافة إلى ذلك على عناوين للمطابقة بتنسيق CIDR (العنوان/طول القناع). لا يُرجع إلى .Cm AllowUsers للمستخدمين الذين يطابقون .Cm DenyUsers . .Pp انظر قسم PATTERNS في .Xr ssh_config 5 لمزيد من المعلومات حول الأنماط. قد تظهر هذه الكلمة المفتاحية عدة مرات في .Nm sshd_config حيث تقوم كل نسخة بالإلحاق بالقائمة. .It Cm AuthenticationMethods تُحدد طرق المصادقة التي يجب إكمالها بنجاح لمنح المستخدم حق الوصول. يجب أن يُتبع هذا الخيار بقائمة واحدة أو أكثر من أسماء طرق المصادقة المفصولة بفاصلة، أو بالسلسلة النصية المفردة .Cm any للإشارة إلى السلوك المبدئي المتمثل في قبول أي طريقة مصادقة مفردة. إذا تجاوز المبدئي تتطلب المصادقة الناجحة إكمال كل طريقة في قائمة واحدة على الأقل من هذه القوائم. .Pp على سبيل المثال، تتطلب القيمة .Qq publickey,password publickey,keyboard-interactive من المستخدم إكمال مصادقة المفتاح العام، متبوعة إما بمصادقة كلمة السر أو المصادقة التفاعلية للوحة المفاتيح (keyboard-interactive). تُقدم الطرق التالية في قائمة واحدة أو أكثر فقط في كل مرحلة، لذلك في هذا المثال لن يكون من الممكن محاولة مصادقة كلمة السر أو المصادقة التفاعلية قبل المفتاح العام. .Pp بالنسبة للمصادقة التفاعلية للوحة المفاتيح، يمكن أيضًا تقييد المصادقة لجهاز معين عن طريق إلحاق نقطتين متبوعتين بمعرف الجهاز .Cm bsdauth أو .Cm pam ، اعتمادًا على إعدادات الخادم. على سبيل المثال، يقوم .Qq keyboard-interactive:bsdauth بتقييد المصادقة التفاعلية للوحة المفاتيح بجهاز .Cm bsdauth فقط. .Pp إذا أُدرجت طريقة المفتاح العام (publickey) أكثر من مرة، يتحقق .Xr sshd 8 من أن المفاتيح التي استُخدمت بنجاح لا يُعاد استخدامها في عمليات المصادقة اللاحقة. على سبيل المثال، يتطلب .Qq publickey,publickey مصادقة ناجحة باستخدام مفتاحين عامين مختلفين. .Pp لاحظ أن كل طريقة مصادقة مدرجة يجب أن تكون مُمكّنة بشكل صريح أيضًا في الإعدادات. .Pp طرق المصادقة المتاحة هي: .Qq gssapi-with-mic و .Qq hostbased و .Qq keyboard-interactive و .Qq none (تُستخدم للوصول إلى الحسابات الخالية من كلمات السر عند تمكين .Cm PermitEmptyPasswords ) و .Qq password و .Qq publickey . .It Cm AuthorizedKeysCommand يحدد برنامجًا يُستخدم للبحث عن المفاتيح العامة للمستخدم. يجب أن يكون البرنامج مملوكًا للمستخدم الجذر (root)، وغير قابل للكتابة من قِبل المجموعة أو الآخرين، ومحددًا بمسار مطلق. تقبل وسائط .Cm AuthorizedKeysCommand الرموز (tokens) الموصوفة في قسم .Sx TOKENS . إذا لم تُحدد أي وسائط، فسيُستخدم اسم المستخدم الخاص بالمستخدم المستهدف. .Pp يجب أن يُنتج البرنامج على المخرجات القياسية (standard output) صفرًا أو أكثر من السطور الخاصة بمخرجات authorized_keys (انظر .Cm AUTHORIZED_KEYS في .Xr sshd 8 ) . يُجرب .Cm AuthorizedKeysCommand بعد ملفات .Cm AuthorizedKeysFile المعتادة ولن يُنفذ إذا وُجد مفتاح مطابق هناك. بشكل مبدئي، لا يُشغل أي .Cm AuthorizedKeysCommand . يُنفذ هذا الأمر فقط للمستخدمين الصالحين. .It Cm AuthorizedKeysCommandUser يحدد المستخدم الذي يُشغل أمر .Cm AuthorizedKeysCommand تحت حسابه. يُوصى باستخدام مستخدم مخصص ليس له أي دور آخر على المضيف سوى تشغيل أوامر المفاتيح المصرح بها. إذا حُدد .Cm AuthorizedKeysCommand ولم يُحدد .Cm AuthorizedKeysCommandUser ، فإن .Xr sshd 8 سيرفض البدء. .It Cm AuthorizedKeysFile يحدد الملف الذي يحتوي على المفاتيح العامة المستخدمة لمصادقة المستخدم. التنسيق موصوف في قسم AUTHORIZED_KEYS FILE FORMAT في .Xr sshd 8 . قد تتضمن وسائط .Cm AuthorizedKeysFile محارف برية (wildcards) وتقبل الرموز الموصوفة في قسم .Sx TOKENS . بعد التوسيع، يُعتبر .Cm AuthorizedKeysFile مسارًا مطلقًا أو مسارًا نسبيًا لدليل المنزل الخاص بالمستخدم. يمكن إدراج ملفات متعددة، مفصولة بمسافات بيضاء. بدلاً من ذلك، يمكن تعيين هذا الخيار إلى .Cm none لتخطي التحقق من مفاتيح المستخدم في الملفات. المبدئي هو .Qq .ssh/authorized_keys .ssh/authorized_keys2 . تُفحص هذه الملفات فقط للمستخدمين الصالحين. .It Cm AuthorizedPrincipalsCommand يحدد برنامجًا يُستخدم لإنشاء قائمة بالمفوضين (principals) المسموح لهم بالشهادات وفقًا لـ .Cm AuthorizedPrincipalsFile . يجب أن يكون البرنامج مملوكًا للجذر (root)، وغير قابل للكتابة من قِبل المجموعة أو الآخرين، ومحددًا بمسار مطلق. تُقبل وسائط .Cm AuthorizedPrincipalsCommand الرموز الموصوفة في قسم .Sx TOKENS . إذا لم تُحدد أي وسائط، فسيُستخدم اسم المستخدم للمستخدم المستهدف. .Pp يجب أن يُنتج البرنامج على المخرجات القياسية صفرًا أو أكثر من السطور لمخرجات .Cm AuthorizedPrincipalsFile . إذا حُدد أي من .Cm AuthorizedPrincipalsCommand أو .Cm AuthorizedPrincipalsFile ، فيجب أن تحتوي الشهادات التي يقدمها العميل للمصادقة على مفوض مدرج في القائمة. بشكل مبدئي، لا يُشغل أي .Cm AuthorizedPrincipalsCommand . يُنفذ هذا الأمر فقط للمستخدمين الصالحين. .It Cm AuthorizedPrincipalsCommandUser يحدد المستخدم الذي يُشغل أمر .Cm AuthorizedPrincipalsCommand تحت حسابه. يُوصى باستخدام مستخدم مخصص ليس له دور آخر على المضيف سوى تشغيل أوامر المفوضين المصرح بها. إذا حُدد .Cm AuthorizedPrincipalsCommand ولم يُحدد .Cm AuthorizedPrincipalsCommandUser ، فإن .Xr sshd 8 سيرفض البدء. .It Cm AuthorizedPrincipalsFile يحدد ملفًا يسرد أسماء المفوضين (principal names) المقبولة لمصادقة الشهادات. عند استخدام شهادات موقعة بواسطة مفتاح مدرج في .Cm TrustedUserCAKeys ، فإن هذا الملف يسرد الأسماء التي يجب أن يظهر أحدها في الشهادة ليُقبل للمصادقة. تُسرد الأسماء بمعدل اسم واحد لكل سطر مسبوقًا بخيارات المفتاح (كما هو موصوف في .Cm AUTHORIZED_KEYS FILE FORMAT في .Xr sshd 8 ) . تُتجاهل السطور الفارغة والتعليقات التي تبدأ بـ .Ql # . .Pp قد تتضمن وسائط .Cm AuthorizedPrincipalsFile محارف برية وتقبل الرموز الموصوفة في قسم .Sx TOKENS . بعد التوسيع، يُعتبر .Cm AuthorizedPrincipalsFile مسارًا مطلقًا أو مسارًا نسبيًا لدليل منزل المستخدم. المبدئي هو .Cm none ، أي عدم استخدام ملف مفوضين؛ وفي هذه الحالة، يجب أن يظهر اسم المستخدم الخاص بالمستخدم في قائمة مفوضي الشهادة ليُقبل. يُفحص هذا الملف فقط للمستخدمين الصالحين. .Pp لاحظ أن .Cm AuthorizedPrincipalsFile يُستخدم فقط عندما تتم المصادقة باستخدام مرجع مصدق (CA) مدرج في .Cm TrustedUserCAKeys ، ولا يُرجع إليه للمراجع المصدقة الموثوقة عبر .Pa ~/.ssh/authorized_keys ، على الرغم من أن خيار المفتاح .Cm principals= يقدم ميزة مماثلة (راجع .Xr sshd 8 للتفاصيل). .It Cm Banner تُرسل محتويات الملف المحدد إلى المستخدم البعيد قبل السماح بالمصادقة. إذا كان الوسيط هو .Cm none فلن يُعرض أي لافتة (banner). مبدئيًا، لا يُعرض أي لافتة. .It Cm CASignatureAlgorithms يحدد الخوارزميات المسموح بها لتوقيع الشهادات من قبل سلطات التصديق (CAs). المبدئي هو: .Bd -literal -offset indent ssh-ed25519,ecdsa-sha2-nistp256, ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 .Ed .Pp إذا بدأت القائمة المحددة بمحرف .Sq + ، فسَيُلحَق الخوارزميات المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة المحددة بمحرف .Sq - ، فسَتُزَال الخوارزميات المحددة (بما في ذلك الرموز العامة) من المجموعة المبدئية بدلاً من استبدالها. .Pp لن تُقبل الشهادات الموقعة باستخدام خوارزميات أخرى لمصادقة المفتاح العام أو المصادقة القائمة على المضيف. .It Cm ChannelTimeout يحدد ما إذا كان ينبغي لـ .Xr sshd 8 إغلاق القنوات غير النشطة ومدى سرعة ذلك. تُحدد المهلات كزوج أو أكثر من صيغة .Dq type=interval مفصولة بمسافات بيضاء، حيث يجب أن يكون .Dq type هو الكلمة المفتاحية الخاصة .Dq global أو اسم نوع قناة من القائمة أدناه، والذي قد يحتوي اختياريًا على محارف برية. .Pp تحدد قيمة المهلة .Dq interval بالثواني أو قد تستخدم أيًا من الوحدات الموثقة في قسم .Sx TIME FORMATS . على سبيل المثال، سيؤدي .Dq session=5m إلى إنهاء الجلسات التفاعلية بعد خمس دقائق من عدم النشاط. تحديد قيمة صفرية يعطل مهلة عدم النشاط. .Pp تنطبق المهلة الخاصة .Dq global على جميع القنوات النشطة مجتمعة. حركة السر على أي قناة نشطة ستعيد ضبط المهلة، ولكن عندما تنتهي المهلة فستُغلق جميع القنوات المفتوحة. لاحظ أن هذه المهلة العامة لا تُطابقها الرموز البديلة ويجب تحديدها صراحة. .Pp تتضمن أسماء أنواع القنوات المتاحة: .Bl -tag -width Ds .It Cm agent-connection فتح اتصالات بـ .Xr ssh-agent 1 . .It Cm direct-tcpip , Cm direct-streamlocal@openssh.com فتح اتصالات مقبس TCP أو Unix (على التوالي) التي أُنشِئَت من توجيه محلي لـ .Xr ssh 1 ، أي\& .Cm LocalForward أو .Cm DynamicForward . .It Cm forwarded-tcpip , Cm forwarded-streamlocal@openssh.com تفتح اتصالات مقبس TCP أو Unix (على التوالي) التي أُنشِئَت إلى .Xr sshd 8 الذي يستمع نيابة عن توجيه بعيد لـ .Xr ssh 1 ، أي\& .Cm RemoteForward . .It Cm session جلسة العمل الرئيسة التفاعلية، بما في ذلك جلسة الصدفة، وتنفيذ الأوامر، و .Xr scp 1 ، و .Xr sftp 1 ، وما إلى ذلك. .It Cm tun-connection فتح اتصالات .Cm TunnelForward . .It Cm x11-connection فتح جلسات توجيه X11. .El .Pp لاحظ أنه في جميع الحالات المذكورة أعلاه، فإن إنهاء جلسة غير نشطة لا يضمن إزالة جميع الموارد المرتبطة بالجلسة، على سبيل المثال عمليات الصدفة أو عملاء X11 المتعلقين بالجلسة قد يستمرون في العمل. .Pp علاوة على ذلك، فإن إنهاء قناة أو جلسة غير نشطة لا يغلق بالضرورة اتصال SSH، ولا يمنع العميل من طلب قناة أخرى من نفس النوع. وبشكل خاص، فإن انتهاء صلاحية جلسة توجيه غير نشطة لا يمنع إنشاء توجيه آخر مماثل لاحقًا. .Pp المبدئي هو عدم إنهاء صلاحية القنوات من أي نوع بسبب عدم النشاط. .It Cm ChrootDirectory يحدد اسم المسار لدليل لتطبيق أمر السجن .Xr chroot 2 إليه بعد المصادقة. عند بدء الجلسة، يتحقق .Xr sshd 8 من أن جميع مكونات اسم المسار هي أدلة مملوكة للجذر (root) وغير قابلة للكتابة من قِبل المجموعة أو الآخرين. بعد عملية chroot، يغير .Xr sshd 8 دليل العمل إلى دليل منزل المستخدم. تقبل وسائط .Cm ChrootDirectory الرموز الموصوفة في قسم .Sx TOKENS . .Pp يجب أن يحتوي .Cm ChrootDirectory على الملفات والأدلة اللازمة لدعم جلسة المستخدم. بالنسبة للجلسة التفاعلية، يتطلب هذا على الأقل غلافًا (shell)، عادةً .Xr sh 1 ، وعقد .Pa /dev الأساسية مثل أجهزة .Xr null 4 و .Xr zero 4 و .Xr stdin 4 و .Xr stdout 4 و .Xr stderr 4 و .Xr tty 4 . بالنسبة لجلسات نقل الملفات باستخدام SFTP، لا يلزم أي إعداد إضافي للبيئة إذا استُخدم خادم sftp المدمج (in-process)، على الرغم من أن الجلسات التي تستخدم التسجيل (logging) قد تتطلب وجود .Pa /dev/log داخل دليل chroot في بعض أنظمة التشغيل (راجع .Xr sftp-server 8 للتفاصيل). .Pp للسلامة، من المهم جدًا منع تعديل الهيكل الشجري للأدلة من قِبل العمليات الأخرى في النظام (خاصة تلك الموجودة خارج السجن). يمكن أن يؤدي سوء الإعداد إلى بيئات غير آمنة لا يستطيع .Xr sshd 8 اكتشافها. .Pp المبدئي هو .Cm none ، مما يشير إلى عدم استخدام .Xr chroot 2 . .It Cm Ciphers يحدد الشفرات (ciphers) المسموح بها. يجب الفصل بين الشفرات المتعددة بفاصلة. إذا بدأت القائمة المحددة بمحرف الفتحة .Sq + ، فتُلحق الشفرات المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة بمحرف الطرح .Sq - ، فتُزال الشفرات المحددة (بما في ذلك المحارف البرية) من المجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة بمحرف الأس .Sq ^ ، فتُوضع الشفرات المحددة في مقدمة المجموعة المبدئية. .Pp المعميات المدعومة هي: .Pp .Bl -item -compact -offset indent .It 3des-cbc .It aes128-cbc .It aes192-cbc .It aes256-cbc .It aes128-ctr .It aes192-ctr .It aes256-ctr .It aes128-gcm@openssh.com .It aes256-gcm@openssh.com .It chacha20-poly1305@openssh.com .El .Pp المبدئي هو: .Bd -literal -offset indent chacha20-poly1305@openssh.com, aes128-gcm@openssh.com,aes256-gcm@openssh.com, aes128-ctr,aes192-ctr,aes256-ctr .Ed .Pp يمكن أيضًا الحصول على قائمة التعميات المتاحة باستخدام .Qq ssh -Q cipher . .It Cm ClientAliveCountMax يحدد عدد رسائل الحفاظ على حياة العميل (client alive messages) التي يمكن إرسالها دون أن يتلقى .Xr sshd 8 أي رسائل في المقابل من العميل. إذا وُصلَ إلى هذا الحد الأدنى أثناء إرسال الرسائل، فسيقوم sshd بفصل العميل وإنهاء الجلسة. من المهم ملاحظة أن استخدام رسائل حياة العميل يختلف تمامًا عن خيار .Cm TCPKeepAlive . تُرسل رسائل حياة العميل عبر القناة المشفرة وبالتالي لا يمكن تزويرها (non-spoofable). أما خيار TCP keepalive المُمكّن بواسطة .Cm TCPKeepAlive فهو قابل للتزوير. آلية الحفاظ على حياة العميل قيمة للغاية عندما يعتمد العميل أو الخادم على معرفة متى يصبح الاتصال غير مستجيب. .Pp القيمة المبدئية هي 3. إذا عُين .Cm ClientAliveInterval على 15، وتُرك .Cm ClientAliveCountMax على القيمة المبدئية، فسيُفصل عملاء SSH غير المستجيبين بعد 45 ثانية تقريبًا. تعيين قيمة صفر في .Cm ClientAliveCountMax يعطل إنهاء الاتصال. .It Cm ClientAliveInterval يحدد فاصل مهلة زمني بالثواني، والذي إذا لم تُتلق أي بيانات بعده من العميل، فسيقوم .Xr sshd 8 بإرسال رسالة عبر القناة المشفرة لطلب استجابة من العميل. المبدئي هو 0، مما يشير إلى أن هذه الرسائل لن تُرسل إلى العميل. .It Cm Compression يحدد ما إذا كان الضغط مُمكّنًا بعد نجاح مصادقة المستخدم. يجب أن يكون الوسيط إما .Cm yes ، أو .Cm delayed (مرادف قديم لـ .Cm yes ) ، أو .Cm no . المبدئي هو .Cm yes . .It Cm DenyGroups يمكن أن تُتبع هذه الكلمة المفتاحية بقائمة من أنماط أسماء المجموعات، مفصولة بمسافات. يُرفض ولوج للمستخدمين الذين تطابق مجموعتهم الأساسية أو قائمة مجموعاتهم الإضافية أحد الأنماط. أسماء المجموعات فقط هي الصالحة؛ لا يُتعرف على معرف المجموعة الرقمي. بشكل مبدئي، يُسمح بالولوج لجميع المجموعات. لا يُرجع إلى .Cm AllowGroups للمجموعات التي تطابق .Cm DenyGroups . .Pp انظر قسم PATTERNS في .Xr ssh_config 5 لمزيد من المعلومات حول الأنماط. قد تظهر هذه الكلمة المفتاحية عدة مرات في .Nm sshd_config حيث تقوم كل نسخة بالإلحاق بالقائمة. .It Cm DenyUsers يمكن أن تُتبع هذه الكلمة المفتاحية بقائمة من أنماط أسماء المستخدمين، مفصولة بمسافات. يُحظر ولوج لأسماء المستخدمين التي تطابق أحد الأنماط. أسماء المستخدمين فقط هي الصالحة؛ لا يُتعرف على معرف المستخدم الرقمي. بشكل مبدئي، يُسمح بالولوج لجميع المستخدمين. إذا كان النمط يأخذ الشكل USER@HOST فسيتم فحص USER و HOST بشكل منفصل، مما يقيد ولوج لمستخدمين معينين من مضيفين معينين. قد تحتوي معايير HOST بالإضافة إلى ذلك على عناوين للمطابقة بتنسيق CIDR. لا يُرجع إلى .Cm AllowUsers للمستخدمين الذين يطابقون .Cm DenyUsers . .Pp انظر قسم PATTERNS في .Xr ssh_config 5 لمزيد من المعلومات حول الأنماط. قد تظهر هذه الكلمة المفتاحية عدة مرات في .Nm sshd_config حيث تقوم كل نسخة بالإلحاق بالقائمة. .It Cm DisableForwarding يعطل جميع ميزات التوجيه (forwarding)، بما في ذلك X11 و .Xr ssh-agent 1 و TCP و StreamLocal. يتجاوز هذا الخيار جميع الخيارات الأخرى المتعلقة بالتوجيه وقد يبسط الإعدادات المقيدة. .It Cm ExposeAuthInfo يكتب ملفًا مؤقتًا يحتوي على قائمة بطرق المصادقة والاعتمادات العامة (مثل المفاتيح) المستخدمة لمصادقة المستخدم. يُكشف موقع الملف لجلسة المستخدم من خلال متغير البيئة .Ev SSH_USER_AUTH . المبدئي هو .Cm no . .It Cm FingerprintHash يحدد خوارزمية التجزئة (hash algorithm) المستخدمة عند تسجيل بصمات المفاتيح. الخيارات الصالحة هي: .Cm md5 و .Cm sha256 . المبدئي هو .Cm sha256 . .It Cm ForceCommand يجبر على تنفيذ الأمر المحدد بواسطة .Cm ForceCommand ، متجاهلاً أي أمر يقدمه العميل وملف .Pa ~/.ssh/rc في حال وجوده. يُستدعى الأمر باستخدام غلاف ولوج الخاص بالمستخدم مع خيار -c. ينطبق هذا على تنفيذ الغلاف أو الأمر أو النظام الفرعي. يكون هذا الخيار مفيدًا للغاية داخل كتلة .Cm Match . يتوفر الأمر الأصلي الذي قدمه العميل في متغير البيئة .Ev SSH_ORIGINAL_COMMAND . تحديد الأمر بـ .Cm internal-sftp سيجبر على استخدام خادم SFTP مدمج لا يتطلب ملفات دعم عند استخدامه مع .Cm ChrootDirectory . المبدئي هو .Cm none . .Pp لا يحد هذا التوجيه من أنواع الوصول الأخرى التي قد يطلبها العميل عبر اتصاله، مثل توجيه TCP أو العميل (agent) أو المقبس (socket) أو X11. إذا كانت هذه الميزات غير مرغوب فيها، فيجب تعطيلها صراحةً، إما بشكل فردي عبر خياراتها الخاصة أو معًا باستخدام خيار .Cm DisableForwarding . .It Cm GatewayPorts يحدد ما إذا كان يُسمح للمضيفين البعيدين بالاتصال بالمنافذ الموجهة للعميل. بشكل مبدئي، يربط .Xr sshd 8 توجيه المنافذ البعيدة بعنوان الحلقة المحلية (loopback address). هذا يمنع المضيفين البعيدين الآخرين من الاتصال بالمنافذ الموجهة. يمكن استخدام .Cm GatewayPorts لتحديد أن sshd يجب أن يسمح لتوجيه المنافذ البعيدة بالارتباط بعناوين غير حلقة محلية، وبالتالي السماح للمضيفين الآخرين بالاتصال. قد يكون الوسيط .Cm no لجعل توجيه المنافذ البعيدة متاحًا للمضيف المحلي فقط، أو .Cm yes لإجبار توجيه المنافذ البعيدة على الارتباط بالعنوان البري (wildcard address)، أو .Cm clientspecified للسماح للعميل باختيار العنوان الذي يرتبط به التوجيه. المبدئي هو .Cm no . .It Cm GSSAPIAuthentication يحدد ما إذا كان مصادقة المستخدم القائمة على GSSAPI مسموحاً بها. المبدئي هو .Cm no . .It Cm GSSAPICleanupCredentials يحدد ما إذا كانت ذاكرة التخزين المؤقت لاعتمادات المستخدم (credentials cache) ستُدمر تلقائيًا عند تسجيل الخروج. المبدئي هو .Cm yes . .It Cm GSSAPIDelegateCredentials قبول الاعتمادات المفوضة (delegated credentials) من جانب الخادم. المبدئي هو .Cm yes . .It Cm GSSAPIStrictAcceptorCheck يحدد ما إذا كان يجب التشدد بشأن هوية مستقبل GSSAPI (GSSAPI acceptor) الذي يتصادق العميل ضده. إذا عُين على .Cm yes ، فيجب على العميل المصادقة ضد خدمة المضيف على اسم المضيف الحالي. وإذا عُين على .Cm no ، فقد يتصادق العميل ضد أي مفتاح خدمة مخزن في المخزن المبدئي للجهاز. تُوفر هذه الميزة للمساعدة في العمل على الأجهزة ذات الواجهات الشبكية المتعددة (multi-homed). المبدئي هو .Cm yes . .It Cm HostbasedAcceptedAlgorithms يحدد خوارزميات التوقيع المقبولة للمصادقة القائمة على المضيف (hostbased authentication) كقائمة من الأنماط المفصولة بفاصلة. بدلاً من ذلك، إذا بدأت القائمة المحددة بمحرف الفتحة .Sq + ، فسيتم إلحاق خوارزميات التوقيع المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة بمحرف الطرح .Sq - ، فسيتم إزالة خوارزميات التوقيع المحددة (بما في ذلك المحارف البرية) من المجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة بمحرف الأس .Sq ^ ، فسيتم وضع خوارزميات التوقيع المحددة في مقدمة المجموعة المبدئية. المبدئي لهذا الخيار هو: .Bd -literal -offset 3n ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, webauthn-sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, webauthn-sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 .Ed .Pp يمكن أيضًا الحصول على قائمة خوارزميات التوقيع المتاحة باستخدام .Qq ssh -Q HostbasedAcceptedAlgorithms . كان هذا الخيار يسمى سابقًا HostbasedAcceptedKeyTypes. .It Cm HostbasedAuthentication يحدد ما إذا كانت مصادقة rhosts أو /etc/hosts.equiv مسموحًا بها جنبًا إلى جنب مع مصادقة مفتاح عام ناجحة لمضيف العميل (المصادقة القائمة على المضيف). المبدئي هو .Cm no . .It Cm HostbasedUsesNameFromPacketOnly يحدد ما إذا كان الخادم سيحاول إجراء بحث عكسي عن الاسم (reverse name lookup) عند مطابقة الاسم في ملفات .Pa ~/.shosts و .Pa ~/.rhosts و .Pa /etc/hosts.equiv أثناء عملية .Cm HostbasedAuthentication . يعني التعيين على .Cm yes أن .Xr sshd 8 يستخدم الاسم المقدم من العميل بدلاً من محاولة حل الاسم (resolve) من اتصال TCP نفسه. المبدئي هو .Cm no . .It Cm HostCertificate يحدد ملفًا يحتوي على شهادة مضيف عامة. يجب أن يطابق المفتاح العام للشهادة مفتاح مضيف خاصًا محددًا بالفعل بواسطة .Cm HostKey . السلوك المبدئي لـ .Xr sshd 8 هو عدم تحميل أي شهادات. .It Cm HostKey يحدد ملفًا يحتوي على مفتاح مضيف خاص مستخدم بواسطة SSH. القيم المبدئية هي .Pa /etc/ssh/ssh_host_ecdsa_key و .Pa /etc/ssh/ssh_host_ed25519_key و .Pa /etc/ssh/ssh_host_rsa_key . .Pp لاحظ أن .Xr sshd 8 سيرفض استخدام أي ملف إذا كان متاحًا للقراءة/الكتابة من قِبل المجموعة أو العامة (group/world-accessible)، وأن خيار .Cm HostKeyAlgorithms يقيد أي المفاتيح تُستخدم فعليًا بواسطة .Xr sshd 8 . .Pp من الممكن وجود عدة ملفات لمفاتيح المضيف. ومن الممكن أيضًا تحديد ملفات مفاتيح مضيف عامة بدلاً من ذلك. وفي هذه الحالة، ستُفوض العمليات التي تتم على المفتاح الخاص إلى .Xr ssh-agent 1 . .It Cm HostKeyAgent يحدد مقبس نطاق يونكس (UNIX-domain socket) المستخدم للتواصل مع عميل (agent) لديه صلاحية الوصول إلى مفاتيح المضيف الخاصة. إذا حُدد السلسلة النصية .Qq SSH_AUTH_SOCK ، فسيُقرأ موقع المقبس من متغير البيئة .Ev SSH_AUTH_SOCK . .It Cm HostKeyAlgorithms يحدد خوارزميات توقيع مفتاح المضيف التي يقدمها الخادم. المبدئي لهذا الخيار هو: .Bd -literal -offset 3n ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, webauthn-sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, webauthn-sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 .Ed .Pp يمكن أيضًا الحصول على قائمة خوارزميات التوقيع المتاحة باستخدام .Qq ssh -Q HostKeyAlgorithms . .It Cm IgnoreRhosts يحدد ما إذا كانت ملفات .Pa .rhosts و .Pa .shosts الخاصة بكل مستخدم ستُتجاهل أثناء .Cm HostbasedAuthentication . تظل ملفات النظام الشاملة .Pa /etc/hosts.equiv و .Pa /etc/ssh/shosts.equiv مستخدمة بغض النظر عن هذا التعيين. .Pp القيم المقبولة هي .Cm yes (المبدئي) لتجاهل جميع الملفات الخاصة بالمستخدمين، أو .Cm shosts-only للسماح باستخدام .Pa .shosts مع تجاهل .Pa .rhosts ، أو .Cm no للسماح بكل من .Pa .shosts و .Pa rhosts . .It Cm IgnoreUserKnownHosts يحدد ما إذا كان ينبغي لـ .Xr sshd 8 تجاهل ملف الـ .Pa ~/.ssh/known_hosts الخاص بالمستخدم أثناء .Cm HostbasedAuthentication واستخدام ملف المضيفين المعروفين الشامل للنظام فقط .Pa /etc/ssh/ssh_known_hosts . المبدئي هو .Dq no . .It Cm Include تُضمّن ملف أو ملفات الإعداد المحددة. يمكن تحديد مسارات متعددة، ويمكن لكل مسار أن يحتوي على محارف برية لـ .Xr glob 7 والتي ستُوسع وتُعالج بالترتيب المعجمي. يُفترض أن الملفات التي لا تحتوي على مسارات مطلقة موجودة في دليل .Pa /etc/ssh . قد يظهر توجيه .Cm Include داخل كتلة .Cm Match لإجراء تضمين مشروط. .It Cm IPQoS تُحدد قيمة نقطة ترميز حقل الخدمات المتمايزة .Em Differentiated Services Field Codepoint Pq DSCP للاتصال. القيم المقبولة هي .Cm af11 ، .Cm af12 ، .Cm af13 ، .Cm af21 ، .Cm af22 ، .Cm af23 ، .Cm af31 ، .Cm af32 ، .Cm af33 ، .Cm af41 ، .Cm af42 ، .Cm af43 ، .Cm cs0 ، .Cm cs1 ، .Cm cs2 ، .Cm cs3 ، .Cm cs4 ، .Cm cs5 ، .Cm cs6 ، .Cm cs7 ، .Cm ef ، .Cm le ، أو قيمة رقمية، أو .Cm none لاستخدام المبدئي لنظام التشغيل. يمكن أن يأخذ هذا الخيار وسيطًا واحدًا أو وسيطين، مفصولين بمسافة بيضاء. إذا حُدد وسيط واحد، فإنه يُستخدم كفئة للحزمة دون شروط. وإذا حُدد قيمتين، فتُختار الأولى تلقائيًا للجلسات التفاعلية والثانية للجلسات غير التفاعلية. المبدئي هو .Cm ef (التوجيه المعجل Expedited Forwarding) للجلسات التفاعلية و .Cm none (المبدئي لنظام التشغيل) للجلسات غير التفاعلية. .It Cm KbdInteractiveAuthentication يُحدد ما إذا كانت المصادقة التفاعلية للوحة المفاتيح (keyboard-interactive) ستُسمح. جميع أنماط المصادقة من ملف .Xr login.conf 5 مدعومة. المبدئي هو .Cm yes . يجب أن يكون وسيط هذه الكلمة المفتاحية إما .Cm yes أو .Cm no . ويعد .Cm ChallengeResponseAuthentication اسمًا مستعارًا مهجورًا (deprecated) لهذا الخيار. .It Cm KerberosAuthentication يُحدد ما إذا كانت كلمة السر التي يقدمها المستخدم لـ .Cm PasswordAuthentication ستُتحقق من صحتها من خلال مركز توزيع مفاتيح كيربيروس (Kerberos KDC). لاستخدام هذا الخيار، يحتاج الخادم إلى ملف servtab الخاص بكيربيروس والذي يسمح بالتحقق من هوية الـ KDC. المبدئي هو .Cm no . .It Cm KerberosGetAFSToken إذا كان نظام الملفات أندرو (AFS) نشطًا وكان لدى المستخدم بطاقة كيربيروس 5 (Kerberos 5 TGT)، فستُحاول الحصول على رمز AFS المميز (AFS token) قبل الوصول إلى دليل منزل المستخدم. المبدئي هو .Cm no . .It Cm KerberosOrLocalPasswd إذا فشلت مصادقة كلمة السر من خلال كيربيروس، فستُتحقق صحة كلمة السر عبر أي آلية محلية إضافية مثل ملف .Pa /etc/passwd . المبدئي هو .Cm yes . .It Cm KerberosTicketCleanup يُحدد ما إذا كان ملف ذاكرة التخزين المؤقت للتذاكر (ticket cache file) الخاص بالمستخدم سيُدمر تلقائيًا عند تسجيل الخروج. المبدئي هو .Cm yes . .It Cm KexAlgorithms يحدد خوارزميات تبادل المفاتيح (KEX) المسموح بها والتي سيقدمها الخادم للعملاء. ترتيب هذه القائمة ليس مهمًا، لأن العميل هو من يحدد ترتيب التفضيل. يجب الفصل بين الخوارزميات المتعددة بفاصلة. .Pp إذا بدأت القائمة المحددة بمحرف .Sq + ، فسَتُلحَق الخوارزميات المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة المحددة بمحرف .Sq - ، فسَتُزَال الخوارزميات المحددة (بما في ذلك الرموز العامة) من المجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة المحددة بمحرف .Sq ^ ، فسَتُوضَع الخوارزميات المحددة في بداية المجموعة المبدئية. .Pp الخوارزميات المدعومة هي: .Pp .Bl -item -compact -offset indent .It curve25519-sha256 .It curve25519-sha256@libssh.org .It diffie-hellman-group1-sha1 .It diffie-hellman-group14-sha1 .It diffie-hellman-group14-sha256 .It diffie-hellman-group16-sha512 .It diffie-hellman-group18-sha512 .It diffie-hellman-group-exchange-sha1 .It diffie-hellman-group-exchange-sha256 .It ecdh-sha2-nistp256 .It ecdh-sha2-nistp384 .It ecdh-sha2-nistp521 .It mlkem768x25519-sha256 .It sntrup761x25519-sha512 .It sntrup761x25519-sha512@openssh.com .El .Pp المبدئي هو: .Bd -literal -offset indent mlkem768x25519-sha256, sntrup761x25519-sha512,sntrup761x25519-sha512@openssh.com, curve25519-sha256,curve25519-sha256@libssh.org, ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521 .Ed .Pp يمكن أيضًا الحصول على قائمة خوارزميات تبادل المفاتيح المدعومة باستخدام الأمر .Qq ssh -Q KexAlgorithms . .It Cm ListenAddress تُحدد العناوين المحلية التي يجب أن يستمع (listen) إليها .Xr sshd 8 . يمكن استخدام الأشكال التالية: .Pp .Bl -item -offset indent -compact .It .Cm ListenAddress .Sm off .Ar hostname | address .Sm on .Op Cm rdomain Ar domain .It .Cm ListenAddress .Sm off .Ar hostname : port .Sm on .Op Cm rdomain Ar domain .It .Cm ListenAddress .Sm off .Ar IPv4_address : port .Sm on .Op Cm rdomain Ar domain .It .Cm ListenAddress .Sm off .Oo Ar hostname | address Oc : Ar port .Sm on .Op Cm rdomain Ar domain .El .Pp يطلب محدد .Cm rdomain الاختياري من .Xr sshd 8 الاستماع في نطاق توجيه (routing domain) صريح. إذا لم يُحدد المنفذ .Ar port ، فسوف يستمع sshd على العنوان وجميع خيارات الـ .Cm Port المحددة. المبدئي هو الاستماع على جميع العناوين المحلية في نطاق التوجيه المبدئي الحالي. يُسمح بخيارات متعددة من .Cm ListenAddress . لمزيد من المعلومات حول نطاقات التوجيه، راجع .Xr rdomain 4 . .It Cm LoginGraceTime يقوم الخادم بفصل الاتصال بعد هذا الوقت إذا لم يقم المستخدم بالولوج بنجاح. إذا كانت القيمة 0، فلا يوجد حد زمني. المبدئي هو 120 ثانية. .It Cm LogLevel يحدد مستوى الإسهاب (verbosity level) المستخدم عند تسجيل الرسائل من .Xr sshd 8 . القيم الممكنة هي: QUIET، و FATAL، و ERROR، و INFO، و VERBOSE، و DEBUG، و DEBUG1، و DEBUG2، و DEBUG3. المبدئي هو INFO. المستويان DEBUG و DEBUG1 متكافئان. يحدد كل من DEBUG2 و DEBUG3 مستويات أعلى من مخرجات التنقيب عن الأخطاء (debugging). التسجيل بمستوى DEBUG ينتهك خصوصية المستخدمين ولا يُنصح به. .It Cm LogVerbose تحديد تجاوز (override) واحد أو أكثر لـ .Cm LogLevel . يتكون التجاوز من قائمة أنماط واحدة أو أكثر تطابق ملف المصدر، والدالة، ورقم السطر لفرض تسجيل مفصل لها. على سبيل المثال، نمط التجاوز يكون: .Bd -literal -offset indent kex.c:*:1000,*:kex_exchange_identification():*,packet.c:* .Ed .Pp سيفعل التسجيل المفصل للسطر 1000 من .Pa kex.c ، وكل شيء في دالة .Fn kex_exchange_identification ، وجميع الأكواد في ملف .Pa packet.c . هذا الخيار مخصص للتنقيح ولا توجد تجاوزات مفعّلة مبدئيًا. .It Cm MACs تُحدد خوارزميات كود مصادقة الرسائل (MAC) المتاحة. تُستخدم خوارزمية MAC لحماية سلامة البيانات (data integrity). يجب الفصل بين الخوارزميات المتعددة بفاصلة. إذا بدأت القائمة المحددة بمحرف الفتحة .Sq + ، فسيتم إلحاق الخوارزميات المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت بمحرف الطرح .Sq - ، فسيتم إزالة الخوارزميات المحددة (بما في ذلك المحارف البرية) من المجموعة المبدئية بدلاً من استبدالها. وإذا بدأت بمحرف الأس .Sq ^ ، فسيتم وضع الخوارزميات المحددة في مقدمة المجموعة المبدئية. .Pp الخوارزميات التي تحتوي على اللاحقة .Qq -etm تقوم بحساب الـ MAC بعد التشفير (التشفير أولاً ثم كود المصادقة encrypt-then-mac). تعتبر هذه الخوارزميات أكثر أمانًا ويوصى باستخدامها. أكواد MAC المدعومة هي: .Pp .Bl -item -compact -offset indent .It hmac-md5 .It hmac-md5-96 .It hmac-sha1 .It hmac-sha1-96 .It hmac-sha2-256 .It hmac-sha2-512 .It umac-64@openssh.com .It umac-128@openssh.com .It hmac-md5-etm@openssh.com .It hmac-md5-96-etm@openssh.com .It hmac-sha1-etm@openssh.com .It hmac-sha1-96-etm@openssh.com .It hmac-sha2-256-etm@openssh.com .It hmac-sha2-512-etm@openssh.com .It umac-64-etm@openssh.com .It umac-128-etm@openssh.com .El .Pp المبدئي هو: .Bd -literal -offset indent umac-64-etm@openssh.com,umac-128-etm@openssh.com, hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, hmac-sha1-etm@openssh.com, umac-64@openssh.com,umac-128@openssh.com, hmac-sha2-256,hmac-sha2-512,hmac-sha1 .Ed .Pp يمكن أيضًا الحصول على قائمة خوارزميات MAC المتاحة باستخدام .Qq ssh -Q mac . .It Cm Match تُقدم كتلة شرطية (conditional block). إذا استوفي جميع المعايير في سطر .Cm Match ، فإن الكلمات المفتاحية في السطور التالية تتجاوز تلك المحددة في القسم العام لملف الإعداد، حتى الوصول إلى سطر .Cm Match آخر أو إلى نهاية الملف. إذا ظهرت كلمة مفتاحية في عدة كتل .Cm Match مستوفاة الشروط، فسيتم تطبيق النسخة الأولى فقط من الكلمة المفتاحية. .Pp الوسائط لـ .Cm Match هي زوج أو أكثر من (المعيار والنمط) أو أحد المعايير أحادية الرمز: .Cm All ، الذي يطابق جميع المعايير، أو .Cm Invalid-User ، الذي يطابق عندما لا يتوافق اسم المستخدم المطلوب مع أي حساب معروف. المعايير المتاحة هي .Cm User و .Cm Group و .Cm Host و .Cm LocalAddress و .Cm LocalPort و .Cm Version و .Cm RDomain و .Cm Address (حيث يمثل .Cm RDomain الـ .Xr rdomain 4 الذي تُلقي الاتصال عليه). .Pp قد تتكون أنماط المطابقة من إدخالات مفردة أو قوائم مفصولة بفاصلة، ويمكنها استخدام محارف البرية وعوامل النفي (negation) الموصوفة في قسم .Sx PATTERNS في .Xr ssh_config 5 . .Pp قد تحتوي الأنماط في معيار .Cm Address بالإضافة إلى ذلك على عناوين للمطابقة بتنسيق CIDR (العنوان/طول القناع)، مثل 192.0.2.0/24 أو 2001:db8::/32. لاحظ أن طول القناع المقدم يجب أن يكون متسقًا مع العنوان؛ حيث يعد خطأً تحديد طول قناع طويل جدًا بالنسبة للعنوان أو قناع يحتوي على بتات نشطة في جزء المضيف من العنوان. على سبيل المثال، 192.0.2.0/33 و 192.0.2.0/8 على التوالي. .Pp تطابق الكلمة المفتاحية .Cm Version مقابل سلسلة نص الإصدار الخاص بـ .Xr sshd 8 ، على سبيل المثال .Dq OpenSSH_10.0 . .Pp يمكن استخدام مجموعة فرعية فقط من الكلمات المفتاحية في السطور التي تلي كلمة .Cm Match . الكلمات المفتاحية المتاحة هي: .Cm AcceptEnv ، و .Cm AllowAgentForwarding ، و .Cm AllowGroups ، و .Cm AllowStreamLocalForwarding ، و .Cm AllowTcpForwarding ، و .Cm AllowUsers ، و .Cm AuthenticationMethods ، و .Cm AuthorizedKeysCommand ، و .Cm AuthorizedKeysCommandUser ، و .Cm AuthorizedKeysFile ، و .Cm AuthorizedPrincipalsCommand ، و .Cm AuthorizedPrincipalsCommandUser ، و .Cm AuthorizedPrincipalsFile ، و .Cm Banner ، و .Cm CASignatureAlgorithms ، و .Cm ChannelTimeout ، و .Cm ChrootDirectory ، و .Cm ClientAliveCountMax ، و .Cm ClientAliveInterval ، و .Cm DenyGroups ، و .Cm DenyUsers ، و .Cm DisableForwarding ، و .Cm ExposeAuthInfo ، و .Cm ForceCommand ، و .Cm GatewayPorts ، و .Cm GSSAPIAuthentication ، و .Cm HostbasedAcceptedAlgorithms ، و .Cm HostbasedAuthentication ، و .Cm HostbasedUsesNameFromPacketOnly ، و .Cm IgnoreRhosts ، و .Cm Include ، و .Cm IPQoS ، و .Cm KbdInteractiveAuthentication ، و .Cm KerberosAuthentication ، و .Cm LogLevel ، و .Cm MaxAuthTries ، و .Cm MaxSessions ، و .Cm PAMServiceName ، و .Cm PasswordAuthentication ، و .Cm PermitEmptyPasswords ، و .Cm PermitListen ، و .Cm PermitOpen ، و .Cm PermitRootLogin ، و .Cm PermitTTY ، و .Cm PermitTunnel ، و .Cm PermitUserRC ، و .Cm PubkeyAcceptedAlgorithms ، و .Cm PubkeyAuthentication ، و .Cm PubkeyAuthOptions ، و .Cm RefuseConnection ، و .Cm RekeyLimit ، و .Cm RevokedKeys ، و .Cm RDomain ، و .Cm SetEnv ، و .Cm StreamLocalBindMask ، و .Cm StreamLocalBindUnlink ، و .Cm TrustedUserCAKeys ، و .Cm UnusedConnectionTimeout ، و .Cm X11DisplayOffset ، و .Cm X11Forwarding ، و .Cm X11UseLocalhost . .It Cm MaxAuthTries يُحدد الحد الأقصى لعدد محاولات المصادقة المسموح بها لكل اتصال. بمجرد أن يصل عدد المحاولات الفاشلة إلى نصف هذه القيمة، تُسجل الإخفاقات الإضافية في السجل. المبدئي هو 6. .It Cm MaxSessions يُحدد الحد الأقصى لعدد جلسات الغلاف (shell) أو ولوج أو النظام الفرعي (مثل sftp) المفتوحة المسموح بها لكل اتصال شبكي. يمكن إنشاء جلسات متعددة بواسطة العملاء الذين يدعمون تعدد الإرسال للاتصالات (connection multiplexing). تعيين .Cm MaxSessions إلى 1 سيؤدي فعليًا إلى تعطيل تعدد إرسال الجلسات، في حين أن تعيينه إلى 0 سيمنع جميع جلسات الغلاف وتسجيل الدخول والنظام الفرعي مع الاستمرار في السماح بالتوجيه. المبدئي هو 10. .It Cm MaxStartups يُحدد الحد الأقصى لعدد الاتصالات المتزامنة غير المصادق عليها لعفريت SSH. ستُسقط (drop) الاتصالات الإضافية حتى تنجح المصادقة أو تنتهي مهلة .Cm LoginGraceTime الخاصة بالاتصال. .Pp بدلاً من ذلك، يمكن تمكين الإسقاط المبكر العشوائي (random early drop) عن طريق تحديد القيم الثلاث المفصولة بنقطتين بالصيغة start:rate:full (على سبيل المثال "10:30:60"). المبدئي هو 10:30:100. سيرفض .Xr sshd 8 محاولات الاتصال باحتمالية rate/100 (أي 30%) إذا كان هناك حاليًا عدد start (أي 10) من الاتصالات غير المصادق عليها. تزداد الاحتمالية خطيًا وتُرفض جميع محاولات الاتصال إذا وصل عدد الاتصالات غير المصادق عليها إلى full (أي 60). .It Cm ModuliFile يحدد ملف .Xr moduli 5 الذي يحتوي على مجموعات ديفي-هيلمان (Diffie-Hellman groups) المستخدمة في طرق تبادل المفاتيح .Dq diffie-hellman-group-exchange-sha1 و .Dq diffie-hellman-group-exchange-sha256 . المبدئي هو .Pa /etc/ssh/moduli . .It Cm PAMServiceName يُحدد اسم الخدمة المستخدم لوحدات المصادقة القابلة للتوصيل (PAM) للمصادقة، والتفويض، وعناصر التحكم في الجلسة عند تمكين خيار .Cm UsePAM . المبدئي هو .Cm sshd . .It Cm PasswordAuthentication يحدد ما إذا كان مسموحًا بالمصادقة عبر كلمة السر. المبدئي هو .Cm yes . .It Cm PermitEmptyPasswords عند السماح بالمصادقة عبر كلمة السر، يحدد هذا الخيار ما إذا كان الخادم يسمح بالولوج إلى الحسابات ذات سلاسل كلمات السر الفارغة. المبدئي هو .Cm no . .It Cm PermitListen تُحدد العناوين/المنافذ التي يمكن لتوجيه منافذ TCP البعيدة الاستماع عليها. يجب أن تكون مواصفات الاستماع بأحد الأشكال التالية: .Pp .Bl -item -offset indent -compact .It .Cm PermitListen .Sm off .Ar port .Sm on .It .Cm PermitListen .Sm off .Ar host : port .Sm on .El .Pp يمكن تحديد أذونات متعددة عن طريق الفصل بينها بمسافات بيضاء. يمكن استخدام الوسيط .Cm any لإزالة جميع القيود والسماح بأي طلبات استماع. ويمكن استخدام الوسيط .Cm none لحظر جميع طلبات الاستماع. قد يحتوي اسم المضيف على محارف برية كما هو موصوف في قسم PATTERNS في .Xr ssh_config 5 . يمكن أيضًا استخدام محرف البرية .Sq * بدلاً من رقم المنفذ للسماح بجميع المنافذ. بشكل مبدئي، يُسمح بجميع طلبات الاستماع لتوجيه المنافذ. لاحظ أن خيار .Cm GatewayPorts قد يقيد بشكل أكبر العناوين التي يمكن الاستماع عليها. لاحظ أيضًا أن .Xr ssh 1 سيطلب مضيف استماع باسم .Dq localhost إذا لم يطلب مضيف استماع محدد، ويُعالج هذا الاسم بشكل مختلف عن عناوين localhost الصريحة مثل .Dq 127.0.0.1 و .Dq ::1 . .It Cm PermitOpen يحدد الوجهات التي يُسمح بتوجيه منافذ TCP إليها. يجب أن تكون مواصفات التوجيه بأحد الأشكال التالية: .Pp .Bl -item -offset indent -compact .It .Cm PermitOpen .Sm off .Ar host : port .Sm on .It .Cm PermitOpen .Sm off .Ar IPv4_addr : port .Sm on .It .Cm PermitOpen .Sm off .Ar \&[ IPv6_addr \&] : port .Sm on .El .Pp يمكن تحديد عمليات توجيه متعددة عن طريق الفصل بينها بمسافات بيضاء. يُستخدم الوسيط .Cm any لإزالة جميع القيود والسماح بأي طلبات توجيه. ويُستخدم الوسيط .Cm none لحظر جميع طلبات التوجيه. يُستخدم محرف البرية .Sq * للمضيف أو المنفذ للسماح بجميع المضيفين أو المنافذ على التوالي. خلاف ذلك، لا تُجرى مطابقة للأنماط أو عمليات بحث عن العناوين للأسماء المقدمة. بشكل مبدئي، يُسمح بجميع طلبات توجيه المنافذ. .It Cm PermitRootLogin يحدد ما إذا كان بإمكان المستخدم الجذر (root) ولوج باستخدام .Xr ssh 1 . يجب أن يكون الوسيط إما .Cm yes ، أو .Cm prohibit-password ، أو .Cm forced-commands-only ، أو .Cm no . المبدئي هو .Cm prohibit-password . .Pp إذا ضُبط هذا الخيار على .Cm prohibit-password (أو اسمه المستعار المهجور، .Cm without-password ) ، يُعطّل الاستيثاق بكلمة السر والاستيثاق التفاعلي عبر لوحة المفاتيح للمستخدم الجذر (root). .Pp إذا ضُبط هذا الخيار على .Cm forced-commands-only ، فسيُسمح بولوج المستخدم الجذر باستخدام استيثاق المفتاح العلني، ولكن فقط إذا حُدّد خيار الأمر .Ar command (والذي قد يكون مفيدًا لأخذ النسخ الاحتياطية عن بُعد حتى لو كان ولوج المستخدم الجذر غير مسموح به عادةً). تُعطّل جميع طرق الاستيثاق الأخرى للمستخدم الجذر. .Pp إذا ضُبط هذا الخيار على .Cm no ، فلا يُسمح للمستخدم الجذر بالولوج. .It Cm PermitTTY يحدد ما إذا كان تخصيص الطرفية الوهمية .Xr pty 4 مسموحًا به. القيمة المبدئية هي .Cm yes . .It Cm PermitTunnel يحدد ما إذا كان توجيه جهاز النفق .Xr tun 4 مسموحًا به. يجب أن يكون المعطى .Cm yes ، أو .Cm point-to-point (الطبقة 3)، أو .Cm ethernet (الطبقة 2)، أو .Cm no . يتيح تحديد .Cm yes كلا الخيارين .Cm point-to-point و .Cm ethernet . القيمة المبدئية هي .Cm no . .Pp بصرف النظر عن هذا الضبط، يجب أن تسمح أذونات جهاز .Xr tun 4 المحدد للمستخدم بالوصول إليه. .It Cm PermitUserEnvironment يُحدد ما إذا كانت الخيارات في .Pa ~/.ssh/environment و .Cm environment= في ملف .Pa ~/.ssh/authorized_keys تُعالج بواسطة .Xr sshd 8 . الخيارات الصالحة هي .Cm yes أو .Cm no أو قائمة أنماط تحدد أسماء متغيرات البيئة التي تُقبل (على سبيل المثال .Qq LANG,LC_* ) . القيمة المبدئية هي .Cm no . قد يُتيح تمكين معالجة البيئة للمستخدمين تجاوز قيود الوصول في بعض التشكيلات باستخدام آليات مثل .Ev LD_PRELOAD . .It Cm PermitUserRC يحدد ما إذا كان أي ملف .Pa ~/.ssh/rc يُنفّذ. القيمة المبدئية هي .Cm yes . .It Cm PerSourceMaxStartups يحدد عدد الاتصالات غير المستوثق منها المسموح بها من عنوان مصدر معين، أو .Dq none إذا لم يكن هناك حد. يُطبّق هذا الحد بالإضافة إلى .Cm MaxStartups ، أيهما أقل. القيمة المبدئية هي .Cm none . .It Cm PerSourceNetBlockSize يحدد عدد بتات عنوان المصدر التي تُجمع معًا لأغراض تطبيق حدود PerSourceMaxStartups. يمكن تحديد قيم لـ IPv4 واختياريًا لـ IPv6، مفصولة بنقطتين رأسيتين. القيمة المبدئية هي .Cm 32:128 ، مما يعني أن كل عنوان يُعامل على حدة. .It Cm PerSourcePenalties يُتحكم في العقوبات المفروضة على الحالات المختلفة التي قد تمثل هجمات على .Xr sshd 8 . إذا فُرِضت عقوبة على عميل، فسيُرفض اتصال عنوان مصدره وأي عناوين أخرى في الشبكة نفسها، كما هو محدد بواسطة .Cm PerSourceNetBlockSize ، لفترة من الوقت. .Pp لا تؤثر العقوبة على الاتصالات المتزامنة الجارية، ولكن العقوبات المتعددة من المصدر نفسه عبر الاتصالات المتزامنة ستتراكم حتى تصل إلى الحد الأقصى. وعلى العكس من ذلك، لا تُطبّق العقوبات حتى يتراكم حد أدنى من وقت العتبة. .Pp تُمكّن العقوبات مبدئيًا مع الإعدادات المبدئية المدرجة أدناه ولكن يمكن تعطيلها باستخدام الكلمة المفتاحية .Cm no . يمكن تجاوز القيم المبدئية عن طريق تحديد كلمة مفتاحية واحدة أو أكثر من الكلمات أدناه، مفصولة بمسافة بيضاء. تقبل جميع الكلمات المفتاحية معطيات، مثل: .Qq crash:2m . .Bl -tag -width Ds .It Cm crash:duration يحدد مدة رفض العملاء الذين يتسببون في انهيار .Xr sshd 8 (المبدئي: 90s). .It Cm authfail:duration يحدد مدة رفض العملاء الذين يقطعون الاتصال بعد إجراء محاولة استيثاق غير ناجحة أو أكثر (المبدئي: 5s). .It Cm invaliduser:duration يحدد مدة رفض العملاء الذين يحاولون الولوج باستخدام مستخدم غير صالح (المبدئي: 5s). .It Cm refuseconnection:duration يحدد مدة رفض العملاء الذين حُظر اتصالهم إداريًا عبر خيار .Cm RefuseConnection (المبدئي: 10s). .It Cm noauth:duration يحدد مدة رفض العملاء الذين يقطعون الاتصال دون محاولة الاستيثاق (المبدئي: 1s). ينبغي استخدام مهلة الانقطاع هذه بحذر وإلا فقد تعاقب أدوات الفحص المشروعة مثل .Xr ssh-keyscan 1 . .It Cm grace-exceeded:duration يحدد مدة رفض العملاء الذين يفشلون في الاستيثاق بعد مرور وقت .Cm LoginGraceTime (المبدئي: 10s). .It Cm max:duration يحدد الحد الأقصى للوقت الذي سيُرفض فيه وصول نطاق عناوين مصدر معين (المبدئي: 10m). ستتراكم العقوبات المتكررة حتى تصل إلى هذا الحد الأقصى. .It Cm min:duration يحدد الحد الأدنى للعقوبة التي يجب أن تراكم قبل بدء التنفيذ (المبدئي: 15s). .It Cm max-sources4:number , max-sources6:number يحدد الحد الأقصى لعدد نطاقات عناوين IPv4 و IPv6 للعملاء المطلوب تتبعها لفرض العقوبات (المبدئي: 65536 لكليهما). .It Cm overflow:mode يتحكم في سلوك الخادوم عند تجاوز .Cm max-sources4 أو .Cm max-sources6 . يوجد وضاع تشغيل: .Cm deny-all ، الذي يرفض جميع الاتصالات الواردة باستثناء تلك المعفاة عبر قائمة .Cm PerSourcePenaltyExemptList حتى تنتهي صلاحية العقوبة، و .Cm permissive ، الذي يسمح بالاتصالات الجديدة عن طريق إزالة العقوبات الحالية مبكرًا (المبدئي: permissive). لاحظ أن عقوبات العميل التي تقل عن عتبة الحد الأدنى .Cm min تُحسب ضمن العدد الإجمالي للعقوبات المتتبعة. تُتتبّع عناوين IPv4 و IPv6 بشكل منفصل، لذا فإن الطفح في أحدهما لن يؤثر على الآخر. .It Cm overflow6:mode يسمح بتحديد وضع طفح مختلف لعناوين IPv6. السلوك المبدئي هو استخدام وضع الطفح نفسه الذي حُدّد لـ IPv4. .El .It Cm PerSourcePenaltyExemptList يحدد قائمة مفصولة بفاصلة من العناوين لإعفائها من العقوبات. قد تحتوي هذه القائمة على محارف بديلة ونطاقات عناوين بتنسيق CIDR‏ (address/masklen). لاحظ أن طول القناع المقدم يجب أن يكون متسقًا مع العنوان - يُعد تحديد طول قناع طويل جدًا للعنوان أو قناع يحتوي على بتات مضبوطة في جزء المضيف من العنوان خطأً. على سبيل المثال، 192.0.2.0/33 و192.0.2.0/8، على التوالي. السلوك المبدئي هو عدم إعفاء أي عناوين. .It Cm PidFile يحدد الملف الذي يحتوي على معرف العملية لعفريت SSH، أو .Cm none لعدم كتابة أي ملف. القيمة المبدئية هي .Pa /run/sshd.pid . .It Cm Port يُحدد رقم المنفذ الذي يستمع إليه .Xr sshd 8 . القيمة المبدئية هي 22. يُسمح بخيارات متعددة من هذا النوع. انظر أيضًا .Cm ListenAddress . .It Cm PrintLastLog يحدد ما إذا كان ينبغي لـ .Xr sshd 8 طباعة تاريخ ووقت آخر ولوج للمستخدم عندما يلج تفاعليًا. القيمة المبدئية هي .Cm yes . .It Cm PrintMotd يحدد ما إذا كان ينبغي لـ .Xr sshd 8 طباعة .Pa /etc/motd عندما يلج المستخدم تفاعليًا. (في بعض الأنظمة، تُطبع أيضًا بواسطة الصدفة، أو ملف .Pa /etc/profile ، أو ما يعادلهما.) القيمة المبدئية هي .Cm yes . .It Cm PubkeyAcceptedAlgorithms يحدد خوارزميات التوقيع التي ستقبل لاستيثاق المفتاح العلني كقائمة من الأنماط المفصولة بفاصلة. وبدلاً من ذلك، إذا بدأت القائمة المحددة بمحرف .Sq + ، فستُلحق الخوارزميات المحددة بالمجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة المحددة بمحرف .Sq - ، فستُزال الخوارزميات المحددة (بما في ذلك المحارف البديلة) من المجموعة المبدئية بدلاً من استبدالها. وإذا بدأت القائمة المحددة بمحرف .Sq ^ ، فستُوضع الخوارزميات المحددة في رأس المجموعة المبدئية. القيمة المبدئية لهذا الخيار هي: .Bd -literal -offset 3n ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, webauthn-sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, webauthn-sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 .Ed .Pp يمكن أيضًا الحصول على قائمة خوارزميات التوقيع المتاحة باستخدام .Qq ssh -Q PubkeyAcceptedAlgorithms . .It Cm PubkeyAuthOptions يُضبط خيارًا واحدًا أو أكثر من خيارات استيثاق المفتاح العلني. الكلمات المفتاحية المدعومة هي: .Cm none (المبدئي؛ ويشير إلى عدم تمكين أي خيارات إضافية)، و .Cm touch-required و .Cm verify-required . .Pp يتسبب خيار .Cm touch-required في جعل استيثاق المفتاح العلني باستخدام خوارزمية موثق FIDO (أي\& .Cm ecdsa-sk أو .Cm ed25519-sk ) يتطلب دائمًا أن يشهد التوقيع على أن مستخدمًا حاضرًا فعليًا قد أكد الاستيثاق صراحةً (عادةً عن طريق لمس الموثق). يتطلب .Xr sshd 8 مبدئيًا حضور المستخدم ما لم يُتجاوز ذلك باستخدام خيار في authorized_keys. تعطل راية .Cm touch-required هذا التجاوز. .Pp يتطلب خيار .Cm verify-required أن يشهد توقيع مفتاح FIDO بأنه تحقق من المستخدم، على سبيل المثال عبر رمز PIN. .Pp ليس لخياري .Cm touch-required أو .Cm verify-required أي تأثير على أنواع المفاتيح العلنية الأخرى غير التابعة لـ FIDO. .It Cm PubkeyAuthentication يحدد ما إذا كان استيثاق المفتاح العلني مسموحًا به. القيمة المبدئية هي .Cm yes . .It Cm RefuseConnection يشير إلى أنه يجب على .Xr sshd 8 إنهاء الاتصال دون قيد أو شرط. بالإضافة إلى ذلك، قد تُسجّل عقوبة .Cm refuseconnection ضد مصدر الاتصال إذا كانت خيارات .Cm PerSourcePenalties مُمكّنة. هذا الخيار مفيد فقط في كتلة .Cm Match . .It Cm RekeyLimit يُحدد الحد الأقصى لكمية البيانات التي يمكن إرسالها أو استقبالها قبل إعادة تفاوض مفتاح الجلسة، متبوعًا اختياريًا بالحد الأقصى للوقت الذي يمكن أن يمر قبل إعادة تفاوض مفتاح الجلسة. يُحدد المعطى الأول بالبايت وقد يحتوي على لاحقة .Sq K ، أو .Sq M ، أو .Sq G للإشارة إلى كيلوبايت، أو ميجابايت، أو جيجابايت، على التوالي. تتراوح القيمة المبدئية بين .Sq 1G و .Sq 4G ، اعتمادًا على التشفير. تُحدد القيمة الثانية الاختيارية بالثواني ويمكن أن تستخدم أيًا من الوحدات الموثقة في قسم .Sx TIME FORMATS . القيمة المبدئية لـ .Cm RekeyLimit هي .Cm default none ، مما يعني أن إعادة تشكيل المفاتيح تُجرى بعد إرسال أو استقبال كمية البيانات المبدئية للتشفير ولا تُجرى أي إعادة تشكيل للمفاتيح على أساس الوقت. .It Cm RequiredRSASize يحدد الحد الأدنى لحجم مفتاح RSA (بالبت) الذي سيقبله .Xr sshd 8 . ستُرفض مفاتيح الاستيثاق القائمة على المستخدم والمضيف التي تقل عن هذا الحد. القيمة المبدئية هي .Cm 1024 بت. لاحظ أنه لا يمكن إلا رفع هذا الحد عن القيمة المبدئية. .It Cm RevokedKeys يحدد ملف المفاتيح العلنية الملغاة، أو .Cm none لعدم استخدام أحدها. ستُرفض المفاتيح المدرجة في هذا الملف في استيثاق المفاتيح العلنية. لاحظ أنه إذا كان هذا الملف غير قابل للقراءة، فسيُرفض استيثاق المفتاح العلني لجميع المستخدمين. يمكن تحديد المفاتيح كفملف نصي، يدرج مفتاحًا علنيًا واحدًا في كل سطر، أو كقائمة إلغاء مفاتيح OpenSSH ‏(KRL) تُنشأ بواسطة .Xr ssh-keygen 1 . يمكن الرجوع إلى هذا الملف في كل محاولة استيثاق بمفتاح علني يتلقاها .Xr sshd 8 ويجب أن تكون محتوياته متسقة في جميع الأوقات، لذا ينبغي استبداله ذريًا فقط وعدم تعديله في مكانه مطلقًا أثناء تشغيل الخادوم. لمزيد من المعلومات حول قوائم KRL، انظر قسم KEY REVOCATION LISTS في .Xr ssh-keygen 1 . .It Cm RDomain يُحدد نطاق توجيه صريح يُطبّق بعد اكتمال الاستيثاق. ستُربط جلسة المستخدم، بالإضافة إلى أي مقابس IP موجهة أو مستمعة، بنطاق التوجيه .Xr rdomain 4 هذا. إذا ضُبط نطاق التوجيه على .Cm \&%D ، فسيُطبّق النطاق الذي استُقبل فيه الاتصال الوارد. .It Cm SecurityKeyProvider يُحدد مسارًا إلى مكتبة ستُستخدم عند تحميل المفاتيح المستضافة على موثق FIDO، مما يتجاوز السلوك المبدئي المتمثل في استخدام دعم USB HID المدمج. .It Cm SetEnv يحدد متغير بيئة واحدًا أو أكثر لضبطه في الجلسات الفرعية التي يبدأها .Xr sshd 8 على صيغة .Dq NAME=VALUE . يمكن وضع قيمة البيئة بين علامتي اقتباس (على سبيل المثال إذا كانت تحتوي على محارف مسافات بيضاء). تتجاوز متغيرات البيئة المضبوطة بواسطة .Cm SetEnv البيئة المبدئية وأي متغيرات يحددها المستخدم عبر .Cm AcceptEnv أو .Cm PermitUserEnvironment . .It Cm SshdAuthPath يتجاوز المسار المبدئي للملف الثنائي .Cm sshd-auth الذي يُستدعى لإكمال استيثاق المستخدم. المسار المبدئي هو .Pa /usr/lib/ssh/sshd-auth . هذا الخيار مخصص للاستخدام بواسطة الاختبارات. .It Cm SshdSessionPath يتجاوز المسار المبدئي للملف الثنائي .Cm sshd-session الذي يُستدعى للتعامل مع كل اتصال. المسار المبدئي هو .Pa /usr/lib/ssh/sshd-session . هذا الخيار مخصص للاستخدام بواسطة الاختبارات. .It Cm StreamLocalBindMask يضبط قناع نمط إنشاء الملفات الثماني .Pq umask المستخدم عند إنشاء ملف مقبس نطاق يونكس لتوجيه المنافذ المحلي أو البعيد. يُستخدم هذا الخيار فقط لتوجيه المنافذ إلى ملف مقبس نطاق يونكس. .Pp القيمة المبدئية هي 0177، والتي تنشئ ملف مقبس نطاق-يونكس قابل للقراءة والكتابة من قبل المالك فقط. لاحظ أن ليس كل أنظمة التشغيل تحترم وضع الملف على ملفات مقابس نطاق-يونكس. .It Cm StreamLocalBindUnlink يُحدد ما إذا كان يجب إزالة ملف مقبس نطاق Unix الحالي لتوجيه المنفذ المحلي أو عن بعد قبل إنشاء ملف جديد. إذا كان ملف المقبس موجودًا بالفعل ولم يُمكن .Cm StreamLocalBindUnlink ، فلن يتمكن .Nm sshd من توجيه المنفذ إلى ملف مقبس نطاق Unix. يُستخدم هذا الخيار فقط لتوجيه المنفذ إلى ملف مقبس نطاق Unix. .Pp يجب أن يكون المعطى .Cm yes أو .Cm no . القيمة المبدئية هي .Cm no . .It Cm StrictModes يحدد ما إذا كان ينبغي لـ .Xr sshd 8 فحص أوضاع الملفات وملكيتها لملفات المستخدم ودليله المنزلي قبل قبول الولوج. هذا أمر مرغوب فيه عادةً لأن المبتدئين يتركون أحيانًا دليلهم أو ملفاتهم قابلة للكتابة من الجميع دون قصد. القيمة المبدئية هي .Cm yes . لاحظ أن هذا لا ينطبق على .Cm ChrootDirectory ، الذي تُفحص أذوناته وملكيته دون قيد أو شرط. .It Cm Subsystem يضبط نظامًا فرعيًا خارجيًا (مثل عفريت نقل الملفات). يجب أن تكون المعطيات اسم نظام فرعي وأمرًا (مع معطيات اختيارية) لتنفيذه عند طلب النظام الفرعي. .Pp ينفّذ الأمر .Cm sftp-server النظام الفرعي لنقل الملفات SFTP. .Pp وبدلاً من ذلك، ينفّذ الاسم .Cm internal-sftp خادوم SFTP داخل العملية. قد يبسط هذا التشكيلات التي تستخدم .Cm ChrootDirectory لفرض جذر نظام ملفات مختلف على العملاء. يقبل هذا الخيار معطيات سطر الأوامر نفسها التي يقبلها .Cm sftp-server وعلى الرغم من أنه يعمل داخل العملية، فإن الإعدادات مثل .Cm LogLevel أو .Cm SyslogFacility لا تنطبق عليه ويجب ضبطها صراحةً عبر معطيات سطر الأوامر. .Pp مبدئيًا، لا تُعرّف أي أنظمة فرعية. .It Cm SyslogFacility يُعطى رمز المرفق الذي يُستخدم عند تسجيل الرسائل من .Xr sshd 8 . القيم المحتملة هي: DAEMON و USER و AUTH و LOCAL0 و LOCAL1 و LOCAL2 و LOCAL3 و LOCAL4 و LOCAL5 و LOCAL6 و LOCAL7. القيمة المبدئية هي AUTH. .It Cm TCPKeepAlive يحدد ما إذا كان ينبغي للنظام إرسال رسائل إبقاء الاتصال الحي لـ TCP إلى الطرف الآخر. إذا أُرسِلت، فسيُلاحظ انقطاع الاتصال أو انهيار إحدى الآلات بشكل صحيح. ومع ذلك، هذا يعني أن الاتصالات ستنقطع إذا كان المسار معطلاً مؤقتًا، ويجد بعض الأشخاص هذا الأمر مزعجًا. من ناحية أخرى، إذا لم تُرسل رسائل إبقاء الاتصال الحي لـ TCP، فقد تظل الجلسات معلقة إلى غير مسمى على الخادوم، مما يترك مستخدمين وهميين (ghost) ويستهلك موارد الخادوم. .Pp القيمة المبدئية هي .Cm yes (لإرسال رسائل إبقاء الاتصال الحي لـ TCP)، وسيلاحظ الخادوم إذا تعطلت الشبكة أو انهار مضيف العميل. يمنع هذا بقاء الجلسات معلقة إلى غير مسمى. .Pp لتعطيل رسائل إبقاء الاتصال الحي لـ TCP، يجب ضبط القيمة على .Cm no . .It Cm TrustedUserCAKeys يحدد ملفًا يحتوي على المفاتيح العلنية لسلطات الشهادات الموثوق بها لتوقيع شهادات المستخدمين لغرض الاستيثاق، أو .Cm none لعدم استخدام أحدها. تُدرج المفاتيح مفتاحًا واحدًا في كل سطر؛ ويُسمح بالأسطر الفارغة والتعليقات التي تبدأ بـ .Ql # . إذا قُدّمت شهادة للاستيثاق وكان مفتاح سلطة الشهادات (CA) الموقع لها مدرجًا في هذا الملف، فيمكن استخدامها للاستيثاق لأي مستخدم مدرج في قائمة الكيانات الرئيسة للشهادة. لاحظ أن الشهادات التي تفتقر إلى قائمة كيانات رئيسة لن يُسمح بها للاستيثاق باستخدام .Cm TrustedUserCAKeys . لمزيد من التفاصيل حول الشهادات، انظر قسم CERTIFICATES في .Xr ssh-keygen 1 . .It Cm UnusedConnectionTimeout يُحدد ما إذا كان ينبغي لـ .Xr sshd 8 إغلاق اتصالات العملاء التي لا تحتوي على قنوات مفتوحة، وبأي سرعة. تشمل القنوات المفتوحة الصدفة النشطة، أو تنفيذ الأوامر أو جلسات الأنظمة الفرعية، أو الشبكات المتصلة، أو المقابس، أو توجيه الوكيل أو توجيه X11. لا تُعتبر مستمعات التوجيه، مثل تلك الناتجة عن راية .Fl R في .Xr ssh 1 ، قنوات مفتوحة ولا تمنع حدوث مهلة الانقطاع. تُحدد قيمة مهلة الانقطاع بالثواني أو يمكن استخدام أي من الوحدات الموثقة في قسم .Sx TIME FORMATS . .Pp لاحظ أن مهلة الانقطاع هذه تبدأ عندما يكمل اتصال العميل استيثاق المستخدم ولكن قبل أن تتاح للعميل الفرصة لفتح أي قنوات. ينبغي توخي الحذر عند استخدام قيم مهلة انقطاع قصيرة، لأنها قد لا توفر وقتًا كافيًا للعميل لطلب فتح قنواته قبل إنهاء الاتصال. .Pp القيمة المبدئية .Cm none تعني عدم إنهاء صلاحية الاتصالات أبدًا بسبب عدم وجود قنوات مفتوحة. قد يكون هذا الخيار مفيدًا بالاقتران مع .Cm ChannelTimeout . .It Cm UseDNS يُحدد ما إذا كان ينبغي لـ .Xr sshd 8 البحث عن اسم المضيف البعيد، والتحقق من أن اسم المضيف الذي حُل لعنوان IP البعيد يعود إلى عنوان IP نفسه تمامًا. .Pp إذا ضُبط هذا الخيار على .Cm no (المبدئي)، فيمكن استخدام العناوين فقط وليس أسماء المضيفين في توجيهات .Cm from في .Pa ~/.ssh/authorized_keys وتوجيهات .Cm Host في كتلة .Cm Match لـ .Nm . .It Cm UsePAM يُمكن واجهة وحدات الاستيثاق القابلة للتوصيل (PAM). إذا ضُبط على .Cm yes ، فسيؤدي ذلك إلى تمكين استيثاق PAM باستخدام .Cm KbdInteractiveAuthentication و .Cm PasswordAuthentication بالإضافة إلى معالجة وحدات حساب وجلسة PAM لجميع أنواع الاستيثاق. .Pp نظرًا لأن استيثاق PAM التفاعلي عبر لوحة المفاتيح يؤدي عادةً دورًا مكافئًا لاستيثاق كلمة السر، ينبغي لك تعطيل إما .Cm PasswordAuthentication أو .Cm KbdInteractiveAuthentication . .Pp إذا مُكّن .Cm UsePAM ، فلن تتمكن من تشغيل .Xr sshd 8 كمستخدم غير جذر. القيمة المبدئية هي .Cm no . .It Cm VersionAddendum يحدد اختياريًا نصًا إضافيًا لإلحاقه بلافطة بروتوكول SSH التي يرسلها الخادوم عند الاتصال. القيمة المبدئية هي .Cm none . .It Cm X11DisplayOffset يحدد أول رقم عرض متاح لتوجيه X11 الخاص بـ .Xr sshd 8 Ns 's . يمنع هذا sshd من التداخل مع خواديم X11 الحقيقية. القيمة المبدئية هي 10. .It Cm X11Forwarding يحدد ما إذا كان توجيه X11 مسموحًا به. يجب أن يكون المعطى .Cm yes أو .Cm no . القيمة المبدئية هي .Cm no . .Pp عند تمكين توجيه X11، قد يكون هناك تعرض إضافي للخادوم وشاشات العرض الخاصة بالعميل إذا أُعِدّ عرض وكيل .Xr sshd 8 للاستماع على العنوان العام (انظر .Cm X11UseLocalhost ) ، على الرغم من أن هذا ليس السلوك المبدئي. بالإضافة إلى ذلك، يحدث انتحال الاستيثاق والتحقق من بيانات الاستيثاق واستبدالها على جانب العميل. تكمن المخاطر الأمنية لاستخدام توجيه X11 في أن خادوم عرض X11 الخاص بالعميل قد يكون عرضة للهجوم عندما يطلب عميل SSH التوجيه (انظر التحذيرات الخاصة بـ .Cm ForwardX11 في .Xr ssh_config 5 ) . قد يكون لمسؤول النظام موقف يرغب فيه في حماية العملاء الذين قد يعرضون أنفسهم للهجوم عن طريق طلب توجيه X11 دون علم، الأمر الذي قد يبرر الضبط على .Cm no . .Pp لاحظ أن تعطيل توجيه X11 لا يمنع المستخدمين من توجيه حركة مرور X11، حيث يمكن للمستخدمين دائمًا تثبيت أدوات التوجيه الخاصة بهم. .It Cm X11UseLocalhost يحدد ما إذا كان ينبغي لـ .Xr sshd 8 ربط خادوم توجيه X11 بعنون الحلقة المحلية (loopback) أو بالعنوان العام (wildcard). يربط sshd مبدئيًا خادوم التوجيه بعنوان الحلقة المحلية ويضبط جزء اسم المضيف لمتغير البيئة .Ev DISPLAY على .Cm localhost . يمنع هذا المضيفين البعيدين من الاتصال بعرض الوكيل. ومع ذلك، قد لا تعمل بعض عملاء X11 الأقدم مع هذا التشكيل. يمكن ضبط .Cm X11UseLocalhost على .Cm no لتحديد وجوب ربط خادوم التوجيه بالعنوان العام. يجب أن يكون المعطى .Cm yes أو .Cm no . القيمة المبدئية هي .Cm yes . .It Cm XAuthLocation يحدد اسم المسار الكامل لبرنامج .Xr xauth 1 ، أو .Cm none لعدم استخدام أحدها. القيمة المبدئية هي .Pa /usr/bin/xauth . .El .Sh صيغ الوقت يمكن التعبير عن معطيات سطر الأوامر وخيارات ملف التشكيل لـ .Xr sshd 8 التي تحدد الوقت باستخدام تسلسل على الصيغة التالية: .Sm off .Ar time Op Ar qualifier ، .Sm on حيث .Ar time هو قيمة عددية صحيحة موجبة و .Ar qualifier هو أحد التالي: .Pp .Bl -tag -width Ds -compact -offset indent .It Aq Cm none ثوانٍ .It Cm s | Cm S ثوانٍ .It Cm m | Cm M دقائق .It Cm h | Cm H ساعات .It Cm d | Cm D أيام .It Cm w | Cm W أسابيع .El .Pp يُجمع كل عضو في التسلسل معًا لحساب القيمة الإجمالية للوقت. .Pp أمثلة على صيغ الوقت: .Pp .Bl -tag -width Ds -compact -offset indent .It 600 600 seconds (10 minutes) .It 10m 10 minutes .It 1h30m 1 hour 30 minutes (90 minutes) .El .Sh رموز (TOKENS) يمكن أن تستفيد المعطيات الممررة لبعض الكلمات المفتاحية من الرموز (tokens)، والتي تُوسّع في وقت التشغيل. تُوسّع الرموز دون وضع علامات اقتباس أو هروب لمحارف الصدفة. وتقع على عاتق المسؤول مسؤولية التأكد من أنها آمنة في سياق استخدامها. .Pp الرموز المدعومة في .Nm sshd_config هي: .Pp .Bl -tag -width XXXX -offset indent -compact .It %% حرف .Sq % مجرد. .It \&%C يحدد نقاط نهاية الاتصال، ويحتوي على أربع قيم مفصولة بمسافات: عنوان العميل، ورقم منفذ العميل، وعنوان الخادوم، ورقم منفذ الخادوم. .It \&%D نطاق التوجيه الذي استُقبل فيه الاتصال الوارد. .It %F بصمة مفتاح سلطة الشهادات (CA). .It %f بصمة المفتاح أو الشهادة. .It %h الدليل المنزلي للمستخدم. .It %i معرف المفتاح في الشهادة. .It %K مفتاح سلطة الشهادات (CA) المرمز بقاعدة base64. .It %k المفتاح أو الشهادة المرمزة بقاعدة base64 لغرض الاستيثاق. .It %s الرقم التسلسلي للشهادة. .It \&%T نوع مفتاح سلطة الشهادات (CA). .It %t نوع المفتاح أو الشهادة. .It \&%U المعرف الرقمي للمستخدم المستهدف. .It %u اسم المستخدم. .El .Pp يقبل الأمر .Cm AuthorizedKeysCommand الرموز التالية: %%, %C, %D, %f, %h, %k, %t, %U، و %u. .Pp يقبل خيار .Cm AuthorizedKeysFile الرموز التالية: %%, %h, %U، و %u. .Pp يقبل الأمر .Cm AuthorizedPrincipalsCommand الرموز التالية: %%, %C, %D, %F, %f, %h, %i, %K, %k, %s, %T, %t, %U، و %u. .Pp يقبل الكلمة المفتاحية .Cm AuthorizedPrincipalsFile الرموز %%, %h, %U, و %u. .Pp يقبل الكلمة المفتاحية .Cm ChrootDirectory الرموز %%, %h, %U, و %u. .Pp يقبل الكلمة المفتاحية .Cm RoutingDomain الرمز %D. .Sh الملفات .Bl -tag -width Ds .It Pa /etc/ssh/sshd_config يحتوي على بيانات الضبط لـ .Xr sshd 8 . يجب أن يكون هذا الملف قابلاً للكتابة من قِبل الجذر (root) فقط، ولكن يوصى (وإن لم يكن ضرورياً) أن يكون قابلاً للقراءة من الجميع. .El .Sh انظر أيضًا .Xr sftp-server 8 ، .Xr sshd 8 .Sh المؤلفون .An -nosplit يعد OpenSSH مشتقاً من إصدار ssh 1.2.12 الأصلي والمجاني الذي طوره .An Tatu Ylonen . وقد أزال كل من .An Aaron Campbell ، Bob Beck ، Markus Friedl ، Niels Provos ، .An Theo de Raadt و .An Dug Song العديد من العيوب البرمجية، وأعادوا إضافة ميزات أحدث وأنشأوا OpenSSH. ساهم .An Markus Friedl بدعم إصدارات بروتوكول SSH 1.5 و 2.0. كما ساهم .An Niels Provos و .An Markus Friedl بدعم فصل الامتيازات. .Pp .Sh ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .Pp هذه الترجمة هي وثيقة مجانية؛ راجع .Lk https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .Pp إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .Mt kde-l10n-ar@kde.org .Me .