گردش کار Proxy ترمینال برای توسعهدهندگان
FreeGuard CLI ترمینال شما را با مسیریابی ترافیک از طریق تونلهای رمزنگاریشده VPN به یک محیط توسعه امن تبدیل میکند. چه در حال کلونکردن repositoryها از شبکههای محدود باشید، چه در حال دیباگ کردن APIها بین مناطق مختلف، یا استقرار containerها از طریق کانالهای امن، این CLI با ابزارهایی که همین حالا هم استفاده میکنید یکپارچه میشود — git، ssh، curl، docker و موارد دیگر.
چرا توسعهدهندگان به Proxy ترمینال نیاز دارند
بسیاری از کارهای توسعه شامل دسترسی شبکهای هستند که از حفاظت VPN بهره میبرند:
- دسترسی به APIهای داخلی از کافیشاپها یا فرودگاهها
- آزمایش سرویسهای محدودشده بر اساس جغرافیا در طول توسعه
- ارسال کد از طریق شبکههایی که ترافیک git را محدود یا بررسی میکنند
- اتصال به سرورهای راه دور از طریق فایروالهای محدودکننده
- نگهداشتن اعتبارنامههای CI/CD بهصورت رمزنگاریشده در حین انتقال
FreeGuard CLI همه این موارد را بدون ترک ترمینال شما مدیریت میکند.
Git از طریق VPN
مشکل
شبکههای سازمانی، Wi‑Fi عمومی و برخی ISPها عملیات git را محدود یا مسدود میکنند. اتصالهای git مبتنی بر SSH ممکن است توسط deep packet inspection علامتگذاری شوند. cloneهای HTTPS ممکن است توسط Proxyهای شفاف رهگیری شوند.
راهحل
پیش از عملیات git به FreeGuard متصل شوید:
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 تضمین میکند که حتی اگر script در میانه کار ناموفق شود، اتصال VPN قطع میشود.
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]
Port Forwarding
پورتهای راه دور را از طریق تونل VPN forward کنید:
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 clientها از آن بهره میبرند:
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 Containers + VPN
ترافیک container از طریق VPN
ترافیک containerهای 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 را به stack توسعه خود اضافه کنید:
#!/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"
ساخت imageها پشت شبکههای محدودکننده
وقتی docker build نیاز دارد بستههایی را از registryهایی دانلود کند که مسدود یا کند هستند:
freeguard connect --server us-west
docker build --network host -t my-app:latest .
freeguard disconnect
یکپارچهسازی CI/CD
GitHub Actions
از FreeGuard CLI در pipeline CI خود استفاده کنید تا در طول buildها به منابع محدودشده بر اساس جغرافیا دسترسی داشته باشید:
- 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 برای فایلهای log تمیز پشتیبانی میکند:
# 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
نکات برای استفاده روزمره
- Shell alias —
alias vpn="freeguard connect"وalias vpnoff="freeguard disconnect"را به shell profile خود اضافه کنید. - اتصال خودکار — اگر همیشه میخواهید VPN روشن باشد،
freeguard connectرا به.zshrcیا.bashrcخود اضافه کنید. - بوکمارکهای سرور — از
freeguard config set default-server us-eastاستفاده کنید تا از flag--serverصرفنظر شود. - وضعیت در prompt —
freeguard status --jsonرا parse کنید تا وضعیت VPN در shell prompt شما نمایش داده شود.
مراحل بعدی
- FreeGuard CLI — نصب و مرجع کامل فرمانها
- CLI command documentation — مرجع دقیق برای هر فرمان و flag
- Deploy on headless servers — اجرای FreeGuard CLI بهعنوان یک سرویس سیستم
- Pricing — طرحهای مناسب برای توسعهدهندگان
آخرین بهروزرسانی: March 2026