قم بتكوين اتصال Point-to-Site VPN بشبكة VNet باستخدام مصادقة شهادة Azure: PowerShell

تساعدك هذه المقالة على توصيل العملاء الفرديين الذين يقومون بتشغيل Windows أو Linux أو macOS بأمان بـ Azure VNet. تعد اتصالات VPN من نقطة إلى موقع مفيدة عندما تريد الاتصال بشبكة VNet الخاصة بك من موقع بعيد، مثل عندما تعمل عن بُعد من المنزل أو من خلال مؤتمر. يمكنك أيضًا استخدام P2S بدلاً من Site-to-Site VPN عندما يكون لديك عدد قليل فقط من العملاء الذين يحتاجون إلى الاتصال بشبكة VNet. لا تتطلب الاتصالات من نقطة إلى موقع جهاز VPN أو عنوان IP عام. ينشئ P2S اتصال VPN عبر SSTP (بروتوكول نفق مأخذ التوصيل الآمن) أو IKEv2.

Connect from a computer to an Azure VNet - point-to-site connection diagram

لمزيد من المعلومات حول VPN من نقطة إلى موقع، راجع نبذة عن VPN من نقطة إلى موقع. لإنشاء هذا التكوين باستخدام مدخل Microsoft Azure، راجع تكوين شبكة VPN من نقطة إلى موقع باستخدام مدخل Azure.

تستخدم اتصالات مصادقة شهادة Azure الأصلية من نقطة إلى موقع العناصر التالية، التي تقوم بتكوينها في هذا التمرين:

  • بوابة VPN على أساس المسار.
  • المفتاح العام (ملف .cer) لشهادة الجذر، والتي يتم تحميلها إلى Azure. بمجرد تحميل الشهادة، تعتبر شهادة موثوقة وتستخدم للمصادقة.
  • شهادة العميل التي تم إنشاؤها من الشهادة الجذر. تم تثبيت شهادة العميل على كل كمبيوتر عميل سيتم توصيله بشبكة VNet. تُستخدم هذه الشهادة لمصادقة العميل.
  • تكوين عميل VPN. يتم تكوين عميل VPN باستخدام ملفات تكوين عميل VPN. تحتوي هذه الملفات على المعلومات الضرورية للعميل للاتصال بشبكة VNet. تقوم الملفات بتكوين عميل VPN الموجود الأصلي لنظام التشغيل. يجب تكوين كل عميل يتصل باستخدام الإعدادات الموجودة في ملفات التكوين.

المتطلبات الأساسية

تحقق من أن لديك اشتراك Azure. إذا لم يكن لديك اشتراك Azure بالفعل، يمكنك تنشيط ميزات المشترك في MSDN خاصتك أو الاشتراك في حساب مجاني.

Azure PowerShell

هام

يمكن للعديد من الخطوات الواردة في هذه المقالة استخدام Azure Cloud Shell. ومع ذلك، لا يمكنك استخدام Cloud Shell لإنشاء شهادات. بالإضافة إلى ذلك، لتحميل المفتاح العام للشهادة الجذر، يجب عليك إما استخدام Azure PowerShell محليًا أو مدخل Microsoft Azure.

تستخدم هذه المقالة cmdlets PowerShell. لتشغيل cmdlets، يمكنك استخدام Azure Cloud Shell. Azure Cloud Shell عبارة عن واجهة تفاعلية مجانية يُمكنك استخدامها لتنفيذ الخطوات الواردة في هذه المقالة. يحتوي على أدوات Azure الشائعة والمثبتة مسبقًا والتي تم تكوينها للاستخدام مع حسابك.

لفتح Cloud Shell، ما عليك سوى تحديد "Try it" من الزاوية العليا اليسرى لكتلة التعليمة البرمجية. يمكنك أيضاً تشغيل Cloud Shell في علامة تبويب مستعرض منفصلة بالانتقال إلى https://shell.azure.com/powershell. حدد "Copy" لنسخ كتل التعليمات البرمجية، ولصقها في Cloud Shell، ثم اضغط على مفتاح الإدخال لتشغيلها.

يمكن أيضاً تثبيت cmdlets Azure PowerShell وتشغيله محلياً على جهازك. تحديث cmdlets PowerShell بشكل متكرر يؤدي عدم تثبيت أحدث إصدار إلى فشل القيم المحددة في الإرشادات. لمعرفة إصدار Azure PowerShell المُثبت على جهازك، يمكن استخدام Get-Module -ListAvailable Az cmdlet. للتثبيت أو التحديث، راجع تثبيت وحدة Azure PowerShell.

تسجيل الدخول

إذا كنت تُشغل PowerShell محليًا؛ افتح وحدة تحكم PowerShell بامتيازات مرتفعة، واتصل بحساب Azure الخاص بك. يطالبك Connect-AzAccountcmdlet ببيانات الاعتماد. بعد المصادقة، يقوم بتنزيل إعدادات حسابك بحيث تكون متاحة لـ Azure PowerShell.

