sshportal logo

sshportal

Transparent SSH and Telnet bastion for managing users, hosts, ACLs, and logged sessions

Repository activity
  • Stars1.9k
  • Forks141
  • Open Issues81
License

Apache-2.0

Languages
  • Go
  • Mustache
  • Makefile
sshportal screenshot

About sshportal

sshportal is a transparent SSH bastion server for giving users access to hosts without requiring SSH client changes or custom ssh config. It separates users from hosts, supports temporary user invitations, and can connect to remote servers with keys or passwords.

It includes host, user, key, ACL, role, and group management, plus an interactive admin shell. SSH compatibility covers scp, rsync, sftp, local, remote, and dynamic forwarding, ssh-agent, X11 forwarding, IPv4, IPv6, and Git use cases. Sessions can be inspected through active connections, history, stats, stop controls, audit logs, TTY recording, and tunnel logging.

sshportal runs as a single autonomous binary with no runtime dependencies, and Docker is the recommended deployment path. It stores configuration and logs in SQLite3 by default or MySQL, and can run multiple stateless instances against the same MySQL database.

Key features

  • Transparent SSH bastion with no SSH client modifications
  • User invites, multiple user keys, roles, groups, and ACLs
  • Connects to remote hosts using SSH keys or passwords
  • Session history, active connection controls, audit log, and TTY recording
  • scp, rsync, sftp, tunnels, ssh-agent, X11 forwarding, and Telnet support

Details

First released
2017
Self-hosting
Single binary · Docker recommended
Platforms
Linux · macOS · Docker
Database
SQLite3 · MySQL
Scaling
Stateless with shared MySQL
Audit
Audit log · TTY records · tunnel logs