---
name: "sidedoor"
section: "1"
platform: "linux"
package: "sidedoor"
version: "0.2.1-1.3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/sidedoor"
---

# sidedoor(1)

SSH connection daemon

## NAME

sidedoor - SSH connection daemon

## SYNOPSIS

**sidedoor** \[*SSH options*\] \[*user***@**\]*hostname*

## DESCRIPTION

sidedoor maintains an SSH connection or tunnel with a shell script daemon.

The primary use case is maintaining a remote port forward to the local SSH server (or another port). Thus, the local device can be accessed without using incoming connections that may be blocked by a NAT or firewall or otherwise impractical with mobile devices.

SSH clients can connect to the device via the reverse SSH proxy that sidedoor tunnels to. This proxy server can be untrusted and run by a third party or cloud service.

sidedoor enables SSH keepalives and retries SSH with exponential backoff. In order to reconnect as soon as possible, it resets the backoff when a network interface is brought up (or changed).

## OPTIONS

See [**ssh**(1)](/ssh/1.md).

## SIGNALS

**SIGUSR1** resets the retry backoff, immediately retrying [**ssh**(1)](/ssh/1.md) if it is not currently running.

## FILES

- */etc/default/sidedoor*

  Arguments to pass to **sidedoor** when run as a service. See [**ssh**(1)](/ssh/1.md).

- */etc/sidedoor/config*

  SSH client configuration file.

- */etc/sidedoor/id\_rsa*

  SSH private key to access the remote server.

  [**ssh-keygen**(1)](/ssh-keygen/1.md) can generate this key (press y when prompted to overwrite the existing file):

      $ sudo ssh-keygen -t rsa -N '' -f /etc/sidedoor/id\_rsa

  The corresponding public key *id\_rsa.pub* will need to be included in the remote user's *~/.ssh/authorized\_keys* file.

- */etc/sidedoor/known\_hosts*

  SSH host key of the remote server.

- */etc/sidedoor/authorized\_keys*

  Optionally, SSH public key(s) with remote access to the local sidedoor user.

  This is a symlink to *~sidedoor/.ssh/authorized\_keys*. The sidedoor-sudo package provides full root access to this user.

- */etc/network/if-up.d/sidedoor*

  Sends **SIGUSR1** to reset the retry backoff on network state changes.

## SEE ALSO

[**ssh**(1)](/ssh/1.md), */usr/share/doc/sidedoor/README.md.gz*