إذا كنت تستخدم Azure Cloud Shell بدلًا من تشغيل PowerShell محليًا، فستلاحظ أنك لست بحاجة إلى تشغيل Connect-AzAccount. يتصل Azure Cloud Shell بحساب Azure الخاص بك تلقائيًا بعد تحديد Try It.

  1. إذا كنت تستخدم PowerShell محليًا، فقم بتسجيل الدخول.

    Connect-AzAccount
    
  2. إذا كان لديك أكثر من اشتراك واحد، فاحصل على قائمة باشتراكات Azure.

    Get-AzSubscription
    
  3. حدد الاشتراك الذي تريد استخدامه.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    

إعلان المتغيرات

نحن نستخدم المتغيرات لهذه المقالة بحيث يمكنك بسهولة تغيير القيم لتطبيقها على بيئتك الخاصة دون الحاجة إلى تغيير الأمثلة نفسها. قم بتعريف المتغيرات التي تريد استخدامها. يمكنك استخدام النموذج التالي، مع استبدال القيم الخاصة بك عند الضرورة. إذا أغلقت جلسة PowerShell/ Cloud Shell في أي وقت أثناء الاستخدام، فما عليك سوى نسخ القيم ولصقها مرة أخرى لإعادة تعريف المتغيرات.

$VNetName  = "VNet1"
$FESubName = "FrontEnd"
$GWSubName = "GatewaySubnet"
$VNetPrefix = "10.1.0.0/16"
$FESubPrefix = "10.1.0.0/24"
$GWSubPrefix = "10.1.255.0/27"
$VPNClientAddressPool = "172.16.201.0/24"
$RG = "TestRG1"
$Location = "EastUS"
$GWName = "VNet1GW"
$GWIPName = "VNet1GWpip"
$GWIPconfName = "gwipconf"
$DNS = "10.2.1.4"

إنشاء شبكة افتراضية

  1. إنشاء مجموعة موارد.

    New-AzResourceGroup -Name $RG -Location $Location
    
  2. قم بإنشاء تكوينات الشبكة الفرعية للشبكة الظاهرية، وقم بتسميتها FrontEnd و GatewaySubnet. يجب أن تكون هذه البادئات جزءًا من مساحة عنوان VNet التي قمت بإعلانها.

    $fesub = New-AzVirtualNetworkSubnetConfig -Name $FESubName -AddressPrefix $FESubPrefix
    $gwsub = New-AzVirtualNetworkSubnetConfig -Name $GWSubName -AddressPrefix $GWSubPrefix
    
  3. إنشاء شبكة الاتصال الظاهرية.

    في هذا المثال، معلمة خادم -DnsServer اختيارية. لا يؤدي تحديد القيمة إلى إنشاء خادم DNS جديد. عنوان IP الخاص بخادم DNS الذي تحدده يجب أن يكون خادم DNS الذي يمكنه حل الأسماء الخاصة بالموارد التي تتصل بها من VNet الخاصة بك. يستخدم هذا المثال عنوان IP خاصًا، ولكن من المحتمل ألا يكون هذا هو عنوان IP لخادم DNS. تأكد من استخدام القيم الخاصة بك. يتم استخدام القيمة التي تحددها بواسطة الموارد التي تقوم بنشرها على VNet، وليس بواسطة اتصال P2S أو عميل VPN.

        New-AzVirtualNetwork `
       -ResourceGroupName $RG `
       -Location $Location `
       -Name $VNetName `
       -AddressPrefix $VNetPrefix `
       -Subnet $fesub, $gwsub `
       -DnsServer $DNS
    
  4. حدد متغيرات الشبكة الظاهرية التي قمت بإنشائها.

    $vnet = Get-AzVirtualNetwork -Name $VNetName -ResourceGroupName $RG
    $subnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    
  5. يجب أن تحتوي بوابة VPN على عنوان IP عام. يمكنك أولًا طلب مورد عنوان IP ثم الرجوع إليه عند إنشاء بوابة الشبكة الظاهرية. يتم تعيين عنوان IP العام ديناميكيًا للمورد عند إنشاء بوابة VPN. تدعم VPN Gateway حاليًا تخصيص عنوان IP العام الديناميكي فقط. لا يمكنك طلب تعيين عنوان IP عام ثابت. ومع ذلك، هذا لا يعني أن عنوان IP يتغير بعد تعيينه لبوابة VPN الخاصة بك. المرة الوحيدة التي يتغير فيها عنوان IP العام هي عندما يتم حذف البوابة وإعادة إنشائها. لا يتغير عبر تغيير الحجم أو إعادة التعيين أو الصيانة الداخلية الأخرى/ترقيات بوابة VPN الخاصة بك.

    طلب عنوان IP عام تم تعيينه ديناميكيًا.

    $pip = New-AzPublicIpAddress -Name $GWIPName -ResourceGroupName $RG -Location $Location -AllocationMethod Dynamic
    $ipconf = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName -Subnet $subnet -PublicIpAddress $pip
    

