Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
sidedoor — Daemon de connexion SSH pour Debian/Raspbian/Ubuntu/etc | Kitploit
Outils/GitHubGitHub/daradib/sidedoor
Sécurité RéseauUtilitaires et FrameworksOutil d'Accès à Distance
GitHubdaradib/sidedoor

sidedoor

Daemon de connexion SSH pour Debian/Raspbian/Ubuntu/etc

Voir le dépôtSite web
12919il y a 6 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

sidedoor

sidedoor maintient une connexion SSH ou un tunnel avec un démon de script shell.

sidedoor tunneling

Le cas d'utilisation principal est le maintien d'un transfert de port distant vers le serveur SSH local (ou un autre port). Ainsi, l'appareil local peut être accessible sans utiliser de connexions entrantes qui pourraient être bloquées par un NAT ou un pare-feu, ou autrement peu pratiques avec des appareils mobiles.

Les clients SSH peuvent se connecter à l'appareil via le proxy SSH inverse vers lequel sidedoor tunnelise. Ce serveur proxy peut être non fiable et géré par un tiers ou un service cloud.

sidedoor active les keepalives SSH et réessaie SSH avec un backoff exponentiel. Afin de se reconnecter dès que possible, il réinitialise le backoff lorsqu'une interface réseau est activée (ou modifiée).

Autres cas d'utilisation :

  • Accéder à une application web derrière un NAT en transférant à distance le serveur web local (par exemple, le port 80). Un serveur distant peut héberger un proxy inverse vers l'application web et gérer la terminaison SSL/TLS.
  • Rester connecté aux services du réseau de bureau derrière un hôte bastion SSH en les transférant localement.
  • Faire fondre les sauvegardes sur bande d'Evil Corp en contrôlant à distance un Raspberry Pi (déconseillé !).

Utilisez-vous sidedoor ? Rapports de bugs, demandes de fonctionnalités - veuillez ouvrir une issue ! Les pull requests sont les bienvenues.

Installation

sidedoor est empaqueté pour Debian et les systèmes basés sur Debian comme Raspbian, Ubuntu et VyOS/EdgeOS, mais devrait fonctionner dans tout environnement POSIX avec un client SSH (OpenSSH).

Si sidedoor se trouve dans vos dépôts de distribution (Debian 9+, Ubuntu 17.04+), installez-le simplement avec votre gestionnaire de paquets.

root@kitploit:~
sudo apt install sidedoor

Sinon, vous pouvez télécharger manuellement les debs depuis la page des Releases.

Pour accorder à l'utilisateur sidedoor un accès root complet, installez le paquet sidedoor-sudo.

Configuration

Le serveur distant et les transferts de ports sont configurés dans /etc/default/sidedoor. Les fichiers de configuration SSH se trouvent dans le répertoire /etc/sidedoor.

  1. Configurez REMOTE_SERVER et OPTIONS dans /etc/default/sidedoor. Pour certains arguments à passer dans OPTIONS, consultez l'article de blog Local and Remote Port Forwarding Explained With Examples et la page de manuel ssh.

  2. Modifiez les fichiers de configuration SSH dans /etc/sidedoor.

    • id_rsa : Clé privée SSH pour accéder au serveur distant. Vous pouvez utiliser ssh-keygen pour créer cette clé (appuyez sur y lorsqu'il vous est demandé d'écraser le fichier existant) :

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

      La clé publique correspondante id_rsa.pub devra être incluse dans le fichier ~/.ssh/authorized_keys de l'utilisateur distant.

Recommandations

  • Verrouillez le serveur SSH local en modifiant /etc/ssh/sshd_config.
    • Désactivez l'authentification par mot de passe (ChallengeResponseAuthentication no et PasswordAuthentication no).
    • Limitez le démon à n'écouter que sur localhost (ListenAddress ::1 et ListenAddress 127.0.0.1).
    • Pour appliquer les modifications, redémarrez ou rechargez sshd, par exemple sudo service ssh reload.
  • Modifiez le fichier ssh_client_config_example et incluez-le dans le fichier ~/.ssh/config d'un client pour accéder facilement au serveur SSH tunnelisé avec ssh, scp, rsync, etc.

Alternatives

