تكوين القواعد للوصول إلى سجل حاوية Azure خلف جدار حماية

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

إذا كنت تريد بدلاً من ذلك تكوين الوصول إلى الشبكة الواردة إلى سجل حاوية فقط داخل Azure Virtual Network، فراجع تكوين ارتباط Azure الخاص لسجل حاوية Azure.

حول نقاط نهاية التسجيل

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

  • نقطة نهاية REST API الخاصة بالسجل - تتم معالجة عمليات إدارة التسجيل والمصادقة من خلال نقطة نهاية REST API العامة للتسجيل. نقطة النهاية هذه هي اسم خادم تسجيل الدخول الخاص بالتسجيل. مثال: myregistry.azurecr.io

    • نقطة نهاية واجهة برمجة تطبيقات REST للشهادات - يستخدم سجل حاوية Azure شهادة SSL لحرف البدل لجميع المجالات الفرعية. عند الاتصال بسجل حاوية Azure باستخدام SSL، يجب أن يكون العميل قادرا على تنزيل الشهادة لمصافحة TLS. وفي مثل هذه الحالات، azurecr.io يجب أيضا أن يكون الوصول إليها متاحا.
  • نقطة نهاية التخزين (البيانات) - يخصص Azure تخزين البيانات الثنائية الكبيرة في حسابات Azure Storage نيابة عن كل سجل لإدارة البيانات الخاصة بصور الحاوية والتشكيلات الأخرى. عندما يصل العميل إلى طبقات الصور في سجل حاوية Azure، فإنه يقدم طلبات باستخدام نقطة نهاية حساب التخزين التي يوفرها السجل.

إذا كان السجل الخاص بك geo-replicated، فقد يحتاج العميل إلى التفاعل مع نقطة نهاية البيانات في منطقة معينة أو في مناطق متعددة منسوخة.

السماح بالوصول إلى REST ونقاط نهاية البيانات

  • نقطة نهاية REST - السماح بالوصول إلى اسم خادم تسجيل الدخول إلى السجل المؤهل بالكامل، <registry-name>.azurecr.io، أو نطاق عناوين IP المرتبط
  • نقطة نهاية التخزين (البيانات) - السماح بالوصول إلى جميع حسابات تخزين Azure blob باستخدام حرف البدل *.blob.core.windows.net، أو نطاق عناوين IP المرتبط.

ملاحظة

يقدم Azure Container Registry نقاط نهاية مخصصة للبيانات، ما يتيح لك نطاقاً محكماً لقواعد جدار حماية العميل لتخزين السجل. اختياريّاً، قم بتمكين نقاط نهاية البيانات في جميع المناطق التي يوجد بها السجل أو يتم نسخه احتياطيّاً، باستخدام النموذج <registry-name>.<region>.data.azurecr.io.

حول تسجيل FQDN

يحتوي السجل على اثنين من FQDN، وعنوان url لتسجيل الدخولونقطة نهاية البيانات.

  • يمكن الوصول إلى كل من عنوان URL لتسجيل الدخولونقطة نهاية البيانات من داخل الشبكة الظاهرية، باستخدام IP الخاص عن طريق تمكين ارتباط خاص.
  • يجب على السجل الذي لا يستخدم نقاط نهاية البيانات الوصول إلى البيانات من نقطة نهاية النموذج *.blob.core.windows.net ولا يوفر العزل المطلوب عند تكوين قواعد جدار الحماية.
  • يحصل السجل الذي تم تمكين ارتباط خاص عليه على نقطة نهاية البيانات المخصصة تلقائيا.
  • يتم إنشاء نقطة نهاية بيانات مخصصة لكل منطقة للسجل.
  • يظل عنوان URL لتسجيل الدخول كما هو بغض النظر عما إذا كانت نقطة نهاية البيانات ممكنة أو معطلة.

السماح بالوصول عن طريق نطاق عناوين IP

إذا كانت مؤسستك لديها نُهج للسماح بالوصول فقط إلى عناوين IP أو نطاقات عناوين محددة، فقم بتنزيل Azure IP Ranges and Service Tags – Public Cloud.

للعثور على نطاقات IP لنقطة نهاية ACR REST التي تحتاج إلى السماح بالوصول لها، ابحث عن AzureContainerRegistry في ملف JSON.

هام

يمكن تغيير نطاقات عناوين IP لخدمات Azure، ويتم نشر التحديثات أسبوعيّاً. قم بتنزيل ملف JSON بانتظام، وقم بإجراء التحديثات اللازمة في قواعد الوصول الخاصة بك. إذا كان السيناريو الخاص بك يتضمن تكوين قواعد مجموعة أمان الشبكة في شبكة ظاهرية Azure أو كنت تستخدم Azure Firewall، فاستخدم AzureContainerRegistryservice tag بدلاً من ذلك.

REST عناوين IP لجميع المناطق