إنشاء بوابة VPN

في هذه الخطوة، يمكنك إنشاء بوابة الشبكة الظاهرية لـ VNet.

  • يجب أن يكون -GatewayType Vpn ويجب أن يكون -VpnType RouteBased.
  • يتم استخدام -VpnClientProtocol لتحديد أنواع الأنفاق التي ترغب في تمكينها. خيارات النفق هي OpenVPN وSSTP و IKEv2. يمكنك اختيار تمكين واحد منهم أو أي مجموعة مدعومة. إذا كنت تريد تمكين أنواع متعددة، فحدد الأسماء المفصولة بفاصلة. لا يمكن تمكين OpenVPN وSSTP معًا. سيستخدم عميل strongSwan على Android و Linux وعميل IKEv2 VPN الأصلي على iOS و macOS نوع نفق IKEv2 فقط للاتصال. سيحاول عملاء Windows استخدام IKEv2 أولاً، وإذا لم يتصل ذلك، فإنهم سيعودون إلى SSTP. يمكنك استخدام عميل OpenVPN للاتصال بنفق OpenVPN.
  • لا تدعم وحدة SKU "الأساسية" لبوابة الشبكة الافتراضية مصادقة IKEv2 أو OpenVPN أو RADIUS. إذا كنت تخطط لتوصيل عملاء Mac بشبكتك الظاهرية، فلا تستخدم SKU الأساسي.
  • يمكن أن تستغرق بوابة VPN 45 دقيقة أو أكثر لإكمالها، اعتمادًا على بوابة sku التي تحددها.
  1. في هذه الخطوة، يمكنك إنشاء بوابة الشبكة الظاهرية لـ VNet. يستغرق إنشاء البوابة حوالي 45 دقيقة تقريبًا.

    New-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG `
    -Location $Location -IpConfigurations $ipconf -GatewayType Vpn `
    -VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw1 -VpnClientProtocol "IKEv2"
    
  2. بمجرد إنشاء البوابة، يمكنك عرضها باستخدام المثال التالي. إذا قمت بإغلاق PowerShell أو انتهت مهلته أثناء إنشاء البوابة، فيمكنك الإعلان عن المتغيرات مرة أخرى.

    Get-AzVirtualNetworkGateway -Name $GWName -ResourceGroup $RG
    

إضافة قائمة عناوين عميل VPN

بعد انتهاء إنشاء بوابة VPN، يمكنك إضافة تجمع عناوين عميل VPN. تجمع عناوين عميل VPN هو النطاق الذي يتلقى منه عملاء VPN عنوان IP عند الاتصال. استخدم نطاق عناوين IP خاص لا يتداخل مع الموقع المحلي الذي تتصل منه، أو VNet الذي تريد الاتصال بها.

في هذا المثال، يتم الإعلان عن تجمع عناوين عميل VPN كمتغير في خطوة سابقة.

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName $RG -Name $GWName
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientAddressPool $VPNClientAddressPool

إنشاء الشهادات

هام

لا يمكنك إنشاء شهادات باستخدام Azure Cloud Shell. يجب عليك استخدام إحدى الطرق الموضحة في هذا القسم. إذا كنت ترغب في استخدام PowerShell، فيجب عليك تثبيته محليًا.

يتم استخدام الشهادات بواسطة Azure لمصادقة عملاء VPN لشبكات VPN من نقطة إلى موقع. تحميل معلومات المفتاح العام للشهادة الجذر إلى Azure. ثم يعتبر المفتاح العام "موثوقًا به". يجب إنشاء شهادات العميل من الشهادة الجذر الموثوق بها، ثم تثبيتها على كل كمبيوتر عميل في مخزن الشهادات Certificates-Current User/Personal. تُستخدم شهادة العميل لمصادقة العميل عند بدء الاتصال بشبكة VNet.

إذا كنت تستخدم شهادات موقعة ذاتيًا، فيجب إنشاؤها باستخدام معلمات محددة. يمكنك إنشاء شهادة موقعة ذاتيًا باستخدام إرشادات PowerShell و Windows 10، أو إذا لم يكن لديك Windows 10، فيمكنك استخدام MakeCert. من المهم اتباع الخطوات الواردة في الإرشادات عند إنشاء شهادات جذر موقعة ذاتيًا وشهادات عميل. وإلا، فلن تكون الشهادات التي تقوم بإنشائها متوافقة مع اتصالات P2S وستتلقى خطأ عند الاتصال.