sidedoor est conçu comme une solution légère pour tunneliser des ports avec un minimum de dépendances, mais il existe quelques alternatives avec plus de fonctionnalités.

Service caché Tor

Tor fournit l'anonymat aux serveurs fonctionnant en tant que services cachés, mais gère également la traversée NAT.

Avantages :

  • Les métadonnées, y compris l'adresse IP de l'appareil local et son état de connexion (allumé/éteint), sont moins exposées à un intermédiaire comme le proxy SSH inverse.

Inconvénients :

  • Tor doit être installé et exécuté à la fois sur l'appareil local et sur les clients.
  • Tor a une latence plus élevée, donc le retour du terminal (écho des entrées) est lent.

Sur l'appareil et les clients, installez Tor.

root@kitploit:~
sudo apt install tor

Sur l'appareil qui est exposé, modifiez /etc/tor/torrc pour créer un service caché sur le port 22.

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

Remplacez "client" par une liste de noms de clients séparés par des virgules pour générer plusieurs secrets d'autorisation.

Rechargez ensuite Tor et obtenez le nom d'hôte onion et les données d'autorisation.

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

Sur les clients, modifiez /etc/tor/torrc pour ajouter le nom d'hôte onion et les données d'autorisation vues dans le fichier hostname.

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

Rechargez ensuite Tor et exécutez torsocks ssh <hostname>.onion ou définissez ProxyCommand dans le fichier ~/.ssh/config.

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

autossh

autossh, comme sidedoor, lance ssh et le redémarre si nécessaire.

Quelques différences incluent :

  • sidedoor est un démon de script shell minimaliste. autossh est un programme C plus complet et configurable.

  • sidedoor active les keepalives SSH (ServerAliveInterval et ServerAliveCountMax), qui sont disponibles dans les versions modernes d'OpenSSH. autossh surveille ssh en envoyant des données via une boucle de transferts de ports (cette fonctionnalité est antérieure aux keepalives SSH), bien que cela puisse être désactivé avec l'option -M 0.

  • sidedoor est destiné à s'exécuter automatiquement en tant que service, donc le paquet inclut des scripts init/systemd et des fichiers de configuration. autossh n'inclut pas de script init/systemd (bogue Debian #698390).

  • sidedoor désactive les commandes distantes et l'allocation de pseudo-tty. Pour une utilisation interactive, envisagez autossh avec les keepalives SSH ou Mosh.

  • sidedoor réessaie toujours si ssh se termine avec un statut de sortie non nul. autossh ne réessaie pas si ssh se termine trop rapidement lors de la première tentative, ce qui peut se produire lorsque la connectivité réseau ou la résolution DNS est défaillante, en particulier sur les appareils mobiles. sidedoor et autossh ont tous deux une logique de backoff de réessai.

  • sidedoor réinitialise le backoff de réessai lorsqu'une interface réseau est activée, pour tenter de se reconnecter dès que possible, en recevant SIGUSR1 d'un script if-up.d. autossh n'a pas de hooks d'état réseau.

Autres alternatives

  • OpenVPN
  • PageKite
  • ssh_tunnel

Licence

Copyright 2015-2017 Dara Adib.

Ce programme est un logiciel libre : vous pouvez le redistribuer et/ou le modifier selon les termes de la licence publique générale GNU telle que publiée par la Free Software Foundation, soit la version 3 de la licence, soit (à votre choix) toute version ultérieure.

Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de QUALITÉ MARCHANDE ou d'ADAPTATION À UN USAGE PARTICULIER. Voir la licence publique générale GNU pour plus de détails.

Vous devriez avoir reçu une copie de la licence publique générale GNU avec ce programme. Sinon, consultez https://www.gnu.org/licenses/.

Télécharger l’outil
  • known_hosts : Clé d'hôte SSH du serveur distant.

  • Optionnellement, accordez un accès distant à l'utilisateur local sidedoor en ajoutant la ou les clés publiques SSH au fichier /etc/sidedoor/authorized_keys. /etc/sidedoor/authorized_keys est un lien symbolique vers ~sidedoor/.ssh/authorized_keys. Le paquet sidedoor-sudo, s'il est installé, fournit un accès root complet à cet utilisateur.

  • Redémarrez le service sidedoor pour appliquer les modifications.

    root@kitploit:~
    sudo service sidedoor restart