A reverse proxy server is a type of proxy server that is deployed between clients and back-end/origin servers, for example, an HTTP server such as NGINX, Apache, etc.. or application servers written in Nodejs, Python, Java, Ruby, PHP, and many other programming languages.
إنه بوابة أو خادم وسيط يأخذ طلب العميل ويمرره إلى أحد خوادم الخلفية أو أكثر، وبعد ذلك يسترد الاستجابة من الخادم ويسلمها مرة أخرى إلى العميل، مما يجعله يبدو وكأن المحتوى نشأ من خادم الوكيل العكسي نفسه.
عمومًا، يعتبر خادم الوكيل العكسي خادم وكيل داخلي يُستخدم كـ “واجهة أمامية” للتحكم في الوصول إلى خوادم الخلفية في شبكة خاصة: وعادة ما يتم نشره خلف جدار الحماية الشبكي.
يساعد خوادم الخلفية على تحقيق الاستبانة لتعزيز أمانها. في البنية التحتية لتكنولوجيا المعلومات، يمكن لخادم الوكيل العكسي أيضًا أن يعمل كجدار نار للتطبيقات، وموازن الحمل، ومنهي TLS، ومسرع ويب (عن طريق تخزين المحتوى الثابت والديناميكي)، والكثير غير ذلك.
في هذه المقالة، سنستعرض أفضل 10 خوادم وكلاء عكسية مفتوحة المصدر يمكنك استخدامها على نظام Linux.
جدول المحتويات
1. HAProxy – (موازن الحمل TCP/HTTP)
HAProxy (HAProxy, والذي يعني التوفر العالي للخادم), هو برنامج موازن الحمل وبروكسي مجاني ومفتوح المصدر وسريع جدًا وموثوق به ومتقدم للغاية لتوجيه حركة المرور وبرامج الوكيل لتطبيقات TCP و HTTP المستندة إلى الويب، المصمم للتوفر العالي.
HAProxy هو بروكسي عكسي لبروتوكول HTTP، وبروكسي ومعيار لـ TCP، ومنبذ ومبادل لتهيئة/إيقاف/تفريغ SSL/TLS، وبروكسي للتخزين المؤقت، ومنبذ لضغط HTTP، ومنظم لحركة المرور، ومفتاح تبديل يستند إلى المحتوى، وبوابة FastCGI، والمزيد. كما أنه يوفر الحماية ضد هجمات DDoS وسوء الاستخدام للخدمة.
تعتمد على محرك يعمل بالأحداث، وهو محرك غير مانع يجمع بين طبقة إدخال/إخراج سريعة جدًا مع جدولة متعددة الخيوط بناءً على الأولويات مما يتيح له التعامل بسهولة مع عشرات الآلاف من الاتصالات المتزامنة.
من الجدير بالذكر أن HAProxy يستخدم بروتوكول PROXY لتمرير معلومات اتصال العميل إلى الخوادم الخلفية أو الأصلية بحيث يحصل التطبيق على جميع المعلومات ذات الصلة.
بعض ميزات HAProxy الأساسية تشمل الوكالة، دعم SSL، مراقبة حالات الخادمين كلاهما وحالتهما، التوفر العالي، توازن الحمل، الالتصاق (الاحتفاظ بالزائر على نفس الخادم حتى عبر أحداث مختلفة)، تحويل المحتوى، إعادة الكتابة وإعادة التوجيه HTTP، حماية الخادم، تسجيل الأحداث، إحصائيات، والكثير غير ذلك.
2. NGINX – (خادم ويب بروكسي HTTP وعكسي)
NGINX هو خادم HTTP وبروكسي عكسي مجاني ومفتوح المصدر وعالي الأداء وشديد الشعبية. كما أنه يعمل أيضًا كخادم بروكسي IMAP/POP3. NGINX مشهور بأدائه العالي وثباته ومجموعة ميزاته الغنية وتكوينه البسيط والمرن واستهلاكه المنخفض للموارد (خصوصاً الذاكرة).
NGINX يحتوي على تصميم معماري مدفوع بالأحداث مثل HAProxy، لذلك لا يواجه مشكلة في التعامل مع عشرات الآلاف من الاتصالات المتزامنة، حيث يستخدم بروتوكول HAProxy.
NGINX يدعم البروكسي العكسي المعجل مع التخزين المؤقت باستخدام وحدة ngx_http_proxy_module، التي تسمح بتمرير الطلبات إلى خادم آخر عبر بروتوكولات أخرى غير HTTP، مثل FastCGI، uwsgi، SCGI، و Memcached.
المهم أنه يدعم التوازن والمرونة في التحميل وهي جوانب حيوية في أنظمة الحوسبة الموزعة بمقياس كبير. وحدة ngx_http_upstream_module تتيح تحديد مجموعات من خوادم الواجهة الخلفية لتوزيع الطلبات الواردة من العملاء.
هذا يجعل تطبيقاتك أكثر قوة وتوافرًا وموثوقية، وقابلية للتوسع بشكل كبير مع زمن الاستجابة ومعدل النفاذ. بالإضافة إلى ذلك، فيما يتعلق بالأمان، فهو يدعم إنهاء SSL/TLS والعديد من الميزات الأمنية الأخرى.
مقالات مفيدة حول خادم الويب Nginx قد ترغب في قراءتها:
3. Varnish – (بروكسي تخزين مؤكسج)
تخزين HTTP Varnish (أو تخزين Varnish أو ببساطة Varnish) هو برنامج مفتوح المصدر وعالي الأداء وشهير جدا لبروكسي عكسي للتخزين يعرف بتسريع تطبيق الويب، مصمم لتحسين أداء HTTP باستخدام التخزين على الخادم.
يتم نشره بين العميل وخادم ويب HTTP أو خادم تطبيقات؛ في كل مرة يطلب فيها العميل معلومات أو موردًا من خادم ويب، يقوم Varnish بتخزين نسخة من المعلومات، لذا في المرة القادمة التي يطلب فيها العميل نفس المعلومات، سيقدم Varnish ذلك دون إرسال طلب إلى خادم الويب مما يقلل من العبء على الخادم وبالتالي يسرع توصيل محتوى الويب.
Varnish يستخدم لغة تكوين مرنة تعرف باسم لغة تكوين Varnish (VLC) التي من بين أشياء أخرى تمكن مسؤولي النظام من تكوين كيفية معالجة الطلبات الواردة، وماهية المحتوى الذي يجب تقديمه، ومن أين، وكيفية تعديل الطلب أو الاستجابة، والمزيد.
الورنيش قابل أيضًا للتوسيع – يمكن توسيعه باستخدام وحدات الورنيش (VMODs) ويمكن للمستخدمين كتابة وحداتهم المخصصة أو استخدام الوحدات التي يوفرها المجتمع.
القيود الرئيسية لـ الورنيش هي عدم دعمه لـ SSL/TLS. الطريقة الوحيدة لتمكين HTTPS هي نشر جهاز تحويل أو تفريغ SSL/TLS مثل HAProxy أو NGINX أمامه.
4. Træfɪk – (الوكيل التطبيقي السحابي الأصلي)
ترافيك (تنطق ترافيك) هو بروكسي عكسي وموازن حمولة HTTP حديث وسريع ومفتوح المصدر ومجاني لنشر الخدمات الصغيرة التي يدعم عدة خوارزميات لتوازن الحمولة.
يمكنه التواصل مع مزودين مختلفين (أو آليات اكتشاف الخدمات أو أدوات التنظيم) مثل كوبرنيتيس، دوكر، Etcd، واجهة برمجة التطبيقات الباقية، Mesos/Marathon، Swarm، وZookeper.
ميزته الجميلة هي قدرته على إدارة تكوينه تلقائيًا وديناميكيًا، مما يسمح باكتشاف التكوين الصحيح لخدماتك. يقوم بذلك من خلال فحص البنية التحتية الخاصة بك للعثور على معلومات ذات صلة واكتشاف أي خدمة تخدم أي طلب من العالم الخارجي. يخبر مزودون ترافيك أين توجد تطبيقاتك أو الخدمات الصغيرة الخاصة بك.
تدعم ميزات أخرى في ترافيك WebSocket وHTTP/2 وGRPC، وإعادة تحميل ساخن (تحديث تكوينه بشكل مستمر دون إعادة التشغيل)، وHTTPS باستخدام شهادات Let’s Encrypt (دعم لشهادات الوايلد كارد)، ويكشف عن واجهة برمجة التطبيقات. كما يحتفظ بسجلات الوصول، ويوفر مقاييس (Rest، Prometheus، Datadog، Statsd، InfluxDB).
بالإضافة إلى ذلك، ترافيك يأتي مع واجهة مستخدم ويب بسيطة قائمة على HTML تُستخدم لمراقبة الأحداث. كما يدعم الفاصلات الكهربائية، وإعادة محاولة الطلبات، وتقييد السرعة، والمصادقة الأساسية.
5. Apache Traffic Server – (ملقم وكيل إعادة التوجيه والإعادة)
كانت في السابق منتجًا تجاريًا يمتلكه ياهو والذي تم تسليمه لاحقًا إلى مؤسسة أباتشي، ملقم حركة المرور أباتشي هو ملقم إعادة توجيه وإعادة توجيه مجاني ومفتوح المصدر وسريع الذي يقوم بتخزين البيانات وإعادة توجيهها.
يعمل ملقم المرور أيضًا كموازن حمل ويمكنه المشاركة في تسلسل تخزين ذاكرة مؤقتة مرنة. يُعتقد أنه تم التعامل مع أكثر من 400 تيرابايت يوميًا من حركة المرور في ياهو.
يتميز بمجموعة من ميزات البقاء على قيد الحياة، أو تصفية، أو تجهيز طلبات المحتوى بشكل مجهول، ويمكن توسيعه عبر واجهة برمجة تطبيقات تسمح للمستخدمين بإنشاء إضافات مخصصة لتعديل رؤوس HTTP، ومعالجة طلبات ESI، أو تصميم خوارزميات ذاكرة مؤقتة جديدة.
6. Squid – (ملقم وكيل تخزين وإعادة توجيه HTTP)
سكويد هو ملقم وكيل مجاني ومفتوح المصدر وشهير وبرنامج ديمون ذاكرة ويب يدعم مختلف البروتوكولات مثل HTTP و HTTPS و FTP وغيرها. يتميز بوضع وكيل إعادة التوجيه (تسارع httpd) الذي يقوم بتخزين الطلبات الواردة للبيانات الصادرة.
يدعم خيارات غنية لتحسين حركة المرور، والتحكم في الوصول، والترخيص، ومرافق التسجيل، والمزيد من ذلك بكثير.
7. Pound – (الوكيل العكسي وموازن الحمل)
A Pound is another free and open-source, lightweight reverse proxy and load balancer and front-end for web servers. It is also an SSL terminator (that decrypts HTTPS requests from clients and sends them as plain HTTP to the back-end servers).
منقّي HTTP/HTTPS (الذي يتحقق من صحة الطلبات ويقبل فقط تلك المتشكلة بشكل جيد)، وخادم احتياطي.
8. Apache – (خادم ويب HTTP)
خادم Apache HTTP (المعروف أيضًا باسم HTTPD)، أكثر خوادم الويب شهرة على الكوكب يمكن أيضًا نشره وتكوينه ليعمل كوكيل عكسي.
يتفوق Apache في توجيه طلبات العملاء إلى خوادم الخلفية، معززًا الأمان وتوازن الحمولة وتحسين أداء تطبيقات الويب. من خلال العمل كوسيط، يمكن لـ Apache توزيع حركة المرور الواردة بكفاءة إلى عدة حالات من الخوادم، مما يضمن التوفر العالي وتجارب مستخدم سلسة.
يجعل خيارات التكوين القوية والقابلة للتخصيص منها خيارًا رائدًا للمنظمات التي تبحث عن حل موثوق للحاجة إلى عكسي المواقع، سواء كانت لتخزين محتوى أو توصيل التطبيقات.
9. Skipper – (HTTP Router and Reverse Proxy)
Skipper هو جهاز توجيه HTTP مجاني ومفتوح المصدر وعكسي المواقع لتكوين الخدمة، بما في ذلك حالات الاستفادة مثل عكسي المواقع في Kubernetes.
تم بناءه لإدارة عدد كبير من تعريفات طريق HTTP متكونة بشكل ديناميكي، يتجاوز 800,000 طريقة، مع شروط عولجة معقدة، وتوفير مرونة لتطوير تدفق الطلبات مع المرشحات.
يمكن نشره بسهولة كما هو، أو تمديده عن طريق دمج البحث المخصص ومنطق المرشح ومصادر التكوين.
10 Caddy 2 – خادم سريع مع HTTPS تلقائي
Caddy 2 هو خادم ويب مفتوح المصدر معروف ببساطته وقدرته على التنوع، يوفر واجهة سهلة الاستخدام و HTTPS تلقائيًا كإعداد افتراضي، مما يجعله خيارًا متاحًا لكل من المستخدمين الجدد والمحترفين.
كادي 2 مصمم للتعامل مع استضافة الويب بسهولة، وبروتوكول HTTP/2، وتوازن الحمل، والتوجيه البروكسي، مما يعزز أداء وأمان المواقع الإلكترونية. طبيعته مفتوحة المصدر تشجع على مساهمات المجتمع، وقد اكتسب شهرة بفضل سهولة استخدامه وميزاته الحديثة في عالم استضافة الويب وإدارة الخوادم.
الاستنتاج
هذا كل ما كان لدينا لكم في هذا الدليل. لمزيد من المعلومات حول كل أداة في هذه القائمة، قم بزيارة مواقعها الرسمية. ولا تنسى مشاركة أفكارك معنا عبر نموذج التغذية الراجعة أدناه.
Source:
https://www.tecmint.com/open-source-reverse-proxy-servers-for-linux/