شهادة الجذر

  1. الحصول على ملف .cer لشهادة الجذر. يمكنك استخدام إما شهادة جذر تم إنشاؤها باستخدام حل مؤسسة (موصى به)، أو إنشاء شهادة موقعة ذاتيًا. بعد إنشاء شهادة الجذر، قم بتصدير بيانات الشهادة العامة (وليس المفتاح الخاص) كملف Base64 المشفر X.509 .cer. تقوم بتحميل هذا الملف لاحقًا إلى Azure.

    • شهادة المؤسسة: إذا كنت تستخدم حل مؤسسة، فيمكنك استخدام سلسلة الشهادات الحالية الخاصة بك. احصل على ملف .cer للشهادة الجذر التي تريد استخدامها.

    • شهادة جذر موقعة ذاتيًا: إذا كنت لا تستخدم حل شهادة مؤسسة، فقم بإنشاء شهادة جذر موقعة ذاتيًا. بخلاف ذلك، لن تكون الشهادات التي تقوم بإنشائها متوافقة مع اتصالات P2S الخاصة بك وسيتلقى العملاء خطأ في الاتصال عندما يحاولون الاتصال. يمكنك استخدام Azure PowerShell أو MakeCert أو OpenSSL. تصف الخطوات الواردة في المقالات التالية كيفية إنشاء شهادة جذر موقعة ذاتيًا متوافقة:

      • تعليمات Windows 10 PowerShell: تتطلب هذه الإرشادات Windows 10 وPowerShell لإنشاء الشهادات. يمكن تثبيت شهادات العميل التي تم إنشاؤها من شهادة الجذر على أي عميل P2S مدعوم.
      • تعليمات MakeCert: استخدم MakeCert إذا لم يكن لديك وصول إلى جهاز كمبيوتر يعمل بنظام Windows 10 لاستخدامه في إنشاء الشهادات. رغم إهمال MakeCert، لا يزال بإمكانك استخدامه لإنشاء الشهادات. يمكن تثبيت شهادات العميل التي تقوم بإنشائها من الشهادة الجذر على أي عميل P2S مدعوم.
      • تعليمات Linux.
  2. بعد إنشاء شهادة الجذر، قم بتصدير بيانات الشهادة العامة (وليس المفتاح الخاص) كملف Base64 المشفر X.509 .cer.

شهادة العميل

  1. يجب أن يكون لكل كمبيوتر عميل تقوم بتوصيله بشبكة VNet باتصال من نقطة إلى موقع شهادة عميل مثبتة. تقوم بإنشائه من الشهادة الجذر وتثبيته على كل كمبيوتر عميل. إذا لم تُثبت شهادة عميل صالحة، فستفشل المصادقة عندما يحاول العميل الاتصال بالشبكة الظاهرية.

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

    يمكنك إنشاء شهادات العميل باستخدام الطرق التالية:

    • شهادة المؤسسة:

      • إذا كنت تستخدم حل شهادة مؤسسة، فقم بإنشاء شهادة عميل بتنسيق قيمة الاسم الشائع name@yourdomain.com. استخدم هذا التنسيق بدلاً من تنسيق domain name\username.

      • تأكد من أن شهادة العميل تستند إلى قالب شهادة المستخدم الذي يحتوي على مصادقة العميل المدرجة كأول عنصر في قائمة المستخدمين. تحقق من الشهادة بالنقر نقرًا مزدوجًا عليها وعرض Enhanced Key Usage في علامة تبويب Details.

    • شهادة جذر موقعة ذاتيًا: اتبع الخطوات الواردة في إحدى مقالات شهادة P2S التالية حتى تكون شهادات العميل التي تقوم بإنشائها متوافقة مع اتصالات P2S الخاصة بك.

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

      تُنشئ الخطوات الواردة في هذه المقالات شهادة عميل متوافقة، والتي يمكنك بعد ذلك تصديرها وتوزيعها.

      • تعليمات Windows 10 PowerShell: تتطلب هذه التعليمات Windows 10 و PowerShell لإنشاء الشهادات. يمكن تثبيت الشهادات التي تم إنشاؤها على أي عميل P2S مدعوم.

      • تعليمات MakeCert: استخدم MakeCert إذا لم يكن لديك وصول إلى جهاز كمبيوتر يعمل بنظام Windows 10 لإنشاء الشهادات. رغم إهمال MakeCert، لا يزال بإمكانك استخدامه لإنشاء الشهادات. يمكنك تثبيت الشهادات التي تم إنشاؤها على أي عميل P2S مدعوم.

      • تعليمات Linux.

  2. بعد إنشاء شهادة العميل، قم بتصديرها. سيتم توزيع شهادة العميل على أجهزة كمبيوتر العميل التي ستقوم بالاتصال.

تحميل معلومات المفتاح العام لشهادة الجذر

