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

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

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

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

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

Категории

Все категории
Loading categories
sidedoor — Демон SSH-соединений для Debian/Raspbian/Ubuntu и т.д. | Kitploit
Инструменты/GitHubGitHub/daradib/sidedoor
Сетевая безопасностьУтилиты и фреймворкиИнструмент Удаленного Доступа
GitHubdaradib/sidedoor

sidedoor

Демон SSH-соединений для Debian/Raspbian/Ubuntu и т.д.

РепозиторийСайт
129196 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

sidedoor

sidedoor поддерживает SSH-соединение или туннель с помощью демона-скрипта оболочки.

sidedoor tunneling

Основной вариант использования — поддержание удаленного перенаправления портов на локальный SSH-сервер (или другой порт). Таким образом, локальное устройство может быть доступно без использования входящих соединений, которые могут быть заблокированы NAT или брандмауэром, или иным образом непрактичны для мобильных устройств.

SSH-клиенты могут подключаться к устройству через обратный SSH-прокси, к которому sidedoor прокладывает туннель. Этот прокси-сервер может быть недоверенным и управляться третьей стороной или облачным сервисом.

sidedoor включает SSH keepalives и повторяет попытки SSH с экспоненциальной задержкой. Чтобы переподключиться как можно скорее, он сбрасывает задержку, когда поднимается (или изменяется) сетевой интерфейс.

Другие варианты использования:

  • Доступ к веб-приложению за NAT путем удаленного перенаправления локального веб-сервера (например, порт 80). Удаленный сервер может размещать обратный прокси для веб-приложения и обрабатывать завершение SSL/TLS.
  • Оставайтесь на связи с офисными сетевыми службами за SSH-бастионом, перенаправляя их локально.
  • Расплавьте ленточные резервные копии Evil Corp, удаленно управляя Raspberry Pi (не рекомендуется!).

Вы используете sidedoor? Сообщения об ошибках, запросы функций — пожалуйста, открывайте issue! Приветствуются pull request'ы.

Установка

sidedoor упакован для Debian и систем на основе Debian, таких как Raspbian, Ubuntu и VyOS/EdgeOS, но должен работать в любой POSIX-среде с SSH-клиентом (OpenSSH).

Если sidedoor находится в репозиториях вашего дистрибутива (Debian 9+, Ubuntu 17.04+), просто установите его с помощью менеджера пакетов.

root@kitploit:~
sudo apt install sidedoor

В противном случае вы можете вручную скачать deb-пакеты со страницы релизов.

Чтобы предоставить пользователю sidedoor полный доступ root, установите пакет sidedoor-sudo.

Конфигурация

Удаленный сервер и перенаправления портов настраиваются в /etc/default/sidedoor. Файлы конфигурации SSH находятся в каталоге /etc/sidedoor.

  1. Настройте REMOTE_SERVER и OPTIONS в /etc/default/sidedoor. Некоторые аргументы для передачи в OPTIONS см. в записи блога Local and Remote Port Forwarding Explained With Examples и на странице руководства ssh.

  2. Отредактируйте файлы конфигурации SSH в /etc/sidedoor.

    • id_rsa: Приватный ключ SSH для доступа к удаленному серверу. Можно использовать ssh-keygen для создания этого ключа (нажмите y при запросе на перезапись существующего файла):

      root@kitploit:~
      sudo ssh-keygen -t rsa -N '' -f /etc/sidedoor/id_rsa
      

      Соответствующий открытый ключ id_rsa.pub необходимо включить в файл ~/.ssh/authorized_keys удаленного пользователя.

Рекомендации

  • Ограничьте локальный SSH-сервер, отредактировав /etc/ssh/sshd_config.
    • Отключите аутентификацию по паролю (ChallengeResponseAuthentication no и PasswordAuthentication no).
    • Ограничьте демон прослушиванием только localhost (ListenAddress ::1 и ListenAddress 127.0.0.1).
    • Для применения изменений перезапустите или перезагрузите sshd, например, sudo service ssh reload.
  • Измените файл ssh_client_config_example и включите его в ~/.ssh/config клиента, чтобы легко получать доступ к туннелированному SSH-серверу с помощью ssh, scp, rsync и т.д.

Альтернативы

sidedoor задуман как легковесное решение для туннелирования портов с минимальными зависимостями, но существуют некоторые альтернативы с большим количеством функций.

Скрытый сервис Tor

