لديك خادم VPS عليه خمس أو ست خدمات Docker: Nextcloud وUptime Kuma ومدونة Ghost وربما Vaultwarden. عنوان IP عام واحد. وتريد أن يكون لكل منها نطاقه الفرعي الخاص مع HTTPS، دون تحرير ملفات تهيئة Nginx يدوياً في كل مرة تضيف فيها حاوية. هذه هي المشكلة تحديداً التي وُجد Nginx Proxy Manager لحلها.
هذا مراجعة وإعداد كامل لـ Nginx Proxy Manager على خادم VPS في دليل واحد. Nginx Proxy Manager (NPM) هو تطبيق Docker يغلّف Nginx في واجهة ويب: توجّه النطاقات الفرعية إلى حاويات الخلفية وتطلب شهادات Let's Encrypt عبر لوحة تحكم بدلاً من كتابة التوجيهات يدوياً. هذا الدليل موجّه للمستضيفين الذاتيين ومديري الأنظمة الذين يشغّلون Docker بالفعل ويحتاجون الآن إلى وكيل عكسي لا يتطلب لمس nginx.conf.
بحلول النهاية ستعرف ما إذا كان NPM يناسب حالتك، وستجعله يعمل مع HTTPS على خادمك، وستعرف معايير الانتقال إلى Caddy أو Traefik عندما يتوقف NPM عن كونه الأداة المناسبة.
النسخة المختصرة
- ما هو NPM: تطبيق Docker يضع واجهة ويب فوق Nginx لإدارة مضيفات الوكيل وHTTPS التلقائي عبر Let's Encrypt. يناسب من يريدون واجهة رسومية ويشغّلون حزمة خدمات صغيرة وثابتة نسبياً.
- المفاضلات: تعيش التهيئة في قاعدة بيانات SQLite، لذا فهي غير قابلة للتحكم في الإصدارات أو المقارنة مثل ملف التهيئة. اعتباراً من 12 يوليو 2026، فإن أحدث إصدار موسوم متأثر بـ CVE-2026-40519، لذا ينبغي أن تنتظر عمليات النشر الجديدة إصداراً موسوماً يحتوي على الإصلاح. ولوحة الإدارة الخاصة به على المنفذ 81 هي الشيء الرئيسي الذي عليك تأمينه.
- تحديد الحجم: يستهلك NPM نفسه في حالة الخمول نحو 50 MB من RAM. خادم بـ 1 GB هو الحد الأساسي العملي؛ و2 GB مريح بمجرد إضافة الخدمات خلفه.
- متى تنتقل: ابقَ على NPM لحزمة صغيرة وثابتة في الغالب حيث تهم الواجهة الرسومية. استخدم Caddy عندما تريد التهيئة ككود وبصمة أصغر. استخدم Traefik عندما تجعل تغييرات الحاويات المتكررة الاكتشافَ التلقائي في Docker أكثر قيمة من تسجيل المضيفات يدوياً.
ما لا يغطيه هذا الدليل
هذا دليل نشر على خادم VPS، وليس دليلاً مرجعياً. وللحفاظ على تركيزه، تقع الأمور التالية خارج نطاقه:
- التخصيص العميق لتوجيهات Nginx (كتل location مخصصة تتجاوز ما تكشفه واجهة NPM).
- بنية موازنة التحميل على نطاق واسع.
- مقارنة Kubernetes ingress.
- NPM على Windows.
- مسار Cloudflare Tunnel للإعدادات التي لا تملك عنوان IP ثابتاً.
ماذا يفعل Nginx Proxy Manager (وأين يسبب لك المتاعب)
Nginx Proxy Manager هو تطبيق Docker يشغّل Nginx في الأسفل ويضيف لوحة تحكم ويب في الأعلى. تنشئ مضيفات وكيل (نطاق فرعي إلى حاوية خلفية ومنفذ) وتطلب شهادات Let's Encrypt عبر نماذج بدلاً من ملفات التهيئة. يناسب حزمة صغيرة وثابتة نسبياً من التطبيقات ذاتية الاستضافة على خادم واحد.
وبعيداً عن الأساسيات، تتولى لوحة التحكم أيضاً قوائم الوصول وإعادة توجيه تدفق TCP/UDP الخام. بالنسبة إلى حزمة تطبيقات على خادم واحد، فهذه راحة حقيقية: تضيف حاوية، وتفتح لوحة التحكم، وتوجّه نطاقاً فرعياً إليها، وتنقر لإصدار شهادة. انتهى الأمر.
المفاضلة الرئيسية هي أن تهيئة مصدر الحقيقة لـ NPM تعيش في قاعدة بيانات SQLite افتراضياً. صحيح أن NPM يولّد ملفات Nginx قابلة للقراءة ضمن /data/nginx/proxy_host/، لكن تلك الملفات هي مخرجات مولَّدة وليست التهيئة التصريحية التي تحررها وتتحكم في إصداراتها. يمكنك فحصها، لكنها ليست بديلاً نظيفاً لملف Caddyfile أو تسميات Traefik، والطريقة الموثوقة لإعادة إنتاج النشر هي استعادة بيانات NPM ووحدات تخزين الشهادات. بالنسبة إلى حزمة ثابتة صغيرة، قد يكون ذلك مقبولاً. أما بالنسبة إلى سير عمل بنية تحتية مدفوع بـ Git، فهو قيد حقيقي.
اعتباراً من 12 يوليو 2026، فإن أحدث إصدار موسوم هو v2.15.1، المنشور في 3 يونيو 2026. لا يزال المشروع نشطاً و مرخّص بموجب MIT، لكن وضعه الأمني الحالي يحتاج إلى تنبيه مهم: تُدرِج NVD الإصدارات من 2.9.14 حتى 2.15.1 على أنها متأثرة بـ CVE-2026-40519، وهي ثغرة حقن أوامر تتطلب المصادقة، جرى إصلاحها في الـ commit a5db5ed لكنها لم تُضمَّن بعد في إصدار موسوم أحدث. قبل النشر، تحقق من صفحة الإصدارات واستخدم أول إصدار موسوم يحتوي على ذلك الإصلاح. NPM مصان، لكن لا ينبغي حالياً وصف v2.15.1 بأنه مصحَّح بالكامل.
أما من حيث البصمة، فيستهلك NPM في حالة الخمول نحو 50 MB من RAM وفقاً لـ مقارنة الوكلاء العكسيين من byte-guard. وهذا خفيف بما يكفي بحيث لا يكون NPM تقريباً هو ما يُجهد خادمك. بل الخدمات التي خلفه.
رأيي: NPM خيار معقول لعام 2026 إذا كنت تريد واجهة رسومية وتشغّل حزمة Docker صغيرة. أما إذا كنت تعيش في التحكم بالإصدارات وتريد تهيئة الوكيل في Git، فانظر إلى Caddy بدلاً منه. التهيئة المدعومة بـ SQLite هي العامل الحاسم، وليس أي خلل في عملية الوكالة نفسها.
يقايض NPM قابلية نقل التهيئة مقابل واجهة رسومية. هذه المقايضة جيدة لحزمة ثابتة صغيرة ومزعجة لسير عمل مدفوع بـ Git.
NPM مقابل Caddy مقابل Traefik: أي وكيل عكسي يناسب خادمك
تنقسم الأدوات الثلاث على أربعة محاور تحدد الاختيار: كيف تهيئها، وكيف تتعامل مع HTTPS، وكيف تتوسع مع عدد الخدمات، وكم تستهلك من RAM في حالة الخمول. إليك المقارنة.
| الخاصية | مدير وكيل Nginx | Caddy | Traefik |
|---|---|---|---|
| نموذج التهيئة | واجهة ويب رسومية، مخزَّنة في SQLite | Caddyfile (نص، قابل للتحكم في الإصدارات) | تسميات Docker / YAML |
| HTTPS تلقائي | نعم، طلب لكل مضيف في الواجهة | نعم، افتراضياً، دون أي تهيئة | نعم، يتطلب تهيئة مُحلِّل ACME |
| الاكتشاف التلقائي في Docker | No | No | نعم، عبر تسميات الحاويات |
| RAM في حالة الخمول | ~50 MB | ~30 MB | ~80 MB |
| الحالة الأنسب | مستخدمو الواجهة الرسومية، الحزم الصغيرة/الثابتة | التهيئة ككود، أقل بصمة | حزم Docker الديناميكية ذات التغييرات المتكررة للحاويات |
أرقام RAM في حالة الخمول هي ملاحظات تقريبية من مقارنة واحدة لعام 2026، وليست متطلبات ثابتة. يختلف الاستخدام الفعلي باختلاف إصدار الصورة، والميزات المفعّلة، وحركة المرور، والتسجيل.
تنبع معايير الانتقال مباشرةً من ذلك الجدول. إذا كنت تريد لوحة تحكم وتشغّل حفنة من الخدمات التي لا تتغير كثيراً، فإن NPM هو الأداة المناسبة. أما إذا كنت تفضّل التهيئة ككود، أو تريد أصغر بصمة، أو تقدّر ما يوفره Caddy من توفير وتجديد HTTPS تلقائياً دون أي إعداد لـ ACME، فاستخدم Caddy. أنا شخصياً ألجأ إلى Caddy في عمليات النشر أحادية الموقع لأن التعامل مع SSL تلقائي وملف Caddyfile قصير. أما إذا كنت تضيف الحاويات أو تزيلها أو تعيد نشرها بشكل متكرر، فإن الاكتشاف التلقائي القائم على التسميات في Traefik يعني أنك تتوقف عن تسجيل كل مضيف جديد يدوياً.
هناك أيضاً Nginx المجرد مع Certbot، الذي يفضّله بعض المسؤولين للتحكم الدقيق أو للنشر خارج Docker. يمكن لـ Certbot أتمتة تجديد الشهادات، لكنك لا تزال تدير توجيه المضيفات الافتراضية وتهيئة Nginx بنفسك. إذا كان سببك الرئيسي للنظر في NPM هو تجنّب تهيئة الوكيل يدوياً، فمن غير المرجح أن يكون Nginx المجرد هو الأنسب.
ملاحظة واحدة حول الاختيار: تخلص مقارنة byte-guard إلى أن Caddy هو الخيار الأخف في تلك المقارنة، وبالنسبة إلى إعداد جديد أحادي المضيف لعام 2026 فهذا خيار معقول. يفوز Caddy بكونه أخف من NPM، لكن إذا كنت تريد واجهة رسومية تحديداً، فهو ليس أفضل خيار لك.
لمقارنة أعمق جنباً إلى جنب للمحركات الأساسية، راجع مقارنة Caddy مقابل Nginx على خادم VPS.
المتطلبات المسبقة: ما ستحتاجه
قبل النشر، جهّز هذه العناصر. القائمة قصيرة، لكن تخطي أي عنصر وستفشل خطوة الشهادة لاحقاً.
- خادم VPS مع تثبيت Docker وDocker Compose (نظام Ubuntu 22.04 LTS أو Debian 12 مناسب).
- اسم نطاق، مع سجل DNS A (وسجل AAAA إذا كنت تستخدم IPv6) يشير إلى عنوان IP العام لخادمك.
- وصول SSH إلى الخادم.
- المنفذان 80 و443 مفتوحان للإنترنت على جدار حمايتك.
- المنفذ 81 قابل للوصول من قِبَلك أنت فقط، وليس مفتوحاً للعموم (يتناوله قسم الأمان).
إعداد Nginx Proxy Manager على خادمك باستخدام Docker Compose
يقوم هذا القسم بنشر NPM باستخدام Docker Compose. بمجرد أن تُحلّل سجلات DNS الخاصة بك إلى الخادم، يصبح إعداد الحاوية نفسه سريعاً، رغم أن انتشار DNS وإصدار الشهادة قد يستغرقان وقتاً أطول.
يستخدم الإعداد ملف Docker Compose واحداً وأمراً لمرة واحدة لإنشاء شبكة Docker مشتركة. أنشئ دليلاً، وأنشئ الشبكة، وأضف docker-compose.yml الملف أدناه، وشغّل الحاوية.
أولاً، أنشئ شبكة Docker المشتركة:
docker network create proxy
ثم أنشئ الملف docker-compose.yml :
# docker-compose.yml
services:
npm:
image: 'jc21/nginx-proxy-manager:<PATCHED_VERSION>'
restart: unless-stopped
ports:
- '80:80' # public HTTP
- '443:443' # public HTTPS
- '127.0.0.1:81:81' # admin UI, reachable only from the VPS itself
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
networks:
- proxy
networks:
proxy:
external: true
أرفق كل حاوية خلفية يجب أن يصل إليها NPM باسم الخدمة إلى الشبكة الخارجية نفسها proxy . يتيح ذلك لـ NPM تحليل الحاوية باسم خدمتها دون نشر منفذ تطبيق الخلفية على الخادم.
انسخ احتياطياً كلاً من ./data و ./letsencrypt قبل الترقيات. يحتوي دليل البيانات على قاعدة بيانات NPM والتهيئة المولَّدة، بينما يحتوي دليل Let's Encrypt على مواد شهاداتها.
بعض الأمور حول هذا الملف. تعتمد الصورة افتراضياً على قاعدة بيانات SQLite مخزَّنة في ./data وحدة التخزين. هذه هي الخلفية الافتراضية وهي صحيحة لمعظم عمليات النشر على خادم واحد. إذا كنت بحاجة إلى قاعدة بيانات خارجية، فإن NPM يدعم MariaDB/MySQL وPostgreSQL، ما يعني إضافة خدمة قاعدة بيانات ومتغيرات البيئة المطابقة. بالنسبة إلى خادم واحد، لا يزال SQLite هو الافتراضي الأبسط ما لم يكن لديك سبب واضح لنقل قاعدة البيانات خارج وحدة تخزين البيانات. إن restart: unless-stopped السياسة تعني أن NPM يعود للعمل إذا أُعيد تشغيل الخادم، وهو ما تريده لخدمة تقع أمام كل شيء آخر.
شغّله وتأكّد من أنه يعمل:
docker compose up -d
docker compose ps
الناتج المتوقع: الحاوية npm بالحالة Up، والمنفذان 80 و443 معيَّنان علناً، والمنفذ 81 مرتبط فقط بـ 127.0.0.1. يستغرق أول تشغيل بضع دقائق بينما يولّد NPM مفتاح JWT، ويهيّئ قاعدة البيانات، وينشئ مستخدم المسؤول الافتراضي. إن وثائق الإعداد الرسمية تصف تسلسل التشغيل الأول هذا.
أنشئ نفق SSH من حاسوبك المحلي قبل فتح واجهة الإدارة:
ssh -L 8181:127.0.0.1:81 user@your-vps
ثم افتح http://127.0.0.1:8181 في متصفحك. في التثبيت الجديد، سجّل الدخول باستخدام [email protected] و changeme، ثم استبدل فوراً البريد الإلكتروني وكلمة المرور الافتراضيين. لا تجعل لوحة التحكم قابلة للوصول علناً بينما تكون بيانات الاعتماد الافتراضية نشطة.
بمجرد تغيير بيانات اعتماد المسؤول، أضف أول مضيف وكيل لك:
- في لوحة التحكم، انتقل إلى Hosts، ثم Proxy Hosts، ثم Add Proxy Host.
- اضبط Domain Name إلى نطاقك الفرعي (على سبيل المثال
cloud.example.com). - عيّن Forward Hostname / IP إلى اسم حاوية الخلفية أو عنوان IP، و Forward Port إلى المنفذ الذي يستمع عليه.
- احفظ. يظهر مضيف الوكيل في القائمة، وتصل الآن الحركة الموجهة إلى ذلك النطاق الفرعي إلى حاويتك.
إذا كنت تشغّل واجهة إدارة Docker إلى جانب هذا، فينطبق النمط نفسه: وجّه نطاقاً فرعياً إلى أداة إدارة الحاويات بالطريقة نفسها، وافعل الشيء نفسه مع أي مكدّس مراقبة Prometheus وGrafana تريد أن يقع خلف الوكيل.
تهيئة HTTPS التلقائي لنطاق فرعي
يوفّر لك هذا القسم شهادة Let's Encrypt صالحة وتتجدد تلقائياً لنطاقك الفرعي. المتطلب الأساسي هو الذي يوقع الناس في الخطأ: يجب أن يكون سجل DNS A لذلك النطاق الفرعي مشيراً بالفعل إلى خادمك، ويجب أن يكون المنفذ 80 قابلاً للوصول من الإنترنت، لأن Let's Encrypt يتحقق من النطاق بالاتصال به مجدداً.
بعد إنشاء مضيف الوكيل، اطلب الشهادة:
- حرّر مضيف الوكيل، افتح علامة التبويب SSL .
- ضمن شهادة SSLاختر Request a new SSL Certificate.
- تفعيل Force SSL و HTTP/2 Support. لا تُفعّل HSTS إلا بعد التأكد من أن HTTPS يعمل بشكل صحيح، لأن المتصفحات قد تخزّن السياسة مؤقتاً وتجعل التعافي من خطأ في الشهادة أو تهيئة الوكيل أكثر صعوبة.
- وافق على شروط Let's Encrypt واحفظ.
افتراضياً، يستخدم NPM تحدي HTTP-01 للأسماء غير الشاملة (non-wildcard)، ويتحقق من كل اسم مضيف مطلوب عبر المنفذ 80. يمكن أن تحتوي الشهادة على عدة أسماء غير شاملة، لكن HTTP-01 لا يمكنه إصدار شهادات شاملة (wildcard). أما الأسماء الشاملة مثل *.example.com فتتطلب تحدي DNS-01 مع مزود DNS مدعوم. بالنسبة إلى إعداد عادي بنطاق فرعي واحد لكل خدمة، فإن HTTP-01 هو كل ما تحتاجه، والتجديدات تلقائية.
إذا فشل طلب الشهادة، فتحقق من المنفذ 80 أولاً. تشمل الأسباب الشائعة تعذّر الوصول إلى المنفذ 80، وقاعدة خاطئة في جدار الحماية السحابي أو مجموعة الأمان، وDNS لم يكمل انتشاره. لا يمكن لـ Let's Encrypt التحقق من نطاق لا يستطيع الوصول إليه.
تأمين لوحة إدارة NPM على خادم VPS
واجهة الإدارة على المنفذ 81 هي التعرّض الرئيسي في نشر NPM، ويقوم هذا القسم بتأمينها. هذا تحصين تشغيلي وليس تدقيقاً أمنياً: ثلاثة أشياء، تُنفَّذ مرة واحدة، وينخفض مستوى المخاطرة بشكل حاد.
أولاً، والأهم، أبقِ المنفذ 81 مرتبطاً بـ 127.0.0.1 كما هو موضح في ملف Docker Compose. صِل إلى لوحة التحكم عبر نفق SSH الموصوف سابقاً. إذا كنت بحاجة إلى وصول عن بُعد دائم، فاجعل واجهة الإدارة قابلة للوصول فقط عبر شبكة VPN خاصة. لا تنشر المنفذ 81 على عنوان IP العام للخادم.
ثانياً، فعّل مصادقة TOTP الثنائية على حساب المسؤول الخاص بك. أضاف NPM المصادقة الثنائية القائمة على TOTP في الإصدار 2.13.6، لذا فإن أي تثبيت حالي يمتلكها. فعّلها.
ثالثاً، أبقِ NPM مصحَّحاً وتحقق من الإصدار الدقيق بدلاً من افتراض أن الوسم latest آمن. تؤثر CVE-2026-40519 على الإصدارات من 2.9.14 حتى 2.15.1 ويمكن أن تسمح بتنفيذ التعليمات البرمجية عن بُعد بعد المصادقة عبر بيانات اعتماد ضارة لمزود DNS. CVE-2026-50892 تؤثر على v2.14.0 ويمكن أن تسمح لمهاجم مصادَق عليه بالحصول على مواد المفتاح الخاص لـ Let's Encrypt. وهناك مشكلة أقدم، CVE-2025-50579، أثّرت على v2.12.3 عبر خلل في CORS كان يمكن أن يكشف رموز JWT. القاعدة العملية بسيطة: أبقِ المنفذ 81 خاصاً، وفعّل المصادقة الثنائية، وثبّت إصداراً معروفاً بأنه مصحَّح، وتحقق من التنبيهات الأمنية قبل الترقية.
يبقى المنفذ 81 خاصاً ويبقى NPM مصحَّحاً. افعل هذين الأمرين وتصبح المخاطر الرئيسية المعروفة أسهل بكثير في الإدارة لإعداد عادي على خادم واحد.
تحديد حجم خادمك من أجل Nginx Proxy Manager
NPM نفسه خفيف؛ ومسألة تحديد الحجم تتعلق حقاً بـ NPM مضافاً إليه الخدمات الواقعة خلفه. نادراً ما تكون بصمة الوكيل في حالة الخمول هي القيد. فنسخة Nextcloud أو مدونة Ghost ستستهلك موارد أكثر من الوكيل نفسه.
إليك كيف تعمل الفئات عملياً:
- الحد الأساسي العملي الأدنى: 1 GB RAM و1 vCPU و10 GB تخزين. مشاركة واحدة دليل تحديد الحجم من جهة خارجية يستخدم الحد الأساسي نفسه، لكن تعامل معه كإرشاد تخطيطي وليس كمتطلب رسمي من NPM. فهو كافٍ لـ NPM ونظام التشغيل وبضع خدمات خفيفة، لكنه يترك هامشاً محدوداً.
- مريح: 2 GB RAM و1 vCPU و20 GB تخزين. NPM مضافاً إليه ثلاث إلى خمس خدمات مع متسع للتنفس. هذه هي النقطة المثالية لمعظم المستضيفين الذاتيين.
- ترقية: 4 GB RAM و2 vCPU. لثماني إلى اثنتي عشرة خدمة، أو لإعداد بحركة مرور ذات شأن حيث تريد هامش CPU لإنهاء TLS.
الرقم الذي تحدد الحجم على أساسه هو مجموع التطبيقات المُوكَّلة، وليس NPM. اجمع بصمات RAM للخدمات التي تنوي تشغيلها، وأضف إليها العبء الصغير للوكيل في حالة الخمول، واختر الفئة الأعلى من ذلك مع هامش.
تحديد حجم الخادم هو الجزء السهل. أما تشغيل NPM فلا يزال يعني تجهيز الخادم، وتثبيت Docker، وسحب الصورة، والمرور بإعداد التشغيل الأول ذاك. إذا كنت تفضّل تخطي خطوات التجهيز، فإن سوق Cloudzy يوفّر نشر Nginx Proxy Manager بنقرة واحدة على خادم NVMe VPS. فهو يشغّل الحاوية على خادم جديد، فتذهب مباشرةً إلى لوحة التحكم وأول مضيف وكيل لك. في كلتا الحالتين، فإن فئات تحديد الحجم أعلاه هي ما تجهّز على أساسه.
الأسئلة الشائعة
ما الفرق بين Nginx وNginx Proxy Manager؟
Nginx هو خادم الويب ومحرك الوكيل العكسي نفسه، الذي تهيئه بتحرير ملفات نصية. أما Nginx Proxy Manager فهو تطبيق Docker يشغّل Nginx في الأسفل ويضيف واجهة ويب في الأعلى، فتدير مضيفات الوكيل وشهادات Let's Encrypt عبر لوحة تحكم بدلاً من كتابة ملفات التهيئة. NPM هو طبقة الواجهة الرسومية؛ وNginx هو المحرك الذي يؤدي العمل.
هل لا يزال Nginx Proxy Manager يستحق الاستخدام في 2026؟
نعم، للمستخدمين الذين يفضّلون الواجهة الرسومية ويشغّلون حزمة Docker صغيرة، لكن فقط بعد أن تتحقق من أن الصورة التي تنشرها تتضمن أحدث الإصلاحات الأمنية. اعتباراً من 12 يوليو 2026، فإن v2.15.1 هو أحدث إصدار موسوم، وتُدرِجه NVD على أنه متأثر بـ CVE-2026-40519. إذا كنت تفضّل التهيئة ككود، فيبقى Caddy الأنسب؛ فالتهيئة المدعومة بـ SQLite في NPM هي قيده التشغيلي الرئيسي.
ما الحد الأدنى من RAM لـ Nginx Proxy Manager؟
يستهلك NPM نفسه في حالة الخمول نحو 50 MB من RAM. خادم بـ 1 GB هو حد أساسي عملي، يكفي لـ NPM مضافاً إليه بضع خدمات خفيفة. و2 GB مريح بمجرد إضافة المزيد من التطبيقات المُوكَّلة. متطلب RAM الحقيقي تحدده الخدمات التي خلف NPM، وليس NPM نفسه.
هل ينبغي أن أكشف المنفذ 81 على الإنترنت؟
لا. أبقِ المنفذ 81 مرتبطاً بـ localhost وصِل إليه عبر نفق SSH، أو اجعله قابلاً للوصول فقط عبر شبكة VPN خاصة. لا تنشر واجهة الإدارة على عنوان IP العام للخادم.
هل يمكنني تشغيل Nginx Proxy Manager بدون Docker؟
لا. يُوزَّع NPM ويُصمَّم كحاوية Docker، ولا يوجد تثبيت مدعوم خارج Docker. إذا كنت لا تستطيع أو لا ترغب في تشغيل Docker، فاستخدم Nginx المجرد مع Certbot، أو Caddy كملف ثنائي واحد، بدلاً من ذلك.
هل يدعم Nginx Proxy Manager الشهادات الشاملة (Wildcard)؟
نعم، عبر تحدي DNS-01 مع مزود DNS مدعوم مهيّأ. تستخدم الشهادات القياسية أحادية اسم المضيف تحدي HTTP-01 عبر المنفذ 80؛ أما الشهادات الشاملة (*.example.com) فتتطلب DNS-01 لأن سلطة إصدار الشهادات تتحقق من التحكم بكتابة سجل DNS بدلاً من الوصول إلى مضيف واحد.