تحقق من أن بوابة VPN الخاصة بك قد انتهت من الإنشاء. بمجرد اكتمالها، يمكنك تحميل ملف .cer (الذي يحتوي على معلومات المفتاح العام) للحصول على شهادة جذر موثوق بها إلى Azure. بمجرد تحميل بيانات الشهادة العامة، يمكن لـ Azure استخدامها لمصادقة العملاء الذين قاموا بتثبيت شهادة عميل تم إنشاؤها من الشهادة الجذر الموثوق بها. يمكنك تحميل ملفات شهادات جذر إضافية موثوق بها - ما يصل إلى 20 ملفًا - لاحقًا، إذا لزم الأمر.

ملاحظة

لا يمكنك تحميل ملف .cer باستخدام Azure Cloud Shell. يمكنك إما استخدام PowerShell محليًا على الكمبيوتر، أو يمكنك استخدام خطوات مدخل Azure.

  1. قم بالإعلان عن المتغير الخاص باسم شهادتك، مع استبدال القيمة بالقيمة الخاصة بك.

    $P2SRootCertName = "P2SRootCert.cer"
    
  2. استبدال مسار الملف مع الخاصة بك، ومن ثم قم بتشغيل cmdlites.

    $filePathForCert = "C:\cert\P2SRootCert.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64 = [system.convert]::ToBase64String($cert.RawData)
    
  3. قم بتحميل معلومات المفتاح العام إلى Azure. بمجرد تحميل معلومات الشهادة، يعتبرها Azure شهادة جذر موثوق بها. عند التحميل، تأكد من تشغيل PowerShell محليًا على الكمبيوتر، أو بدلًا من ذلك، يمكنك استخدام خطوات مدخل Azure. لا يمكنك التحميل باستخدام Azure Cloud Shell.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG1" -PublicCertData $CertBase64
    

قم بتثبيت شهادة العميل المصدرة

تساعدك الخطوات التالية على التثبيت على عميل Windows. للحصول على عملاء إضافيين ومزيد من المعلومات، راجع تثبيت شهادة عميل.

  1. بمجرد تصدير شهادة العميل، حدد موقع ملف .pfx وانسخه إلى الكمبيوتر العميل.
  2. على جهاز الكمبيوتر العميل، انقر نقرًا مزدوجًا فوق الملف .pfx لتثبيته. اترك Store LocationكـCurrent User، ثم حدد Next.
  3. في صفحة File المراد استيراده، لا تقم بإجراء أي تغييرات. حدد "Next".
  4. في صفحة Private key protection، أدخل كلمة المرور الخاصة بالشهادة، أو تحقق من صحة مبدأ الأمان، ثم حدد Next.
  5. في الصفحة Certificate Store، اترك الموقع الافتراضي، ثم حدد Next.
  6. اختر ⁧⁩إنهاء⁧⁩. في Security Warning لتثبيت الشهادة، حدد Yes. يمكنك تحديد "Yes" بشكل مريح لهذا التحذير الأمني لأنك أنشأت الشهادة.
  7. يتم الآن استيراد الشهادة بنجاح.

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

تكوين عميل VPN

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

يمكنك استخدام الأمثلة السريعة التالية لإنشاء حزمة تكوين العميل وتثبيتها. لمزيد من المعلومات حول محتويات الحزمة وإرشادات إضافية حول إنشاء ملفات تكوين عميل VPN وتثبيتها، راجع إنشاء ملفات تكوين عميل VPN وتثبيتها.

إذا كنت بحاجة إلى الإعلان عن المتغيرات الخاصة بك مرة أخرى، فيمكنك العثور عليها هنا.

لإنشاء ملفات التكوين

$profile=New-AzVpnClientConfiguration -ResourceGroupName $RG -Name $GWName -AuthenticationMethod "EapTls"

$profile.VPNProfileSASUrl

لتثبيت حزمة تكوين العميل

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

ملاحظة

يجب أن يكون لديك حقوق المسؤول على كمبيوتر عميل Windows الذي تتصل منه.

تثبيت ملفات التكوين

  1. حدد ملفات تكوين عميل VPN التي تتوافق مع بنية الكمبيوتر الذي يعمل بنظام التشغيل Windows. للحصول على بنية معالج 64 بت، اختر حزمة المثبت 'VpnClientSetupAmd64'. وللحصول على بنية معالج 32 بت، اختر حزمة المثبت 'VpnClientSetupX86'.
  2. انقر نقرًا مزدوجًا فوق الحزمة لتثبيتها. إذا ظهرت لك نافذة SmartScreen منبثقة، فحدد More info ثم Run anyway.

التحقق والاتصال

  1. قبل محاولة الاتصال، تحقق من تثبيت شهادة عميل على الكمبيوتر العميل. شهادة العميل مطلوبة للمصادقة عند استخدام نوع مصادقة شهادة Azure الأصلي. لتصدير شهادة العميل، افتح Manage User Certificates. يتم تثبيت شهادة العميل في User\Personal\Certificates الحالي.
  2. للاتصال، انتقل إلى Network Settings وانقر على VPN. يظهِر اتصال VPN اسم الشبكة الظاهرية التي يتصل بها.

