Workers VPC شرح شامل ودليل عملي للمطورين
أعلنت Cloudflare Workers VPC كحل حديث يتيح لتطبيقات Workers الوصول الآمن إلى الخدمات والموارد الموجودة داخل الشبكات الخاصة دون الحاجة إلى تعريضها للإنترنت العام.
سواء كانت مواردك موجودة داخل AWS أو Azure أو Google Cloud أو حتى داخل مركز بيانات محلي، فإن Workers VPC يوفر طريقة آمنة ومبسطة لربط تطبيقات Edge بهذه الخدمات الخاصة.
ما هو Workers VPC؟
Workers VPC هو نظام اتصال خاص من Cloudflare يسمح لتطبيقات Workers بالوصول إلى:
- واجهات API الداخلية
- قواعد البيانات الخاصة
- الخوادم الداخلية
- الخدمات الموجودة داخل الشبكات السحابية الخاصة
ويتم ذلك عبر Cloudflare Tunnel الذي ينشئ اتصالاً مشفراً وآمناً بين شبكتك الخاصة وشبكة Cloudflare العالمية.
المشكلة التي يحلها Workers VPC
قبل ظهور Workers VPC كان المطورون يضطرون إلى:
- إنشاء واجهات API عامة للوصول إلى الخدمات الداخلية.
- إدارة العديد من الأنفاق (Tunnels) بشكل يدوي.
- التعامل مع إعدادات الشبكات والجدران النارية.
- إنشاء قواعد وصول معقدة للحفاظ على الأمان.
أما الآن، فيمكن ربط الخدمات الداخلية مباشرة مع Workers باستخدام نظام Bindings الآمن الذي تشتهر به Cloudflare
المكونات الأساسية لـ Workers VPC
1. Cloudflare Tunnel
يعمل Cloudflare Tunnel كجسر آمن بين شبكتك الخاصة وشبكة Cloudflare دون الحاجة إلى فتح منافذ أو استخدام عنوان IP عام. ويعتمد على اتصالات مشفرة ومستمرة لضمان الأمان والاعتمادية.
مثال إنشاء Tunnel:
cloudflared tunnel create workers-vpc-tunnel
cloudflared tunnel route ip <TUNNEL_ID>
دليل التثبيت الرسمي: Create a Cloudflare Tunnel .
2. VPC Service
تمثل خدمة معينة داخل الشبكة الخاصة يمكن للـ Worker الوصول إليها، مثل:
- API داخلي
- PostgreSQL
- MySQL
- Redis
- Elasticsearch
مثال إنشاء خدمة HTTP:
wrangler vpc service create my-private-api \
--tunnel-id <TUNNEL_ID> \
--hostname internal-api.company.local \
--http-port 80 \
--https-port 443
مثال إنشاء خدمة PostgreSQL:
wrangler vpc service create my-database \
--type tcp \
--tunnel-id <TUNNEL_ID> \
--ipv4 10.0.1.50 \
--tcp-port 5432 \
--app-protocol postgresql
وثائق VPC Services: VPC Services Documentation .
3. VPC Network Binding
عند الحاجة للوصول إلى شبكة كاملة بدل خدمة محددة فقط، يمكن استخدام VPC Network Bindings للوصول إلى مجموعة أكبر من الموارد خلف Cloudflare Tunnel.
| الميزة | VPC Services | VPC Networks |
|---|---|---|
| نطاق الوصول | خدمة محددة | الشبكة بالكامل |
| التسجيل المسبق | مطلوب | غير مطلوب |
| الأمان | مرتفع | مرن |
كيفية إعداد Workers VPC
إنشاء مشروع Worker
npm create cloudflare@latest workers-vpc-app
إضافة Binding داخل wrangler.jsonc
{
"name": "my-worker",
"main": "src/index.ts",
"vpc_services": [
{
"binding": "PRIVATE_API",
"service_id": "YOUR_SERVICE_ID"
}
]
}
استخدام الخدمة داخل Worker
export default {
async fetch(request, env) {
const response = await env.PRIVATE_API.fetch(
"http://internal-api.company.local/users"
);
const data = await response.json();
return Response.json(data);
}
}
يمكنك اتباع الدليل الرسمي الكامل من: Workers VPC Getting Started Guide .
مميزات الأمان في Workers VPC
- مبدأ أقل قدر من الصلاحيات (Least Privilege).
- التحقق من الصلاحيات أثناء النشر.
- الحماية من هجمات SSRF.
- توجيه آمن للطلبات داخل الشبكات الخاصة.
تؤكد Cloudflare أن VPC Services تمنع الوصول غير المقصود إلى بقية الشبكة وتحمي التطبيقات من هجمات SSRF عبر نظام Bindings
حالات الاستخدام العملية
1. التطبيقات متعددة السحب
ربط تطبيقات Workers مع خدمات موزعة بين AWS وAzure وGoogle Cloud وكأنها ضمن شبكة واحدة.
2. تحديث الأنظمة القديمة
السماح للتطبيقات الحديثة بالوصول إلى الأنظمة القديمة الموجودة داخل مراكز البيانات دون إعادة بناء البنية التحتية بالكامل.
3. التطوير المحلي
يمكن تشغيل Cloudflare Tunnel على جهاز المطور وربط Worker مباشرة ببيئة التطوير المحلية.
4. قواعد البيانات الخاصة
الوصول إلى PostgreSQL أو MySQL أو الخدمات الداخلية دون كشفها للعالم الخارجي.
الوضع الحالي لـ Workers VPC
بحسب Cloudflare، فإن Workers VPC متاح حالياً في مرحلة Beta ومتاح مجاناً لجميع خطط Workers أثناء فترة الاختبار.
الخلاصة
يمثل Workers VPC خطوة مهمة نحو بناء تطبيقات سحابية حديثة وآمنة. فبدلاً من الاعتماد على حلول الشبكات المعقدة، يمكن للمطورين الآن ربط تطبيقات Workers بقواعد البيانات والخدمات الداخلية بسهولة عبر Cloudflare Tunnel ونظام Bindings الآمن.
إذا كنت تبني تطبيقات تعتمد على Cloudflare Workers وتحتاج للوصول إلى موارد خاصة داخل AWS أو Azure أو الشبكات المحلية، فإن Workers VPC يعد أحد أقوى الحلول المتاحة حالياً.
