سير عمل Terminal Proxy للمطورين
تحوّل FreeGuard CLI الطرفية لديك إلى بيئة تطوير آمنة عبر توجيه الحركة المرورية من خلال نفق VPN مشفّر. سواء كنت تستنسخ المستودعات من شبكات مقيّدة، أو تصحّح أخطاء API عبر مناطق مختلفة، أو تنشر الحاويات عبر قنوات آمنة، فإن CLI يندمج مع الأدوات التي تستخدمها بالفعل — git وssh وcurl وdocker والمزيد.

سير عمل Terminal Proxy للمطورين

تحوّل FreeGuard CLI الطرفية لديك إلى بيئة تطوير آمنة عبر توجيه الحركة المرورية من خلال نفق VPN مشفّر. سواء كنت تستنسخ المستودعات من شبكات مقيّدة، أو تصحّح أخطاء API عبر مناطق مختلفة، أو تنشر الحاويات عبر قنوات آمنة، فإن CLI يندمج مع الأدوات التي تستخدمها بالفعل — git وssh وcurl وdocker والمزيد.

لماذا يحتاج المطورون إلى Terminal Proxy

تتضمن العديد من مهام التطوير الوصول إلى الشبكة الذي يستفيد من حماية VPN:

  • الوصول إلى API الداخلية من المقاهي أو المطارات
  • اختبار الخدمات المقيّدة جغرافيًا أثناء التطوير
  • دفع الشيفرة عبر شبكات تفرض قيودًا على حركة git أو تفحصها
  • الاتصال بالخوادم البعيدة عبر جدران نارية تقييدية
  • إبقاء بيانات اعتماد CI/CD مشفّرة أثناء النقل

يتعامل FreeGuard CLI مع كل ذلك دون مغادرة الطرفية.


Git عبر VPN

المشكلة

تفرض الشبكات المؤسسية وWi-Fi العامة وبعض مزوّدي خدمة الإنترنت قيودًا على عمليات git أو تحظرها. قد يتم تمييز اتصالات git المعتمدة على SSH بواسطة فحص الحزم العميق. وقد تتعرض عمليات الاستنساخ عبر HTTPS للاعتراض بواسطة الوكلاء الشفافين.

الحل

اتصل بـ FreeGuard قبل عمليات git:

freeguard connect --server us-east

git clone [email protected]:your-org/private-repo.git
git fetch --all
git push origin feature-branch

freeguard disconnect

لنهج أكثر أتمتة، يمكنك تضمينه في script:

#!/bin/bash
freeguard connect --server us-east --json | jq -r '.status'
trap "freeguard disconnect" EXIT

git pull origin main
npm run build
git push origin main

يضمن trap قطع اتصال VPN حتى إذا فشل script في منتصف التنفيذ.

Git متوافق مع Proxy

يمكن أيضًا لـ FreeGuard CLI أن يوفّر Proxy محليًا من نوع SOCKS5 أو HTTP. قم بتكوين git لاستخدامه:

# Set proxy for git globally
git config --global http.proxy socks5://127.0.0.1:1080
git config --global https.proxy socks5://127.0.0.1:1080

# Or per-repository
git config http.proxy socks5://127.0.0.1:1080

أزل إعدادات Proxy عند الانتهاء:

git config --global --unset http.proxy
git config --global --unset https.proxy

SSH Tunneling مع VPN

الوصول إلى الخادم البعيد

عندما تحتاج إلى استخدام SSH للاتصال بالخوادم من شبكات غير موثوقة، يضيف VPN طبقة تشفير قبل أن تغادر حركة SSH جهازك أصلًا:

freeguard connect --server us-west
ssh [email protected]

ProxyJump عبر VPN

ادمج FreeGuard مع SSH ProxyJump للوصول متعدد القفزات:

# Connect to VPN first
freeguard connect

# Then jump through a bastion host
ssh -J [email protected] [email protected]

إعادة توجيه المنافذ

