🖥 Прокси-туннель

Локальный сервер в интернете за 30 секунд

Опубликуйте что угодно с вашего компьютера или Raspberry Pi — без белого IP, без проброса портов, без настройки роутера. Один бинарник, и вы онлайн.

Начать бесплатно Быстрый старт Проверить туннель →
⚠ Правила использования туннеля
пользователь
Browser
slug.dix.su
dix.su
Прокси
HTTPS / WSS
⟵ WSS ⟶
ваше устройство
device_client
Один бинарник
ваш сервер
localhost
:8080
Клиент устанавливает WebSocket-соединение с сервером и проксирует запросы к вашему локальному порту
SERVER_HOST=dix.su SERVER_PORT=443 \
  ./device_client_linux_x86_64 мой-слаг мой-токен 8080
Всё включено из коробки
Никаких облачных зависимостей, никаких сложных настроек
🔒

HTTPS без настройки

Wildcard-сертификат Let's Encrypt на *.dix.su. Каждый туннель работает по HTTPS автоматически.

🌐

Без белого IP

Работает за любым NAT, корпоративным файрволом или мобильным интернетом. Нужен только исходящий TCP.

📦

Один бинарник

device_client — самодостаточный файл со встроенным Erlang runtime. Никаких зависимостей, никаких установщиков.

🏷

Постоянный поддомен

Ваш туннель всегда на одном адресе: ваш-слаг.dix.su. Делитесь ссылкой один раз — она не меняется.

🖥

Все платформы

Linux x86_64, ARM64, macOS Apple Silicon и Intel. Raspberry Pi, VPS, ноутбук — всё поддерживается.

🔄

Автозапуск

Готовые конфиги для systemd и Docker Compose — туннель поднимается автоматически при старте системы.

От регистрации до живого туннеля
  1. Зарегистрируйтесь — получите слаг и токен

    Войдите в личный кабинет. Выберите слаг — он станет вашим поддоменом: ваш-слаг.dix.su.

  2. Скачайте device_client

    Выберите бинарник под вашу платформу и дайте права на запуск.

    chmod +x device_client_linux_x86_64
  3. Запустите туннель

    Укажите ваш слаг, токен и порт локального сервера.

    SERVER_HOST=dix.su SERVER_PORT=443 \
      ./device_client_linux_x86_64 мой-слаг мой-токен 8080
  4. Откройте в браузере

    Туннель готов. Делитесь адресом с кем угодно:

    https://мой-слаг.dix.su
TCP-туннели: SSH, RDP, VNC, базы данных

Помимо HTTP, dix.su умеет проксировать любой TCP-трафик — терминал, удалённый рабочий стол, прямой доступ к БД. Всё через то же WebSocket-соединение device_client.

Как это работает

При подключении к ваш-слаг.dix.su:2222 клиент сначала отправляет заголовок DIXSU:ваш-слаг, по которому сервер находит нужное устройство в реестре. Так работает SSH через ProxyCommand.

RDP, VNC и базы данных не умеют отправлять такой заголовок — поэтому они работают через SSH port forwarding: SSH-туннель до устройства уже установлен и аутентифицирован, а флаг -L пробрасывает локальный порт через него.

SSH — прямое подключение

ProxyCommand инжектирует DIXSU-заголовок перед handshake.

ssh -p 2222 \
  -o "ProxyCommand=bash -c '{ echo DIXSU:ваш-слаг; cat; } | nc ваш-слаг.dix.su 2222'" \
  user@ваш-слаг.dix.su
RDP — удалённый рабочий стол Windows/Linux

Шаг 1: SSH-туннель с пробросом порта. Шаг 2: RDP-клиент на localhost.

# 1. Открыть туннель (держать терминал открытым)
ssh -p 2222 \
  -o "ProxyCommand=bash -c '{ echo DIXSU:ваш-слаг; cat; } | nc ваш-слаг.dix.su 2222'" \
  -L 13389:localhost:3389 -N user@ваш-слаг.dix.su

# 2. Подключиться (в другом терминале)
xfreerdp /v:localhost:13389 /u:USER
# или: Remmina → localhost:13389
VNC — удалённый рабочий стол

Аналогично RDP, только порт 5900.

# 1. Туннель
ssh -p 2222 \
  -o "ProxyCommand=bash -c '{ echo DIXSU:ваш-слаг; cat; } | nc ваш-слаг.dix.su 2222'" \
  -L 15900:localhost:5900 -N user@ваш-слаг.dix.su