10. الاتصال بـ Azure

عميل Windows VPN

ملاحظة

يجب أن يكون لديك حقوق المسؤول على كمبيوتر عميل Windows الذي تتصل منه.

  1. للاتصال بـ VNet الخاصة بك، على جهاز الكمبيوتر العميل، انتقل إلى إعدادات VPN وحدد موقع اتصال VPN الذي قمت بإنشائه. يتم تسميته بنفس اسم شبكتك الظاهرية. حدد ⁧⁩اتصال⁧⁩. قد تظهر رسالة منبثقة تشير إلى استخدام الشهادة. حدد Continue لاستخدام الامتيازات الخاصة.

  2. في صفحة حالة Connection، حدد Connect لبدء الاتصال. إذا رأيت شاشة Select Certificate، فتحقق من أن شهادة العميل المعروضة هي التي تريد استخدامها للاتصال. إذا لم يكن الأمر كذلك، فاستخدم سهم القائمة المنسدلة لتحديد الشهادة الصحيحة، ثم حدد OK.

    Connect from a Windows computer

  3. تم إجراء اتصالك.

    Connect from a computer to an Azure VNet - Point-to-Site connection diagram

إذا كنت تواجه مشكلة في الاتصال، فتحقق من العناصر التالية:

  • إذا قمت بتصدير شهادة عميل باستخدام Certificate Export Wizard، فتأكد من تصديرها كملف .pfx وتحديد تضمين كافة الشهادات في مسار الشهادة إن أمكن. عند تصديرها بهذه القيمة، يتم أيضًا تصدير معلومات شهادة الجذر. بعد تثبيت الشهادة على جهاز الكمبيوتر العميل، يتم أيضًا تثبيت الشهادة الجذر في ملف .pfx. للتحقق من تثبيت شهادة الجذر، افتح Manage user certificates وحدد Trusted Root Certification Authorities\Certificates. تحقق من أن شهادة الجذر مسردة، والتي يجب أن تكون موجودة حتى تعمل المصادقة.

  • إذا استخدمت شهادة تم إصدارها بواسطة حل Enterprise CA ولا يمكنك المصادقة، فتحقق من أمر المصادقة في شهادة العميل. تحقق من ترتيب قائمة المصادقة بالنقر نقرًا مزدوجًا فوق شهادة العميل، وتحديد علامة تبويب Details، ثم تحديد Enhanced Key Usage. تأكد من أن Client Authentication هي العنصر الأول في القائمة. إذا لم يكن الأمر كذلك، فقم بإصدار شهادة عميل بناءً على قالب المستخدم الذي يحتوي على Client Authentication كعنصر أول في القائمة.

  • للحصول على معلومات إضافية حول استكشاف أخطاء P2S وإصلاحها، راجع استكشاف أخطاء اتصالات P2S وإصلاحها.

عميل Mac VPN

من مربع الحوار "Network"، حدد موقع ملف تعريف العميل الذي تريد استخدامه، ثم انقر Connect. تحقق من Install - Mac (macOS) للحصول على إرشادات مفصلة. إذا كنت تواجه مشكلة في الاتصال، فتحقق من أن بوابة الشبكة الظاهرية لا تستخدم SKU أساسي. رمز SKU الأساسي غير مدعوم لعملاء Mac.

Mac connection

للتحقق من وجود اتصال

تنطبق هذه التعليمات على عملاء Windows.

  1. للتحقق من أن اتصال VPN الخاص بك نشط، افتح موجه أوامر غير مقيد، وقم بتشغيل ipconfig/all.

  2. عرض النتائج. لاحظ أن عنوان IP الذي تلقيته هو أحد العناوين الموجودة في تجمع عناوين عميل VPN من نقطة إلى موقع الذي حددته في التكوين الخاص بك. النتائج مشابهة لهذا المثال:

    PPP adapter VNet1:
       Connection-specific DNS Suffix .:
       Description.....................: VNet1
       Physical Address................:
       DHCP Enabled....................: No
       Autoconfiguration Enabled.......: Yes
       IPv4 Address....................: 172.16.201.13(Preferred)
       Subnet Mask.....................: 255.255.255.255
       Default Gateway.................:
       NetBIOS over Tcpip..............: Enabled
    

للاتصال بجهاز ظاهري

