البرنامج التعليمي: الاتصال بخادم Azure SQL باستخدام نقطة نهاية Azure الخاصة باستخدام مدخل Microsoft Azure

نقطة نهاية Azure الخاصة هي كتلة إنشائية أساسية للارتباط الخاص في Azure. فهي تمكن موارد Azure، مثل الأجهزة الظاهرية (VMs)، من الاتصال بطريقة خاصة وآمنة بموارد Private Link مثل Azure Cosmos DB.

رسم تخطيطي للموارد التي تم إنشاؤها في التشغيل السريع لنقطة النهاية الخاصة.

في هذا البرنامج التعليمي، تتعلم كيفية:

  • إنشاء شبكة ظاهرية ومضيف bastion.
  • إنشاء جهاز ظاهري.
  • إنشاء خادم SQL Azure ونقطة النهاية الخاصة.
  • اختبار الاتصال بنقطة النهاية الخاصة بخادم لغة الاستعلامات المركبة SQL.

في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.

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

  • اشتراك Azure

تسجيل الدخول إلى Azure

قم بتسجيل الدخول إلى بوابة Azure.

إنشاء شبكة ظاهرية ومضيف Azure Bastion

ينشئ الإجراء التالي شبكة ظاهرية مع شبكة فرعية لمورد وشبكة فرعية Azure Bastion ومضيف Bastion:

  1. في المدخل، ابحث عن Virtual networks وحددها.

  2. في صفحة ⁧⁩الشبكة الظاهرية⁧⁩، حدد ⁧+⁩ إنشاء⁧⁩.

  3. في علامة التبويب Basics في Create virtual network، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    تفاصيل المشروع
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد إنشاء جديد.
    أدخل test-rg للاسم.
    حدد موافق.
    تفاصيل المثيل
    الاسم أدخل vnet-1.
    المنطقة حدد شرق الولايات المتحدة 2.

    لقطة شاشة لعلامة التبويب Basics لإنشاء شبكة ظاهرية في مدخل Microsoft Azure.

  4. حدد التالي للمتابعة إلى علامة التبويب الأمان .

  5. في قسم Azure Bastion ، حدد Enable Azure Bastion.

    يستخدم Bastion المستعرض للاتصال بالأجهزة الظاهرية في شبكتك الظاهرية عبر Secure Shell (SSH) أو بروتوكول سطح المكتب البعيد (RDP) باستخدام عناوين IP الخاصة بها. لا تحتاج الأجهزة الظاهرية إلى عناوين IP عامة أو برامج عميل أو تكوين خاص. لمزيد من المعلومات، راجع ما هو Azure Bastion؟.

    إشعار

    يبدأ التسعير بالساعة من اللحظة التي يتم فيها نشر Bastion، بغض النظر عن استخدام البيانات الصادرة. لمزيد من المعلومات، راجع التسعير ووحدات SKU. إذا كنت تقوم بنشر Bastion كجزء من برنامج تعليمي أو اختبار، نوصي بحذف هذا المورد بعد الانتهاء من استخدامه.

  6. في Azure Bastion، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    اسم مضيف Azure Bastion أدخل bastion.
    عنوان IP العام ل Azure Bastion حدد إنشاء عنوان IP عام.
    أدخل public-ip-bastion في Name.
    حدد موافق.

    لقطة شاشة لخيارات تمكين مضيف Azure Bastion كجزء من إنشاء شبكة ظاهرية في مدخل Microsoft Azure.

  7. حدد التالي للمتابعة إلى علامة التبويب عناوين IP.

  8. في مربع مساحة العنوان في الشبكات الفرعية، حدد الشبكة الفرعية الافتراضية.

  9. في تحرير الشبكة الفرعية، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    الغرض من الشبكة الفرعية اترك الإعداد الافتراضي الافتراضي.
    الاسم أدخل subnet-1.
    IPv4
    نطاق عناوين IPv4 اترك الإعداد الافتراضي 10.0.0.0/16.
    عنوان البدء اترك الإعداد الافتراضي 10.0.0.0.
    الحجم اترك القيمة الافتراضية ل /24 (256 عنوانا) .

    لقطة شاشة لتفاصيل التكوين لشبكة فرعية.

  10. حدد حفظ.

  11. حدد Review + create في أسفل النافذة. بعد تجاوز التحقق من الصحة، حدد Create.

إنشاء جهاز ظاهري للاختبار

