Edge for Private Cloud الإصدار 4.19.01
بعد تثبيت المكوِّن apigee-mtls
في كل عقدة في المجموعة،
عليك إعداده وإعداده. يمكنك إجراء ذلك من خلال إنشاء زوج شهادة/مفتاح وتعديل ملف الإعداد على جهاز الإدارة. وبعد ذلك، يتم نشر
الملفات التي تم إنشاؤها نفسها على جميع العُقد في المجموعة وإعداد
مكوّن apigee-mtls
المحلي.
ضبط apigee-mtls (بعد التثبيت الأولي)
يوضّح هذا القسم كيفية ضبط Apigee mTLS لمركز بيانات واحد مباشرةً بعد التثبيت الأولي. للحصول على معلومات عن إجراء تعديلات على تثبيت حالي من Apigee mTLS، يُرجى الاطّلاع على تغيير إعداد apigee-mtls حالي. ولمزيد من المعلومات عن ضبط مراكز بيانات متعدّدة، يُرجى الاطّلاع على ضبط مراكز بيانات متعدّدة لتطبيق Apigee mTLS.
في ما يلي العملية العامة لضبط apigee-mtls
:
- تعديل ملف الإعداد: على جهاز الإدارة، يمكنك تعديل ملف الإعداد لتضمين إعدادات
apigee-mtls
. - تثبيت Consul وإنشاء بيانات الاعتماد: ثبِّت
Consul واستخدِمه لإنشاء بيانات اعتماد بروتوكول أمان طبقة النقل (TLS) (مرة واحدة فقط).
بالإضافة إلى ذلك، يمكنك تعديل ملف إعداد Apigee mTLS لإجراء ما يلي:
- إضافة معلومات بيانات الاعتماد
- تعريف طوبولوجيا المجموعة العنقودية
لاحظ أنه يمكنك استخدام بيانات الاعتماد الحالية أو إنشاءها باستخدام Consul.
- توزيع ملف الإعداد وبيانات الاعتماد: يمكنك توزيع زوج الشهادات/المفاتيح نفسه الذي تم إنشاؤه وملف الإعداد المعدَّل على جميع العُقد في مجموعتك.
- إعداد apigee-mtls: يجب إعداد
المكوِّن
apigee-mtls
في كل عقدة.
يتم وصف كل خطوة من هذه الخطوات في الأقسام التالية.
الخطوة 1: تعديل ملف الضبط
يوضّح هذا القسم كيفية تعديل ملف الإعداد لتضمين خصائص إعداد mTLS. للحصول على مزيد من المعلومات حول ملف الإعداد، يُرجى الاطّلاع على إنشاء ملف إعداد.
بعد تعديل ملف الإعداد بالسمات المرتبطة ببروتوكول mTLS، يمكنك بعد ذلك نسخه إلى
جميع العُقد في المجموعة قبل إعداد المكوّن apigee-mtls
على تلك
العُقد.
تستخدِم الأوامر التي تشير إلى ملف الإعداد "config_file" للإشارة إلى أنّ موقعه متغير، بناءً على مكان تخزينه في كل عقدة.
لتعديل ملف الإعداد:
- على جهاز الإدارة، افتح ملف الإعداد.
- انسخ المجموعة التالية من سمات ضبط mTLS والصقها في ملف
الإعداد:
ALL_IP="ALL_PRIVATE_IPS_IN_CLUSTER" ZK_MTLS_HOSTS="ZOOKEEPER_PRIVATE_IPS" CASS_MTLS_HOSTS="CASSANDRA_PRIVATE_IPS" PG_MTLS_HOSTS="POSTGRES_PRIVATE_IPS" RT_MTLS_HOSTS="ROUTER_PRIVATE_IPS" MS_MTLS_HOSTS="MGMT_SERVER_PRIVATE_IPS" MP_MTLS_HOSTS="MESSAGE_PROCESSOR_PRIVATE_IPS" QP_MTLS_HOSTS="QPID_PRIVATE_IPS" LDAP_MTLS_HOSTS="OPENLDAP_PRIVATE_IPS" MTLS_ENCAPSULATE_LDAP="y" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="BASE64_GOSSIP_MESSAGE" PATH_TO_CA_CERT="PATH/TO/consul-agent-ca.pem" PATH_TO_CA_KEY="PATH/TO/consul-agent-ca-key.pem" APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR="NUMBER_OF_DAYS"
اضبط قيمة كل خاصية لتتماشى مع الإعدادات.
يصف الجدول التالي خصائص الإعداد التالية:
الموقع الوصف ALL_IP
قائمة بعناوين IP للمُضيف الخاص لجميع العُقد في المجموعة مفصولة بمسافات. لا يهم ترتيب عناوين IP، غير أنّ الترتيب يجب أن يكون واحدًا في جميع ملفات الإعداد على مستوى المجموعة.
في حال ضبط Apigee mTLS لمراكز بيانات متعدّدة، يجب إدراج جميع عناوين IP لجميع المضيفين في جميع المناطق.
LDAP_MTLS_HOSTS
عنوان IP للمضيف الخاص لعقدة OpenLDAP في المجموعة. ZK_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص ومفصولة بمسافات حيث تتم استضافة عُقد ZooKeeper في المجموعة.
بناءً على المتطلبات، يجب أن تتوفّر ثلاث عُقد ZooKeeper على الأقل.
CASS_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص ومفصولة بمسافات حيث تتم استضافة خوادم Cassandra في المجموعة. PG_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص ومفصولة بمسافات حيث تتم استضافة خوادم Postgres في المجموعة. RT_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص المفصولة بمسافات والتي تتم استضافة أجهزة التوجيه عليها في المجموعة. MTLS_ENCAPSULATE_LDAP
يشفِّر هذا الإعداد حركة مرور LDAP بين معالج الرسائل وخادم LDAP. اضبط النوع على y
.MS_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص المفصولة بمسافات والتي تتم استضافة عُقد خادم الإدارة عليها في المجموعة. MP_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص ومفصولة بمسافات حيث تتم استضافة معالجات الرسائل في المجموعة. QP_MTLS_HOSTS
قائمة بعناوين IP للمضيف الخاص ومفصولة بمسافات حيث تتم استضافة خوادم Qpid في المجموعة. ENABLE_SIDECAR_PROXY
يحدد ما إذا كان يجب على Cassandra وPostgres معرفة شبكة الخدمة المتداخلة. يجب ضبط هذه القيمة على "y".
ENCRYPT_DATA
مفتاح التشفير بترميز base64 والذي تستخدمه Consul . لقد أنشأت هذا المفتاح باستخدام الأمر consul keygen
في الخطوة 2: تثبيت Consul وإنشاء بيانات الاعتماد.يجب أن تكون هذه القيمة واحدة في جميع العُقد في المجموعة.
PATH_TO_CA_CERT
موقع ملف الشهادة على العقدة. لقد أنشأت هذا الملف في الخطوة 2: تثبيت Consul وإنشاء بيانات الاعتماد. يجب أن يكون هذا الموقع متطابقًا في جميع العُقد في المجموعة كي تكون ملفات الإعداد متطابقة.
يجب أن تكون الشهادة بترميز X509v3.
PATH_TO_CA_KEY
موقع ملف المفتاح على العقدة. لقد أنشأت هذا الملف في الخطوة 2: تثبيت Consul وإنشاء بيانات الاعتماد. يجب أن يكون هذا الموقع متطابقًا في جميع العُقد في المجموعة كي تكون ملفات الإعداد متطابقة.
يجب أن يكون ملف المفتاح بترميز X509v3.
APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR
تمثّل هذه السمة عدد الأيام التي تصلح فيها الشهادة عند إنشاء شهادة مخصّصة.
القيمة التلقائية هي 365. الحد الأقصى للقيمة هو 7,865 يومًا (5 سنوات).
بالإضافة إلى السمات المدرَجة أعلاه، يستخدم Apigee mTLS العديد من الخصائص الإضافية عند تثبيته في إعدادات مركز بيانات متعددة. لمزيد من المعلومات، راجِع ضبط عدّة مراكز بيانات.
- تأكَّد من أنّ السمة
ENABLE_SIDECAR_PROXY
على "y". - عدِّل عناوين IP في المواقع الإلكترونية المرتبطة بالمضيف. تأكَّد من استخدام عناوين IP خاصة عند الإشارة إلى كل عقدة، وليس إلى عناوين IP العامة.
وفي الخطوات اللاحقة، يمكنك ضبط قيم السمات الأخرى، مثل
ENCRYPT_DATA
وPATH_TO_CA_CERT
وPATH_TO_CA_KEY
. ولم تحدّد قيمها بعد.عند تعديل خصائص الإعداد
apigee-mtls
، يُرجى التنبّه لما يلي:- وجميع السمات عبارة عن سلاسل، ويجب لفّ قيم جميع السمات بعلامات اقتباس مفردة أو مزدوجة.
- إذا كانت إحدى القيم المرتبطة بالمضيف تحتوي على أكثر من عنوان IP خاص واحد، افصل بين عناوين IP بمسافة.
- استخدِم عناوين IP خاصة وليس أسماء المضيفين أو عناوين IP العلنية لجميع السمات المرتبطة بالمضيف في ملف الإعداد.
- يجب أن يكون ترتيب عناوين IP في قيمة السمة بالترتيب نفسه في جميع ملفات الإعداد على مستوى المجموعة.
- احفظ التغييرات التي أجريتها في ملف الإعداد.
الخطوة 2: تثبيت Consul وإنشاء بيانات الاعتماد
يوضّح هذا القسم كيفية تثبيت Consul وإنشاء بيانات الاعتماد.
يجب اختيار إحدى الطرق التالية لإنشاء بيانات اعتماد:
- إنشاء مرجع تصديق خاص بك باستخدام Consul، كما هو موضح في هذا القسم (مستحسن)
- استخدام بيانات اعتماد مرجع تصديق حالي مع Apigee mTLS (متقدّم)
لمحة عن بيانات الاعتماد
تتألف بيانات الاعتماد مما يلي:
- الشهادة: شهادة بروتوكول أمان طبقة النقل (TLS) المستضافة على كل عقدة
- المفتاح: المفتاح العام لبروتوكول أمان طبقة النقل (TLS) تتم استضافته على كل عقدة.
- رسالة شائعات: مفتاح تشفير بترميز base-64
يمكنك إنشاء نسخة واحدة من كل ملف من هذه الملفات مرة واحدة فقط. يمكنك نسخ المفتاح وملفات الشهادات إلى جميع العُقد في مجموعتك وإضافة مفتاح التشفير إلى ملف الإعداد الذي تنسخه أيضًا إلى جميع العُقد.
لمزيد من المعلومات حول تنفيذ تشفير Consul، راجع ما يلي:
تثبيت Consul وإنشاء بيانات الاعتماد
يمكنك استخدام برنامج Consul الثنائي المحلي لإنشاء بيانات اعتماد يستخدمها Apigee mTLS لمصادقة الاتصالات الآمنة بين العُقد في مجموعة Cloud الخاصة بك. ونتيجة لذلك، يجب تثبيت Consul على جهاز الإدارة قبل أن تتمكن من إنشاء بيانات الاعتماد.
لتثبيت Consul وإنشاء بيانات اعتماد mTLS:
- على جهازك الإداري، نزِّل برنامج Consul 1.6.2 الثنائي من موقع HashiCorp الإلكتروني.
- استخرِج محتوى ملف الأرشيف الذي تم تنزيله. على سبيل المثال، يمكنك استخراج المحتوى إلى
/opt/consul/
. - على جهازك الإداري، أنشِئ مرجع تصديق جديدًا من خلال تنفيذ الأمر التالي:
/opt/consul/consul tls ca create
.ينشئ Consul الملفات التالية، وهي زوج شهادة/مفتاح:
consul-agent-ca.pem
(الشهادة)consul-agent-ca-key.pem
(مفتاح)
بشكل تلقائي، يتم تشفير ملفات المفتاح والشهادة X509v3.
فيما بعد، ستقوم بنسخ هذه الملفات إلى جميع العُقد في المجموعة العنقودية. ومع ذلك، يجب في هذا الوقت تحديد المكان الذي ستضع فيه هذه الملفات على العُقد. ويجب أن تكون في الموقع نفسه في كل عقدة. مثلاً:
/opt/apigee/
- في ملف الإعداد، اضبط القيمة
PATH_TO_CA_CERT
على الموقع الذي ستنسخ فيه ملفconsul-agent-ca.pem
على العقدة. مثلاً:PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem"
- اضبط قيمة
PATH_TO_CA_KEY
على الموقع الذي ستنسخ فيه ملفconsul-agent-ca-key.pem
على العقدة. مثلاً:PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem"
- أنشئ مفتاح تشفير لـ Consul عن طريق تنفيذ الأمر التالي:
/opt/consul/consul keygen
يُخرج Consul سلسلة عشوائية تشبه ما يلي:
QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=
- انسخ السلسلة واضبطها كقيمة السمة
ENCRYPT_DATA
في ملف الإعداد. على سبيل المثال:ENCRYPT_DATA="
QbhgD+EXAMPLE+Y9u0742X
/IqX3X429/x1cIQ+JsQvY=" - احفظ ملف الضبط.
يوضّح المثال التالي الإعدادات المرتبطة ببروتوكول mTLS في ملف ضبط (مع أمثلة على القيم):
... IP1=10.126.0.121 IP2=10.126.0.124 IP3=10.126.0.125 IP4=10.126.0.127 IP5=10.126.0.130 ALL_IP="$IP1 $IP2 $IP3 $IP4 $IP5" LDAP_MTLS_HOSTS="$IP3" ZK_MTLS_HOSTS="$IP3 $IP4 $IP5" CASS_MTLS_HOSTS="$IP3 $IP4 $IP5" PG_MTLS_HOSTS="$IP2 $IP1" RT_MTLS_HOSTS="$IP4 $IP5" MS_MTLS_HOSTS="$IP3" MP_MTLS_HOSTS="$IP4 $IP5" QP_MTLS_HOSTS="$IP2 $IP1" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=" PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem" PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem" ...
الخطوة 3: توزيع ملف الإعداد وبيانات الاعتماد
انسخ الملفات التالية إلى العُقد التي تُشغّل ZooKeeper باستخدام أداة مثل scp
:
- ملف الإعداد: انسخ النسخة المعدّلة من هذا الملف واستبدل النسخة الحالية على جميع العُقد (وليس فقط العُقد التي تشغّل تطبيق ZooKeeper).
- consul-agent-ca.pem: يمكنك النسخ إلى الموقع الذي حدَّدته كقيمة
PATH_TO_CA_CERT
في ملف الإعداد. - consul-agent-ca-key.pem: يمكنك النسخ إلى المكان الذي حدَّدته كقيمة
PATH_TO_CA_KEY
في ملف الإعداد.
تأكَّد من أن المواقع التي تنسخ إليها ملفات المفتاح والشهادة تتطابق مع القيم التي حددتها في ملف الإعداد في الخطوة 2: تثبيت Consul وإنشاء بيانات الاعتماد.
الخطوة 4: إعداد apigee-mtls
بعد تعديل ملف الإعداد ونسخه وبيانات الاعتماد إلى جميع العُقد في المجموعة وتثبيت apigee-mtls
على كل عقدة، يمكنك ضبط إعدادات المكوِّن
apigee-mtls
في كل عقدة.
لإعداد apigee-mtls:
- سجِّل الدخول إلى عقدة في المجموعة بصفتك المستخدم الجذر. يمكنك تنفيذ هذه الخطوات على العُقد بأي ترتيب تريده.
- اجعل مستخدم
apigee:apigee
مالكًا لملف الإعداد المعدّل، على النحو الموضّح في المثال التالي:chown apigee:apigee config_file
- يمكنك ضبط المكوِّن
apigee-mtls
من خلال تنفيذ الأمر التالي:/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f config_file
- (اختياري) نفِّذ الأمر التالي للتحقق من نجاح الإعداد:
/opt/apigee/apigee-mtls/lib/actions/iptables.sh validate
- ابدأ تشغيل Apigee mTLS من خلال تنفيذ الأمر التالي:
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls start
بعد تثبيت Apigee mTLS، يجب بدء هذا المكوِّن قبل أي مكوّنات أخرى على العقدة.
- (عُقد Cassandra فقط) تتطلب "كاساندرا" وسيطات إضافية للعمل ضمن
الشبكة الأمنية. ونتيجةً لذلك، عليك تنفيذ الأوامر التالية في كل عقدة Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- (عُقد Postgres فقط) تتطلّب Postgres وسيطات إضافية للعمل ضمن
شبكة الأمان. ونتيجةً لذلك، عليك تنفيذ ما يلي على عُقد Postgres:
(الرئيسي فقط)
- نفِّذ الأوامر التالية في عقدة Postgres الرئيسية:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
(وضع الاستعداد فقط)
- الاحتفاظ بنسخة احتياطية من بيانات Postgres الحالية لتثبيت Apigee mTLS، يجب إعادة إعداد العُقد الرئيسية/في وضع الاستعداد، وبالتالي ستفقد البيانات. لمزيد من المعلومات، يُرجى الاطّلاع على إعداد النسخ المماثل الرئيسي/جاهز لاستخدام Postgres.
- حذف جميع بيانات Postgres:
rm -rf /opt/apigee/data/apigee-postgresql/pgdata
- اضبط Postgres ثم أعِد تشغيل Postgres، كما هو موضّح في المثال التالي:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
في حال التثبيت على مخطط لمركز بيانات متعدد، استخدِم مسارًا مطلقًا لملف الإعداد.
- نفِّذ الأوامر التالية في عقدة Postgres الرئيسية:
- ابدأ مكوّنات Apigee المتبقية على العقدة باستخدام ترتيب البدء، كما يوضِّح المثال التالي:
/opt/apigee/apigee-service/bin/apigee-service component_name start
- كرر هذه العملية لكل عقدة في المجموعة.
- (اختياري) تأكَّد من أنّ
apigee-mtls
عملية الإعداد قد تمت بنجاح باستخدام طريقة واحدة أو أكثر من الطرق التالية:- التحقّق من صحة إعدادات iptables
- التحقُّق من حالة الخادم الوكيل البعيد
- التحقق من حالة النصاب
يتم توضيح كل طريقة من هذه الطرق في قسم التحقّق من الإعدادات.
تغيير إعداد apigee-mtls الحالي
لتخصيص إعداد apigee-mtls
حالي، يجب إلغاء تثبيت apigee-mtls
وإعادة تثبيته.
يُرجى تكرار هذه النقطة عند تغيير إعداد Apigee mTLS حالي:
- إذا غيّرت ملف الإعداد، يجب أولاً إلغاء تثبيت
apigee-mtls
وإعادة تشغيلsetup
أوconfigure
:# DO THIS:
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls uninstall
# BEFORE YOU DO THIS:/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f file
OR/opt/apigee/apigee-service/bin/apigee-service apigee-mtls configure
- يجب إلغاء تثبيت العُقد
setup
أوconfigure
وإعادة تشغيلها على جميع العُقد في المجموعة، وليس فقط على عُقدة واحدة.