تنطبق هذه التعليمات على عملاء Windows.

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

  1. حدد موقع عنوان بروتوكول الإنترنت الخاص بك. يمكنك العثور على عنوان بروتوكول الإنترنت الخاص بأي جهاز افتراضي، إما عن طريق البحث في خصائص الجهاز الافتراضي في مدخل Azure، أو باستخدام PowerShell.

    • مدخل Azure - حدد موقع الجهاز الافتراضي في مدخل Azure. اعرض خصائص الجهاز الافتراضي. أدرج عنوان بروتوكول الإنترنت الخاص.

    • PowerShell - استخدم المثال لعرض قائمة الأجهزة الافتراضية، وعناوين بروتوكول الإنترنت الخاصة من مجموعات الموارد الخاصة بك. لا تحتاج إلى تعديل هذا المثال قبل استخدامه.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where VirtualMachine -ne $null
      
      foreach($Nic in $Nics)
      {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. تحقق من اتصالك بشبكة VNet.

  3. افتح⁧⁧⁩⁩Remote Desktop Connection⁧⁧⁩⁩من خلال كتابة "RDP" أو "Remote Desktop Connection" في مربع البحث في شريط المهام، ثم حدد Remote Desktop Connection. يمكنك أيضًا فتح "Remote Desktop Connection" باستخدام الأمر "mstsc" في PowerShell.

  4. في الاتصال بسطح المكتب البعيد أدخل عنوان بروتوكول الإنترنت الخاص بالجهاز الافتراضي. يمكنك تحديد "Show Options" لضبط الإعدادات الإضافية، ثم الاتصال.

⁧⁧⁩⁩استكشاف أخطاء الاتصال وإصلاحها⁧⁧⁩⁩

إذا كنت تواجه مشكلة في الاتصال بجهاز ظاهري عبر اتصال VPN، فتحقق مما يلي:

  • تحقق من نجاح اتصال VPN الخاص بك.

  • تحقق من أنك تتصل بعنوان IP الخاص للجهاز الظاهري.

  • إذا كان يمكنك الاتصال بأي جهاز افتراضي باستخدام عنوان بروتوكول الإنترنت الخاص بدون اسم الكمبيوتر، فتحقق من تهيئة نظام اسماء النطاقات بشكل صحيح. للحصول على مزيد من المعلومات حول كيفية عمل تحليل الاسم لـ VMs، راجع⁧⁧⁩⁩تحليل اسم VMs.

  • للمزيد من المعلومات حول اتصالات بروتوكول سطح المكتب البعيد، راجع⁧⁧⁩⁩اكتشاف أخطاء اتصال سطح المكتب البعيد بأي جهاز افتراضي⁧⁧⁩⁩.

  • تحقق من إنشاء حزمة تكوين عميل VPN بعد تحديد عناوين IP لخادم DNS لشبكة VNet. إذا قمت بتحديث عناوين IP لخادم DNS، فقم بإنشاء حزمة تكوين عميل VPN جديدة وتثبيتها.

  • استخدم “ipconfig” للتحقق من عنوان IPv4 معين لمحول Ethernet على الكمبيوتر الذي تتصل منه. إذا كان عنوان IP ضمن نطاق عناوين VNet الذي تتصل به، أو ضمن نطاق عناوين VPNClientAddressPool، يشار إلى ذلك باسم مساحة عنوان متداخلة. عندما تتداخل مساحة العنوان الخاصة بك بهذه الطريقة، لا تصل نسبة استخدام الشبكة إلى Azure، بل تبقى على الشبكة المحلية.

لإضافة شهادة جذر أو إزالتها

يمكنك إضافة شهادات جذر موثوقة وإزالتها من Azure. عند إزالة شهادة جذر، لن يتمكن العملاء الذين لديهم شهادة تم إنشاؤها من هذا الجذر من المصادقة، وبالتالي لن يتمكنوا من الاتصال. إذا كنت تريد أن يقوم العميل بالمصادقة والاتصال، فأنت بحاجة إلى تثبيت شهادة عميل جديدة تم إنشاؤها من شهادة جذر موثوق بها (تم تحميلها) إلى Azure. تتطلب هذه الخطوات تثبيت cmdlets Azure PowerShell محليًا على جهاز الكمبيوتر الخاص بك (وليس Azure Cloud Shell). يمكنك أيضًا استخدام مدخل Microsoft Azure لإضافة شهادات الجذر.

للإضافة:

يمكنك إضافة ما يصل إلى 20 ملفًا بتنسيق .cer لشهادة جذر موثوق بها إلى Azure. تساعدك الخطوات التالية على إضافة شهادة جذر.

  1. قم بإعداد ملف .cer لتحميله:

    $filePathForCert = "C:\cert\P2SRootCert3.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64_3 = [system.convert]::ToBase64String($cert.RawData)
    
  2. تحميل الملف. يمكنك تحميل ملف واحد فقط في كل مرة.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG1" -PublicCertData $CertBase64_3
    
  3. للتحقق من تحميل ملف الشهادة:

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG1" `
    -VirtualNetworkGatewayName "VNet1GW"
    

لإزالة:

  1. تعريف المتغيرات. قم بتعديل المتغيرات في المثال لمطابقة الشهادة التي تريد إزالتها.

    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    $P2SRootCertName2 = "ARMP2SRootCert2.cer"
    $MyP2SCertPubKeyBase64_2 = "MIIC/zCCAeugAwIBAgIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAMBgxFjAUBgNVBAMTDU15UDJTUm9vdENlcnQwHhcNMTUxMjE5MDI1MTIxWhcNMzkxMjMxMjM1OTU5WjAYMRYwFAYDVQQDEw1NeVAyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyjIXoWy8xE/GF1OSIvUaA0bxBjZ1PJfcXkMWsHPzvhWc2esOKrVQtgFgDz4ggAnOUFEkFaszjiHdnXv3mjzE2SpmAVIZPf2/yPWqkoHwkmrp6BpOvNVOpKxaGPOuK8+dql1xcL0eCkt69g4lxy0FGRFkBcSIgVTViS9wjuuS7LPo5+OXgyFkAY3pSDiMzQCkRGNFgw5WGMHRDAiruDQF1ciLNojAQCsDdLnI3pDYsvRW73HZEhmOqRRnJQe6VekvBYKLvnKaxUTKhFIYwuymHBB96nMFdRUKCZIiWRIy8Hc8+sQEsAML2EItAjQv4+fqgYiFdSWqnQCPf/7IZbotgQIDAQABo00wSzBJBgNVHQEEQjBAgBAkuVrWvFsCJAdK5pb/eoCNoRowGDEWMBQGA1UEAxMNTXlQMlNSb290Q2VydIIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAA4IBAQA223veAZEIar9N12ubNH2+HwZASNzDVNqspkPKD97TXfKHlPlIcS43TaYkTz38eVrwI6E0yDk4jAuPaKnPuPYFRj9w540SvY6PdOUwDoEqpIcAVp+b4VYwxPL6oyEQ8wnOYuoAK1hhh20lCbo8h9mMy9ofU+RP6HJ7lTqupLfXdID/XevI8tW6Dm+C/wCeV3EmIlO9KUoblD/e24zlo3YzOtbyXwTIh34T0fO/zQvUuBqZMcIPfM1cDvqcqiEFLWvWKoAnxbzckye2uk1gHO52d8AVL3mGiX8wBJkjc/pMdxrEvvCzJkltBmqxTM6XjDJALuVh16qFlqgTWCIcb7ju"
    
  2. إزالة الشهادة.

    Remove-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName2 -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -PublicCertData $MyP2SCertPubKeyBase64_2
    
  3. استخدم المثال التالي للتحقق من إزالة الشهادة بنجاح.

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG1" `
    -VirtualNetworkGatewayName "VNet1GW"
    

لإبطال شهادة عميل أو إعادتها

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

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

لإلغاء:

  1. استرداد “thumbprint” لشهادة العميل. لمزيد من المعلومات، راجع كيفية استرداد thumbprint لشهادة ما.

  2. انسخ المعلومات إلى محرر نصي وأزل جميع المسافات بحيث تكون سلسلة متصلة. يتم الإعلان عن هذه السلسلة كمتغير في الخطوة التالية.

  3. تعريف المتغيرات. تأكد من الإعلان عن “thumbprint” التي قمت باستردادها في الخطوة السابقة.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  4. أضف “thumbprint” إلى قائمة الشهادات التي تم إلغاؤها. سترى "Succeeded" عند إضافة thumbprint.

    Add-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG `
    -Thumbprint $RevokedThumbprint1
    
  5. تحقق من إضافة “thumbprint” إلى قائمة إبطال الشهادة.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    
  6. بعد إضافة “thumbprint”، لم يعد من الممكن استخدام الشهادة للاتصال. يتلقى العملاء الذين يحاولون الاتصال باستخدام هذه الشهادة رسالة تفيد بأن الشهادة لم تعد صالحة.

للإعادة:

يمكنك إعادة شهادة عميل عن طريق إزالة “thumbprint” من قائمة شهادات العميل التي تم إبطالها.

  1. تعريف المتغيرات. تأكد من الإعلان عن “thumbprint” الصحيحة للشهادة التي تريد إعادتها.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  2. إزالة “thumbprint” الشهادة من قائمة إبطال الشهادة.

    Remove-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -Thumbprint $RevokedThumbprint1
    
  3. تحقق مما إذا تمت إزالة “thumbprint” من القائمة الملغاة.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    

الأسئلة الشائعة حول نقطة إلى موقع

للحصول على معلومات إضافية من نقطة إلى موقع، راجع الأسئلة الشائعة حول بوابة VPN من نقطة إلى موقع

الخطوات التالية

بمجرد اكتمال الاتصال، يمكنك إضافة الأجهزة الظاهرية إلى الشبكات الظاهرية. لمزيد من المعلومات، راجع الأجهزة الظاهرية. لفهم المزيد حول الشبكات والأجهزة الظاهرية، راجع نظرة عامة على شبكة Azure وLinux VM.

للحصول على معلومات حول استكشاف أخطاء P2S وإصلاحها، استكشاف أخطاء اتصالات Azure من نقطة إلى موقع وإصلاحها.