ينشئ الإجراء التالي جهازا ظاهريا تجريبيا (VM) يسمى vm-1 في الشبكة الظاهرية.

  1. في المدخل، ابحث عن الأجهزة الظاهرية وحددها.

  2. في الأجهزة الظاهرية، حدد + إنشاء، ثم جهاز Azure الظاهري.

  3. في علامة التبويب أساسيات، قم بإنشاء جهاز ظاهري، وأدخل أو حدد المعلومات التالية:

    الإعداد القيمة‬
    تفاصيل المشروع
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد test-rg.
    تفاصيل المثيل
    اسم الجهاز الظاهري أدخل vm-1.
    المنطقة حدد شرق الولايات المتحدة 2.
    خيارات التوفر حدد No infrastructure redundancy required.
    نوع الأمان اترك الإعداد الافتراضي "Standard".
    الصورة حدد Ubuntu Server 22.04 LTS - x64 Gen2.
    بنية الجهاز الظاهري اترك الإعداد الافتراضي x64.
    الحجم تحديد الحجم.
    حساب المسؤول
    نوع المصادقة اختر كلمة السر.
    اسم مستخدم أدخل azureuser.
    كلمة المرور إدخال «password».
    تأكيد كلمة المرور أعد إدخال كلمة المرور.
    قواعد المنفذ الوارد
    المنافذ العامة الواردة حدد لا شيء.
  4. حدد علامة التبويب Networking في أعلى الصفحة.

  5. أدخل المعلومات التالية أو حددها في علامة تبويب "Networking":

    الإعداد القيمة‬
    واجهة الشبكة
    الشبكة الظاهرية حدد vnet-1.
    الشبكة الفرعية حدد subnet-1 (10.0.0.0/24).
    عنوان IP عام حدد لا شيء.
    المجموعة الأمنية للشبكة NIC حدد خيارات متقدمة.
    تكوين مجموعة أمان الشبكة حدد إنشاء جديد.
    أدخل nsg-1 للاسم.
    اترك الباقي في الإعدادات الافتراضية وحدد موافق.
  6. اترك بقية الإعدادات في الإعدادات الافتراضية وحدد Review + create.

  7. راجع الإعدادات وحدد Create.

إشعار

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

إشعار

يوفر Azure عنوان IP افتراضيا للوصول الصادر للأجهزة الظاهرية التي لم يتم تعيين عنوان IP عام لها أو الموجودة في تجمع الواجهة الخلفية لموازن تحميل Azure الأساسي الداخلي. توفر آلية IP للوصول الصادر الافتراضي عنوان IP صادر غير قابل للتكوين.

يتم تعطيل عنوان IP الافتراضي للوصول الصادر عند حدوث أحد الأحداث التالية:

  • يتم تعيين عنوان IP عام إلى الجهاز الظاهري.
  • يتم وضع الجهاز الظاهري في تجمع الواجهة الخلفية لموازن التحميل القياسي، مع قواعد صادرة أو بدونها.
  • يتم تعيين مورد Azure NAT Gateway إلى الشبكة الفرعية للجهاز الظاهري.

لا تتمتع الأجهزة الظاهرية التي تقوم بإنشائها باستخدام مجموعات مقياس الجهاز الظاهري في وضع التنسيق المرن بالوصول الصادر الافتراضي.

لمزيد من المعلومات حول الاتصالات الصادرة في Azure، راجع الوصول الصادر الافتراضي في Azure واستخدام ترجمة عنوان الشبكة المصدر (SNAT) للاتصالات الصادرة.

إنشاء خادم SQL Azure ونقطة نهاية خاصة

في هذا القسم، يمكنك إنشاء خادم SQL في Azure.

  1. في مربع البحث أعلى المدخل، أدخل SQL. حدد قواعد بيانات SQL في نتائج البحث.

  2. في قواعد بيانات SQL، حدد + Create.

  3. في علامة التبويب Basics في Create SQL Database، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    تفاصيل المشروع
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد test-rg.
    تفاصيل قاعدة البيانات
    اسم قاعدة البيانات أدخل sql-db.
    الخادم حدد إنشاء جديد.
    أدخل sql-server-1 في اسم الخادم (يجب أن تكون أسماء الخادم فريدة، واستبدال sql-server-1 بقيمة فريدة).
    حدد (الولايات المتحدة) شرق الولايات المتحدة 2 في الموقع.
    حدد استخدام مصادقة SQL.
    أدخل تسجيل دخول مسؤول الخادم وكلمة المرور.
    حدد موافق.
    هل تريد استخدام تجمُع مرِن من SQL؟ حدد لا.
    بيئة حمل العمل اترك الإعداد الافتراضي للإنتاج.
    تكرار التخزين الاحتياطي
    تكرار التخزين الاحتياطي حدد تخزين النسخ الاحتياطي المكرر محليا.
  4. حدد Next: Networking.

  5. في علامة التبويب Networking من Create SQL Database، أدخل المعلومات التالية أو حددها:

    الإعداد القيمة‬
    اتصال الشبكة
    أسلوب الاتصال حدّد نقطة النهاية الخاصة.
    نقاط النهاية الخاصة
    حدد +Add private endpoint.
    إنشاء نقطة نهاية خاصة
    الاشتراك حدد Subscription الخاص بك.
    مجموعة الموارد حدد test-rg.
    الموقع حدد شرق الولايات المتحدة 2.
    الاسم أدخل private-endpoint-sql.
    مصدر الهدف الفرعي حدد أيقونةSqlServer.
    التواصل الشبكي
    الشبكة الظاهرية حدد vnet-1.
    الشبكة الفرعية حدد subnet-1.
    تكامل DNS الخاص
    التكامل مع منطقة DNS الخاصة حدد نعم.
    منطقة DNS خاصة اترك الإعداد الافتراضي privatelink.database.windows.net.
  6. حدد موافق.

  7. حدد "Review + create".

  8. حدد إنشاء.