Tor предоставляет анонимность серверам, работающим как скрытые сервисы, но также обрабатывает обход NAT.

Преимущества:

  • Метаданные, включая IP-адрес локального устройства и состояние его подключения (вкл/выкл), меньше раскрываются посреднику, такому как обратный SSH-прокси.

Недостатки:

  • Tor должен быть установлен и запущен как на локальном устройстве, так и на клиентах.
  • Tor имеет более высокую задержку, поэтому обратная связь терминала (эхо ввода) медленная.

На устройстве и клиентах установите Tor.

root@kitploit:~
sudo apt install tor

На устройстве, которое раскрывается, отредактируйте /etc/tor/torrc для создания скрытого сервиса на порту 22.

root@kitploit:~
HiddenServiceDir /var/lib/tor/sshd/
HiddenServicePort 22 127.0.0.1:22
HiddenServiceAuthorizeClient stealth client

Замените "client" разделенным запятыми списком имен клиентов для генерации нескольких секретов авторизации.

Затем перезагрузите Tor и получите onion-имя хоста и данные авторизации.

root@kitploit:~
sudo service tor reload
sudo cat /var/lib/tor/sshd/hostname

На клиентах отредактируйте /etc/tor/torrc чтобы добавить onion-имя хоста и данные авторизации, указанные в файле hostname.

root@kitploit:~
HidServAuth <hostname>.onion <secret>

Затем перезагрузите Tor и выполните torsocks ssh <hostname>.onion или установите ProxyCommand в файле ~/.ssh/config.

root@kitploit:~
ProxyCommand torsocks nc <hostname>.onion 22

autossh

autossh, как и sidedoor, запускает ssh и перезапускает его по мере необходимости.

Некоторые различия включают:

  • sidedoor — это минималистичный демон-скрипт оболочки. autossh — это более обширная и настраиваемая программа на C.

  • sidedoor включает SSH keepalives (ServerAliveInterval и ServerAliveCountMax), которые доступны в современных версиях OpenSSH. autossh мониторит ssh, отправляя данные через цикл перенаправления портов (эта функция предшествует SSH keepalives), хотя это можно отключить опцией -M 0.

  • sidedoor предназначен для автоматического запуска в качестве службы, поэтому пакет включает init/systemd-скрипты и файлы конфигурации. autossh не включает init/systemd-скрипт (баг Debian #698390).

  • sidedoor отключает удаленные команды и выделение псевдо-tty. Для интерактивного использования рассмотрите autossh с SSH keepalives или Mosh.

  • sidedoor всегда повторяет попытку, если ssh завершается с ненулевым статусом выхода. autossh не повторяет попытку, если ssh завершается слишком быстро при первой попытке, что может произойти при нарушении сетевого подключения или разрешения DNS, особенно на мобильных устройствах. И sidedoor, и autossh имеют логику задержки повтора.

  • sidedoor сбрасывает задержку повтора при поднятии сетевого интерфейса, чтобы попытаться переподключиться как можно скорее, путем получения SIGUSR1 от скрипта if-up.d. autossh не имеет привязок к состоянию сети.

Другие альтернативы

  • OpenVPN
  • PageKite
  • ssh_tunnel

Лицензия

Copyright 2015-2017 Dara Adib.

Эта программа является свободным программным обеспечением: вы можете распространять ее и/или изменять ее в соответствии с условиями GNU General Public License, опубликованной Free Software Foundation, либо версии 3 Лицензии, либо (по вашему выбору) любой более поздней версии.

Эта программа распространяется в надежде, что она будет полезной, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; без даже подразумеваемой гарантии ТОВАРНОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. GNU General Public License для получения более подробной информации.

Вы должны были получить копию GNU General Public License вместе с этой программой. Если нет, см. https://www.gnu.org/licenses/.

Скачать инструмент
  • known_hosts: SSH-ключ хоста удаленного сервера.

  • Необязательно, предоставьте удаленный доступ локальному пользователю sidedoor, добавив открытый(ые) ключ(и) SSH в файл /etc/sidedoor/authorized_keys. /etc/sidedoor/authorized_keys является символической ссылкой на ~sidedoor/.ssh/authorized_keys. Пакет sidedoor-sudo, если он установлен, предоставляет полный доступ root этому пользователю.

  • Перезапустите службу sidedoor для применения изменений.

    root@kitploit:~
    sudo service sidedoor restart