Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
sshroute — Сетевой SSH-роутер — направляет соединения на разные IP-адреса/порты/ключи/шлюзы в зависимости от активной VPN-сети или сетевого подключения. | Kitploit
Инструменты/GitHubGitHub/thereisnotime/sshroute
Утилиты общего назначенияСкриптинг и автоматизацияСетевая безопасностьУтилиты и фреймворки
GitHubthereisnotime/sshroute

sshroute

Сетевой SSH-роутер — направляет соединения на разные IP-адреса/порты/ключи/шлюзы в зависимости от активной VPN-сети или сетевого подключения.

Репозиторий
202328 дней назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

sshroute

CI Code OpenSpec Security
CI
Release
OpenSpec Badge
Scorecard
Latest Release
codecov
Go Report Card
Go Reference
Specs
Requirements
Tasks
Open Changes
OpenSSF Scorecard
CII Best Practices
License: Apache 2.0

Сетевой SSH-маршрутизатор. Определяет вашу активную сеть или VPN и автоматически выбирает правильный хост, порт, файл ключа и шлюз для каждого SSH-подключения — без изменений в ~/.ssh/config.

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

Определите каждый логический хост один раз с профилем default и опциональными переопределениями для каждой сети. При каждом подключении sshroute определяет, в какой сети вы находитесь (VPN, офисная LAN, WireGuard-пир и т. д.), и разрешает правильные SSH-параметры перед передачей управления настоящему /usr/bin/ssh.

ssh myserver
  → sshroute определяет: corp-vpn активен
  → разрешает: 10.100.0.50:2222 через bastion.corp.internal
  → exec /usr/bin/ssh -p 2222 -i ~/.ssh/corp_key -J bastion.corp.internal 10.100.0.50

Зачем нужен sshroute?

Для домашних лабораторий

В вашей лаборатории, скорее всего, есть как минимум две реальности: вы либо дома в локальной сети, либо в отъезде и подключаетесь через WireGuard или другой VPN. Проблема в том, что ~/.ssh/config не знает, в какой из них вы находитесь — в итоге вам приходится создавать отдельные алиасы (server-lan, server-vpn), или шлюз, который работает только половину времени, или просто запоминать IP-адреса.

sshroute решает эту проблему, определяя текущую сеть перед каждым подключением. Когда интерфейс WireGuard активен и существует маршрут к пиру, он подключается напрямую к туннельному IP. Когда вы в локальной сети — использует локальный адрес. Если ни один из адресов не доступен, он переключается на публичное имя хоста. Один алиас, три реальности, ноль ручного переключения.

Кроме того, он прозрачно перехватывает SSH — git push, rsync, scp будут работать через него автоматически после настройки теневого режима. Никаких обёрток, шелл-функций или размышлений.

Для корпоративных сред

Корпоративные сети ещё сложнее. У вас есть публичный интернет, возможно, VPN «сайт-сайт», возможно, личный VPN с разделением трафика, а внутри — разные шлюзы в зависимости от целевой среды — dev, staging, prod, у каждой свой бастион и ключ. Поддерживать всё это в ~/.ssh/config означает либо один огромный конфиг, который ломается при любом изменении инфраструктуры, либо писать скрипт, который каждый член команды поддерживает по-своему.

sshroute позволяет определить логику маршрутизации декларативно, хранить её в версионируемом YAML-файле и распространять среди команды. Одна и та же конфигурация работает для всех — правильная сеть определяется автоматически на основе активных интерфейсов или маршрутов на каждой машине. Ключи, порты, пользователи и шлюзы разрешаются без необходимости думать об этом.

Сравнение

Функция~/.ssh/configТолько WireGuardTeleport / Boundarysshroute
Определяет вашу текущую сеть❌❌❌✅
Автоматически выбирает лучший путь❌❌❌✅
Переключение при сбое подключения❌❌✅✅
Автопереподключение + смена маршрута при обрыве❌⚠️ туннель кочует⚠️ через фиксированный прокси✅
Одна команда на хост из любого места❌⚠️ VPN должен быть включён✅✅
Размер конфига для 10 хостов × 4 пути📄 ~600 строк📄 ~600 строк + конфиг VPN📄 конфиг на сервере📄 ~60 строк
Мобильные устройства в роуминге⚠️ ручные алиасы⚠️ требуется VPN✅✅
Автоматическая цепочка шлюзов⚠️ ручной -J➖ не применимо✅✅
Работает с scp / rsync / git / Ansible✅✅⚠️ частично✅
Не требует установки серверной части✅❌❌✅
Не требует сервера аутентификации или демона✅❌❌✅
Не требует клиентского агента✅❌❌✅
Open source, полностью самостоятельный✅✅⚠️ open-core✅

Teleport и Boundary — это другая категория: они добавляют контроль доступа, журналы аудита и аутентификацию на основе сертификатов поверх маршрутизации. Если вам нужно именно это — используйте их. sshroute предназначен для тех случаев, когда нужна интеллектуальная маршрутизация без операционных издержек центрального сервера аутентификации.

Установка

Загрузка бинарного файла

Загрузите последний релиз с GitHub Releases. Доступны бинарные файлы для Linux, macOS и Android на архитектурах AMD64 и ARM64.

Установка через Go

go install github.com/thereisnotime/sshroute@latest

Android (Termux)

Загрузите архив android_arm64 с GitHub Releases, распакуйте и поместите бинарный файл в ~/.local/bin:

mkdir -p ~/.local/bin
curl -Lo "$TMPDIR/sshroute.tar.gz" \
  https://github.com/thereisnotime/sshroute/releases/latest/download/sshroute_android_arm64.tar.gz
tar -xzf "$TMPDIR/sshroute.tar.gz" -C ~/.local/bin sshroute
chmod +x ~/.local/bin/sshroute
Скачать инструмент