# 2. VNC-клиент
vncviewer localhost:15900
SFTP — передача файлов (Krusader, FileZilla, командная строка)

SFTP — SSH-субсистема, отдельный порт не нужен. Работает через тот же SSH-туннель на порту 2222 автоматически.

# Командная строка
sftp -P 2222 \
  -o "ProxyCommand=bash -c '{ echo DIXSU:ваш-слаг; cat; } | nc ваш-слаг.dix.su 2222'" \
  user@ваш-слаг.dix.su

Krusader / Dolphin / FileZilla — добавьте один раз в ~/.ssh/config:

Host *.dix.su
  Port 2222
  ProxyCommand bash -c 'S=$(echo %h | cut -d. -f1); { echo "DIXSU:$S"; cat; } | nc %h %p'

После этого в Krusader: sftp://user@ваш-слаг.dix.su/ — ProxyCommand применится автоматически.

Базы данных (PostgreSQL, MySQL, Redis)

Та же схема — SSH-туннель + локальный порт.

# PostgreSQL
ssh ... -L 15432:localhost:5432 -N user@ваш-слаг.dix.su
psql -h localhost -p 15432

# MySQL
ssh ... -L 13306:localhost:3306 -N user@ваш-слаг.dix.su
mysql -h 127.0.0.1 -P 13306

# MongoDB
ssh ... -L 17017:localhost:27017 -N user@ваш-слаг.dix.su
mongosh mongodb://127.0.0.1:17017

# Redis
ssh ... -L 16379:localhost:6379 -N user@ваш-слаг.dix.su
redis-cli -h 127.0.0.1 -p 16379
DBeaver CE — подключение к базам данных

Два способа, оба рабочие:

Способ 1 — ручной port forward (работает без доп. настроек)

# Терминал — держать открытым
ssh -p 2222 \
  -o "ProxyCommand=bash -c '{ echo DIXSU:ваш-слаг; cat; } | nc ваш-слаг.dix.su 2222'" \
  -L 15432:localhost:5432 -N user@ваш-слаг.dix.su

Затем в DBeaver: New Connection → PostgreSQL → Host: localhost, Port: 15432. Вкладку SSH не трогать — туннель уже поднят.

Способ 2 — через встроенный SSH в DBeaver (нужен ~/.ssh/config)

Добавьте в ~/.ssh/config на машине с DBeaver:

Host *.dix.su
  Port 2222
  ProxyCommand bash -c 'S=$(echo %h | cut -d. -f1); { echo "DIXSU:$S"; cat; } | nc %h %p'

Затем DBeaver: New Connection → PostgreSQL → вкладка SSH → Use SSH tunnel ✓, SSH Host: ваш-слаг.dix.su, Port: 2222, SSH User: ваш_юзер. Выберите Native client (не JSch) — тогда DBeaver использует системный ssh, который читает config.

Активировать нужные порты можно в личном кабинете → Туннель. Доступность портов зависит от вашего плана.

Правила добросовестного использования TCP-туннелей

На портах SSH/RDP/VNC/БД работает автоматическая защита от перебора аккаунтов и флуда подключений — она общая для всех клиентов платформы. При обычной работе (несколько сессий, пул соединений из DBeaver/Navicat и подобных клиентов) вы её не заметите. Если вы пишете скрипты, мониторинг или CI — несколько правил, чтобы не попасть под временную блокировку:

  • Подключайтесь только к своему slug'у. Перебор разных (в том числе случайных или чужих) имён с одного IP распознаётся как попытка подбора аккаунтов и приводит к продолжительной блокировке IP.
  • Не держите одновременно неограниченное число подключений с одного IP ко всем туннелям dix.su сразу — десятки соединений (например, пул БД-клиента) это нормально, но неограниченный/массовый флуд соединений похож на атаку и блокируется.
  • Если подключение не удалось — не зацикливайте мгновенный retry без задержки. Добавьте паузу хотя бы в секунду-две между попытками; быстрый бесконечный цикл переподключений выглядит как автоматизированный скан.
  • Ответ no tunnel connected, хотя вы точно знаете, что туннель поднят — обычно означает, что вы превысили частоту попыток подключения. Подождите минуту и повторите — это не баг.

Блокировки временные и автоматически снимаются. Если считаете, что вас заблокировали по ошибке — напишите на admin@dix.su, укажите свой slug и примерное время.

Другие инструменты