{
  "name": "AzureContainerRegistry",
  "id": "AzureContainerRegistry",
  "properties": {
    "changeNumber": 10,
    "region": "",
    "platform": "Azure",
    "systemService": "AzureContainerRegistry",
    "addressPrefixes": [
      "13.66.140.72/29",
    [...]

REST عناوين IP لمنطقة معينة

ابحث عن منطقة معينة، مثل AzureContainerRegistry.AustraliaEast.

{
  "name": "AzureContainerRegistry.AustraliaEast",
  "id": "AzureContainerRegistry.AustraliaEast",
  "properties": {
    "changeNumber": 1,
    "region": "australiaeast",
    "platform": "Azure",
    "systemService": "AzureContainerRegistry",
    "addressPrefixes": [
      "13.70.72.136/29",
    [...]

عناوين IP للتخزين لجميع المناطق

{
  "name": "Storage",
  "id": "Storage",
  "properties": {
    "changeNumber": 19,
    "region": "",
    "platform": "Azure",
    "systemService": "AzureStorage",
    "addressPrefixes": [
      "13.65.107.32/28",
    [...]

عناوين IP للتخزين لمناطق معينة

ابحث عن منطقة معينة، مثل Storage.AustraliaCentral.

{
  "name": "Storage.AustraliaCentral",
  "id": "Storage.AustraliaCentral",
  "properties": {
    "changeNumber": 1,
    "region": "australiacentral",
    "platform": "Azure",
    "systemService": "AzureStorage",
    "addressPrefixes": [
      "52.239.216.0/23"
    [...]

السماح بالوصول عن طريق علامة الخدمة

في Azure Virtual Network، استخدم قواعد أمان الشبكة لتصفية نسبة استخدام الشبكة من مورد مثل جهاز ظاهري إلى سجل حاوية. لتبسيط عملية إنشاء قواعد شبكة Azure، استخدم AzureContainerRegistry وهي علامة الخدمة. تمثل علامة الخدمة مجموعة من بادئات عناوين IP للوصول إلى خدمة Azure بشكل عام، أو حسب منطقة Azure. يتم تحديث العلامة تلقائيّاً عندما تتغير العناوين.

على سبيل المثال، أنشئ قاعدة مجموعة أمان شبكة صادرة باستخدام الوجهة AzureContainerRegistry للسماح بنسبة استخدام الشبكة إلى سجل حاوية Azure. للسماح بالوصول إلى علامة الخدمة في منطقة معينة فقط، حدد المنطقة بالتنسيق التالي: AzureContainerRegistry. [region name].

تفعيل نقاط نهاية البيانات المخصصة

تحذير

إذا قمت مسبقاً بتكوين وصول جدار حماية العميل إلى نقاط النهاية *.blob.core.windows.net الحالية، فسيؤثر التبديل إلى نقاط نهاية البيانات المخصصة على اتصال العميل، ما يتسبب في فشل السحب. لضمان حصول العملاء على وصول ثابت، أضف قواعد نقطة نهاية البيانات الجديدة إلى قواعد جدار حماية العميل. بمخزون الانتهاء، قم بتمكين نقاط نهاية البيانات المخصصة لسجلاتك باستخدام Azure CLI أو أدوات أخرى.

نقاط نهاية البيانات المخصصة هي ميزة اختيارية لطبقة خدمة تسجيل الحاويات Premium. للحصول على معلومات حول مستويات وحدود خدمة السجل، راجع طبقات خدمة سجل حاوية Azure.

يمكنك تمكين نقاط نهاية البيانات المخصصة باستخدام مدخل Microsoft Azure أو Azure CLI. تتبع نقاط نهاية البيانات نمطاً إقليميّاً، <registry-name>.<region>.data.azurecr.io. في سجل منسوخ جغرافيّاً، يؤدي تمكين نقاط نهاية البيانات إلى تمكين نقاط النهاية في جميع مناطق النسخ المتماثلة.

المدخل

لتمكين نقاط نهاية البيانات باستخدام المدخل:

  1. انتقل إلى سجل الحاوية الخاص بك.
  2. حدد Networking>Public access.
  3. حدد مربع الاختيار Enable dedicated data endpoint.
  4. حدد ⁧⁩حفظ⁧⁩.

تظهر نقطة نهاية البيانات أو نقاط النهاية في المدخل.

نقاط نهاية مخصصة للبيانات في المدخل

Azure CLI

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

يقوم الأمر التالي az acr update بتمكين نقاط نهاية البيانات المخصصة في السجل myregistry.

az acr update --name myregistry --data-endpoint-enabled

لعرض نقاط نهاية البيانات، استخدم الأمر az acr show-endpoints :

az acr show-endpoints --name myregistry

يُظهر الإخراج لأغراض التوضيح نقطتي نهاية إقليميتين

{
    "loginServer": "myregistry.azurecr.io",
    "dataEndpoints": [
        {
            "region": "eastus",
            "endpoint": "myregistry.eastus.data.azurecr.io",
        },
        {
            "region": "westus",
            "endpoint": "myregistry.westus.data.azurecr.io",
        }
    ]
}

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

تكوين قواعد جدار حماية العميل لـ MCR

إذا كنت تريد الوصول إلى Microsoft Container Registry (MCR) من خلف جدار حماية، فراجع الإرشادات لتكوين قواعد جدار حماية عميل MCR. MCR هو السجل الأساسي لجميع صور عامل الإرساء التي تنشرها Microsoft، مثل صور Windows Server.

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