هام

عند إضافة اتصال نقطة نهاية خاصة، لا يتم حظر التوجيه العام إلى خادم Azure SQL المنطقي بطريقة افتراضية. يتم ترك الإعداد "رفض الوصول إلى الشبكة العامة" ضمن شفرة "جدار الحماية والشبكات الظاهرية" دون التحديد بطريقة افتراضية. لتعطيل خدمة الوصول إلى الشبكة العامة، تأكد من التحقق من ذلك.

تعطيل ميزة الوصول العام إلى خادم Azure SQL المنطقي

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

  1. في مربع البحث أعلى المدخل، أدخل SQL server. حدد SQL servers في نتائج البحث.

  2. حدد sql-server-1.

  3. في صفحة Networking، حدد Public access tab، ثم حدد Disable لـPublic network access.

  4. حدد حفظ.

اختبار الاتصال بنقطة النهاية الخاصة

في هذا القسم، يمكنك استخدام الجهاز الظاهري الذي أنشأته في الخطوات السابقة للاتصال بخادم SQL عبر نقطة النهاية الخاصة.

  1. في مربع البحث الموجود أعلى المدخل، أدخل Virtual machine. حدد "Virtual machines" في نتائج البحث.

  2. حدد vm-1.

  3. في Operations حدد Bastion.

  4. أدخل اسم المستخدم وكلمة المرور للجهاز الظاهري.

  5. حدد اتصال.

  6. للتحقق من دقة الاسم لنقطة النهاية الخاصة، أدخل الأمر التالي في نافذة المحطة الطرفية:

    nslookup server-name.database.windows.net
    

    تتلقى رسالة مشابهة للمثال التالي. عنوان IP الذي تم إرجاعه هو عنوان IP الخاص لنقطة النهاية الخاصة.

    Server:    127.0.0.53
    Address:   127.0.0.53#53
    
    Non-authoritative answer:
    sql-server-8675.database.windows.netcanonical name = sql-server-8675.privatelink.database.windows.net.
    Name:sql-server-8675.privatelink.database.windows.net
    Address: 10.1.0.4
    
  7. قم بتثبيت أدوات سطر أوامر خادم SQL من تثبيت أدوات سطر الأوامر SQL Server sqlcmd وbcp على Linux. تابع الخطوات التالية بعد اكتمال التثبيت.

  8. استخدم الأوامر التالية للاتصال بخادم SQL الذي أنشأته في الخطوات السابقة.

    • استبدل <server-admin> باسم المستخدم المسؤول الذي أدخلته أثناء إنشاء خادم SQL.

    • استبدل <admin-password> بكلمة مرور المسؤول التي أدخلتها أثناء إنشاء خادم SQL.

    • استبدل sql-server-1 باسم خادم SQL الخاص بك.

    sqlcmd -S server-name.database.windows.net -U '<server-admin>' -P '<admin-password>'
    
  9. يتم عرض موجه أوامر SQL عند تسجيل الدخول بنجاح. أدخل خروج للخروج من أداة sqlcmd .

عند الانتهاء من استخدام الموارد التي قمت بإنشائها، يمكنك حذف مجموعة الموارد وجميع مواردها.

  1. في مدخل Azure، ابحث عن مجموعة المواردوحددها.

  2. في صفحة Resource groups ، حدد مجموعة موارد test-rg .

  3. في صفحة test-rg ، حدد Delete resource group.

  4. أدخل test-rg في Enter resource group name لتأكيد الحذف، ثم حدد Delete.

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

في هذا البرنامج التعليمي، تعلمت طريقة:

  • شبكة افتراضية ومضيف معقل.

  • الجهاز الظاهري.

  • خادم SQL Azure بنقطة نهاية خاصة.

استخدمتَ الجهاز الظاهري لاختبار الاتصال بصفه آمنة إلى خادم لغة الاستعلامات المركبة SQL عبر نقطة النهاية الخاصة.

كخطوة تالية، قد تكون مهتمًا أيضًا ⁧⁩بتطبيق ويب مع اتصال خاص بسيناريو بنية قاعدة بيانات لغة الاستعلامات المركبة Azure SQL⁧⁩، الذي يربط تطبيق ويب خارج الشبكة الافتراضية بنقطة النهاية الخاصة لقاعدة بيانات.