Связка V2Ray (VMess и другие протоколы) + SSH-туннель: рабочий способ вынести локальный SOCKS/HTTP-прокси за шифрованный SSH-канал или собрать доступ к удалённому прокси через port forwarding. Ниже схема, минимальный конфиг, local forward и наброски для Ubuntu, Windows и Android.
Материал технический: для админов и разработчиков, у которых уже есть свой сервер и понимание, зачем им прокси. Не разворачивайте чужие «готовые конфиги» без аудита. UUID, ключи и порты должны быть вашими.
V2Ray: кратко
V2Ray: платформа прокси с несколькими протоколами и гибкой маршрутизацией. Типичные куски:
- Core: ядро, inbounds/outbounds, routing.
- Протоколы: VMess, VLESS, Shadowsocks, SOCKS, HTTP и др. (набор зависит от сборки; часто смотрят и Xray-core как совместимую ветку).
- Routing: правила по домену, IP, процессу; split-tunneling без «весь трафик в одну трубу».
Минимальный пример config (идея)
Локальный SOCKS inbound + outbound VMess на удалённый узел. UUID и адрес: свои:
{
"inbounds": [{
"port": 1080,
"protocol": "socks",
"settings": {
"udp": true
}
}],
"outbounds": [{
"protocol": "vmess",
"settings": {
"vnext": [{
"address": "example.com",
"port": 443,
"users": [{
"id": "your-uuid-here",
"alterId": 0
}]
}]
}
}]
}
UUID:
uuidgen
В современных схемах alterId обычно 0 (AEAD). Реальный прод-конфиг чаще включает TLS, WebSocket/gRPC, path и нормальный routing. Это уже отдельная тема под вашу сеть.
SSH: зачем в этой схеме
SSH даёт зашифрованный канал и port forwarding. Типичный сценарий: на сервере слушает V2Ray (SOCKS на 1080, только localhost), а с клиента вы пробрасываете порт к себе:
ssh -L 8080:localhost:1080 user@server_ip
После этого на клиенте 127.0.0.1:8080 это SOCKS/сервис на сервере. Браузер или приложение смотрит в локальный 8080, наружу идёт SSH.
- Шифрование: трафик SSH-сессии закрыт.
- Local/Remote/Dynamic forward:
-L,-R,-D(динамический SOCKS только на SSH, без V2Ray). - Ключи: вход по ключу вместо пароля, по возможности disable password auth.
Ubuntu: сервер
Пакеты (имена зависят от репозитория; часто ставят бинарь с GitHub-релизов V2Ray/Xray):
sudo apt update sudo apt install -y openssh-server # v2ray: из официального install-скрипта или пакета вашей сборки # пример при наличии пакета: # sudo apt install -y v2ray
Конфиг: в путь вашей установки (часто /etc/v2ray/config.json или unit Xray), затем:
sudo systemctl enable --now v2ray # или: sudo systemctl enable --now xray sudo systemctl status v2ray
Для SSH-forward на сервере в /etc/ssh/sshd_config обычно достаточно:
AllowTcpForwarding yes # GatewayPorts yes: только если осознанно открываете bind на внешние интерфейсы
sudo systemctl reload sshd
Если V2Ray слушает только 127.0.0.1:1080, снаружи порт 1080 можно не открывать: доступ через SSH -L.
Windows: клиент
- GUI-клиент, например v2rayN: профиль с адресом, портом, UUID, протоколом.
- SSH local forward: OpenSSH в Windows (
ssh -L ...) или PuTTY (Connection → SSH → Tunnels). - Если прокси доступен только через туннель: сначала SSH, потом приложение на
127.0.0.1:локальный_порт.
Android: клиент
- Клиент вроде V2rayNG: импорт ссылки/QR или ручной профиль (UUID, host, port, protocol).
- SSH-туннель: JuiceSSH, Termux+OpenSSH и аналоги. Local forward на loopback, затем системный или прокси-клиент на этот порт.
На мобильных сетях battery optimization может рвать долгие SSH-сессии: keep-alive (ServerAliveInterval) или отдельный VPN/прокси-клиент без вечного SSH, если схема позволяет.
Практика и безопасность
- Порты: firewall. Снаружи SSH (лучше не 22 или с allowlist), V2Ray/TLS-порт по вашей схеме; SOCKS на localhost.
- Ключи SSH:
ssh-keygen -t ed25519 -a 64 # rsa допустим, ed25519 предпочтительнее на современных системах ssh-copy-id user@server_ip
- Мониторинг: кто слушает и куда ходит:
ss -tlnp | grep -E '1080|8080|22' journalctl -u v2ray -f
- Не светите panel/UUID в публичных репозиториях; ротируйте ключи при утечке.
- Только свой сервер: чужие «бесплатные ноды» = чужой MITM к вашему трафику.
Когда что выбирать
- Только SSH
-D: быстрый динамический SOCKS без V2Ray, для админки и лёгкого трафика. - V2Ray/Xray напрямую: когда нужны VMess/VLESS+TLS, routing, обход простых DPI-сценариев на уровне протокола.
- V2Ray + SSH -L: когда inbound на сервере закрыт localhost, а наружу открыт только SSH.
Кратко
V2Ray даёт протоколы и routing, SSH: проверенный зашифрованный канал и port forward. Рабочая схема: прокси слушает localhost на VPS, клиент поднимает ssh -L (или нативный клиент V2Ray), приложения ходят в 127.0.0.1. Держите ключи, firewall и свои UUID; не копируйте чужие production-конфиги вслепую.
