Робочий процес 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 та деякі ISP обмежують або блокують операції 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

Для більш автоматизованого підходу обгорніть це в скрипт:

#!/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 навіть якщо скрипт завершиться з помилкою посередині.

Git, сумісний із Proxy

FreeGuard CLI також може надавати локальний SOCKS5 або HTTP proxy. Налаштуйте 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-тунелювання з 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 потрібно завантажити пакети з реєстрів, які заблоковані або працюють повільно:

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

Вивід, зручний для скриптів

Кожна команда 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 використовує стандартні коди завершення, які можуть перевіряти скрипти:

Exit Code Meaning
0 Успіх
1 Загальна помилка
2 Потрібна автентифікація
3 З’єднання не вдалося
4 Сервер не знайдено
freeguard connect --server us-east
if [ $? -eq 0 ]; then
  echo "VPN connected, starting deployment..."
  ./deploy.sh
fi

Поради для щоденного використання

  1. Псевдонім shell — Додайте alias vpn="freeguard connect" і alias vpnoff="freeguard disconnect" до вашого профілю shell.
  2. Автопідключення — Додайте freeguard connect до вашого .zshrc або .bashrc, якщо ви завжди хочете, щоб VPN був увімкнений.
  3. Закладки серверів — Використовуйте freeguard config set default-server us-east, щоб не вказувати прапорець --server.
  4. Статус у prompt — Розберіть freeguard status --json, щоб показувати статус VPN у вашому prompt shell.

Наступні кроки

  • FreeGuard CLI — встановлення та повний довідник команд
  • CLI command documentation — детальний довідник для кожної команди та прапорця
  • Deploy on headless servers — запуск FreeGuard CLI як системної служби
  • Pricing — плани, зручні для розробників

Last updated: March 2026