إصلاح خطأ ويندوز: مشكلة الامتثال لسياسة WinRM WS
وصف الخطأ
This error occurs when a client computer attempts to establish a remote connection via Windows Remote Management (WinRM), but the configuration parameters or authentication protocols requested by the client do not match the capabilities or security policies configured on the destination server.
على وجه التحديد، DeliverTo يحتوي المجال في رأس طلب SOAP على خيارات التسليم أو الأمان (مثل متطلبات التشفير المحددة أو أنواع الشهادات أو توجيه الرسائل) التي لم يتم تكوين خدمة WinRM المتلقية لقبولها أو فهمها. يحدث هذا عدم التطابق عادة بعد تحديثات النظام أو التغييرات في سياسات مجموعة Active Directory ، أو عند محاولة خلط طرق مصادقة مختلفة مثل Kerberos و Basic و CredSSP دون نقاط نهاية مطابقة مناسبة.
إصلاحات خطوة بخطوة
الطريقة 1: تمكين وتكوين أنواع مصادقة WinRM
غالبًا ما يحدث هذا الخطأ لأن الخادم والعميل يحاولان استخدام طرق مصادقة مختلفة. يقوم تمكين أنواع المصادقة اللازمة على كل من الآلات بحل النزاع.
- اضغط على Start قائمة، نوع
cmdانقر على الزر الأيمن Command Prompt ، وتحديد Run as administrator. - قم بتشغيل الأمر التالي للتحقق من تكوين WinRM الحالي:
winrm get winrm/config - قم بتمكين Negotiate المصادقة (المعيار الافتراضي) على العميل والخادم عن طريق تنفيذ:
winrm set winrm/config/client/auth @{Negotiate="true"} winrm set winrm/config/service/auth @{Negotiate="true"} - إذا كان سير عملك يتطلب CredSSP أو Basic المصادقة، تمكينهم صراحة باستخدام هذه الأوامر:
winrm set winrm/config/client/auth @{CredSSP="true"} winrm set winrm/config/service/auth @{CredSSP="true"} - إعادة تشغيل خدمة WinRM لتطبيق التغييرات:
net stop winrm net start winrm
الطريقة 2: تكوين قائمة المضيفين الموثوق بهم
إذا كنت تتصل بخادم خارج نطاق Active Directory المحلي الخاص بك، يجب أن يثق العميل بشكل صريح بعنوان IP الوجهة أو اسم المضيف.
- افتح Command Prompt كمدير
- Run the following command to allow the client to connect to the specific destination IP address or hostname (replace
SERVER_IP_OR_NAMEمع وجهتك الفعلية):winrm set winrm/config/client @{TrustedHosts="SERVER_IP_OR_NAME"} - إذا كنت تعمل في بيئة مختبر آمنة ومعزولة وتريد قبول جميع المضيفين ، فيمكنك استخدام بطاقة غريبة (غير موصى بها في بيئات الإنتاج):
winrm set winrm/config/client @{TrustedHosts="*"} - تحقق من إضافة المضيف بنجاح إلى القائمة:
winrm get winrm/config/client
طريقة 3: إعادة ضبط WinRM إلى التكوين الافتراضي
إذا أصبح التكوين مشوهًا بشكل كبير أو فاسدًا ، فإن إعادة تعيين مستمعين WinRM وإعدادات الخدمة إلى الإعدادات الافتراضية النظيفة ستزيل عدم تطابق السياسة.
- افتح Command Prompt كمدير
- تشغيل أداة التكوين السريع لإصلاح الخدمة، فتح منافذ جدار الحماية، وإعادة إنشاء المستمعين الافتراضيين:
winrm quickconfig - النوع
y(نعم) عند طلب إجراء التغييرات المطلوبة وتهيئة استثناءات جدار الحماية تلقائيًا. - إذا كنت تعمل مع PowerShell، يمكنك بدلا من ذلك تشغيل هذه الأوامر داخل نافذة PowerShell مرتفعة لفرض الامتثال:
Enable-PSRemoting -Force
الطريقة 4: تعديل سياسة المجموعة المحلية لعميل WinRM
يمكن لسياسة المجموعة في ويندوز فرض خيارات أمنية صارمة تتجاوز تكوينات سطر الأوامر المحلية لـ WinRM. يضمن تعديل هذه الإعدادات استخدام العميل لمعلمات امتثال خيارات السياسة.
- اضغط
Windows Key + R، نوعgpedit.mscو اضغط Enter لفتح محرر سياسة المجموعة المحلية. - انتقل إلى مسار الدليل التالي:
Computer Configuration->Administrative Templates->Windows Components->Windows Remote Management (WinRM)->WinRM Client - ابحث عن المكان المطلوب Allow unencrypted traffic ثم انقر مرتين عليه Enabled إذا كانت بيئتك لا تستخدم HTTPS/SSL، أو تركها مرتبة وفقًا لتوجيهات أمان شركتك.
- ابحث عن المكان المطلوب Disallow Digest authentication و وضعته على Disabled أو Not Configured لتحقيق أقصى قدر من الخيارات
- افتح Command Prompt كمدير وتجبر تغييرات السياسة على التأثير على الفور:
gpupdate /force
قد يكون هناك بعض الأخطاء. Learn Microsoft