قم بإعادة توجيه المنافذ البعيدة عبر نفق VPN:

freeguard connect --server eu-west
ssh -L 5432:db.internal:5432 [email protected]
# Now connect to localhost:5432 to reach the remote database

تطوير API

الاختبار باستخدام curl

وجّه طلبات API عبر VPN للاختبار من مناطق مختلفة:

freeguard connect --server jp-tokyo

# Test geo-specific API responses
curl -s https://api.example.com/v1/content | jq '.region'
# Output: "ap-northeast-1"

freeguard connect --server de-frankfurt
curl -s https://api.example.com/v1/content | jq '.region'
# Output: "eu-central-1"

استخدام httpie

يعمل httpie بالطريقة نفسها. يعمل FreeGuard CLI على مستوى النظام، لذا تستفيد جميع عملاء HTTP:

freeguard connect --server uk-london
http GET https://api.example.com/v1/pricing Accept:application/json

وضع Proxy للتوجيه الانتقائي

إذا كنت تريد فقط أن تمر بعض الطلبات عبر VPN، فاستخدم Proxy المحلي:

# Start FreeGuard with local proxy
freeguard connect

# Route specific requests through the proxy
curl --proxy socks5://127.0.0.1:1080 https://api.example.com/endpoint

# Direct requests bypass VPN
curl https://internal.company.com/api

حاويات Docker + VPN

حركة شبكة الحاويات عبر VPN

وجّه حركة حاويات Docker عبر FreeGuard:

# Connect host to VPN
freeguard connect --server us-east

# Containers using host network will route through VPN
docker run --network host my-app:latest

تكامل Docker Compose

أضف اتصال VPN إلى مجموعة التطوير لديك:

#!/bin/bash
# dev-start.sh
freeguard connect --server us-east --json | jq -r '.status'
docker compose up -d
echo "Development stack is running through VPN"

بناء الصور خلف شبكات تقييدية

عندما يحتاج docker build إلى تنزيل الحزم من registries محظورة أو بطيئة:

freeguard connect --server us-west
docker build --network host -t my-app:latest .
freeguard disconnect

تكامل CI/CD

GitHub Actions

استخدم FreeGuard CLI في مسار CI لديك للوصول إلى موارد مقيّدة جغرافيًا أثناء عمليات البناء:

- name: Connect VPN
  run: |
    curl -fsSL https://cli.freeguard.com/install.sh | bash
    freeguard login --method token --token ${{ secrets.FREEGUARD_TOKEN }}
    freeguard connect --server us-east --json

مخرجات مناسبة للـ Script

يدعم كل أمر من أوامر FreeGuard CLI الخيار --json لإخراج قابل للقراءة آليًا، و--no-color لملفات سجل نظيفة:

# Get connection status as JSON
freeguard status --json
# {"connected": true, "server": "us-east-1", "protocol": "hysteria2", "uptime": 3600}

# List servers as JSON for programmatic selection
freeguard servers --json --region us | jq '.[0].id'

رموز الخروج

يستخدم CLI رموز خروج قياسية يمكن للـ script التحقق منها:

Exit Code Meaning
0 Success
1 General error
2 Authentication required
3 Connection failed
4 Server not found
freeguard connect --server us-east
if [ $? -eq 0 ]; then
  echo "VPN connected, starting deployment..."
  ./deploy.sh
fi

نصائح للاستخدام اليومي

  1. Shell alias — أضف alias vpn="freeguard connect" وalias vpnoff="freeguard disconnect" إلى shell profile الخاص بك.
  2. Auto-connect — أضف freeguard connect إلى .zshrc أو .bashrc إذا كنت تريد أن يكون VPN مفعّلًا دائمًا.
  3. Server bookmarks — استخدم freeguard config set default-server us-east لتجاوز الوسيط --server.
  4. Status in prompt — حلّل freeguard status --json لإظهار حالة VPN في shell prompt.

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

Last updated: March 2026