Sish provides a straightforward way to create secure tunnels from the internet to your local machine, serving as an open-source alternative to services like ngrok and serveo. Its primary advantage is its simplicity: it works exclusively over SSH. This means you don't need to download or install any special client-side software. You can expose a local web server, a development API, or any TCP service using a standard SSH command.
This approach offers a secure and lightweight method for sharing local projects, testing webhooks, or providing remote access to a service behind a firewall. Since it's self-hostable, you gain full control over your tunneling endpoint.
Key capabilities include:
services:
sish:
image: antoniomika/sish:latest
container_name: sish
restart: unless-stopped
ports:
- "2222:2222"
- "80:80"
- "443:443"
command:
- -sish.domain=${SISH_DOMAIN}
- -sish.password=${SISH_PASSWORD}
- -sish.keys-directory=/pubkeys
- -sish.pk-directory=/keys
- -sish.https-certificate-directory=/ssl
- -sish.http=true
- -sish.https=true
- -sish.log-to-client=true
- -sish.bind-random-ports=false
volumes:
- ./data/keys:/keys
- ./data/pubkeys:/pubkeys
- ./data/ssl:/ssl# The domain name where sish will be accessible (e.g. example.com)
SISH_DOMAIN=example.com
# Optional password for client authentication
SISH_PASSWORD=your_secure_passwordAuto-fetched about 20 hours ago
Auto-fetched about 20 hours ago