Deploy Over SSH
Without the SSH
Connect your Git repository to any SSH-accessible server — VPS, dedicated, or shared hosting — and let DeployHQ handle the upload, key management, and remote commands. No more manual sessions, no more forgotten files.
Last updated on 16th May 2026
SSH deployment uses the Secure Shell protocol to upload code and run commands on a remote server over an encrypted connection. DeployHQ automates the entire workflow — authenticating with SSH keys, transferring only what changed via SFTP, and triggering post-deploy commands — so you never have to open a terminal to ship.
How SSH Deployment Works
Add a server once. Deploy to it on every push.
Add Your Server
Enter the hostname, port, and deployment path. Works with any SSH-reachable server — VPS, dedicated, or shared hosting.
Authorise the Key
Drop DeployHQ's public key into your server's authorized_keys, or fall back to a password. Per-project keys keep blast radius tight.
Push to Git
On every push, DeployHQ diffs the commits and uploads only the changed files over SFTP. No full re-uploads, no rsync wrangling.
Run Remote Commands
Reload services, restart workers, run migrations — all over the same SSH connection, with full logs in your dashboard.
Works With Any SSH-Reachable Host
If you can SSH or SFTP into it, DeployHQ can deploy to it. Provider-agnostic by design.
VPS & Dedicated Servers
DigitalOcean, Hetzner, Linode, AWS EC2, or any box you can SSH into. Full root, full control, automated deploys.
Deploy to a VPS →Shared Hosting
cPanel, Plesk, and other shared hosts that expose SFTP. Automated deployments without a single SSH session.
Deploy to shared hosting →Why Deploy via DeployHQ Over Raw SSH?
Everything the protocol gives you, with none of the manual overhead.
Key-Based Auth, Per Project
Each project gets its own SSH key pair. Rotate, revoke, or audit access without touching every server. Passwords supported as a fallback.
Only Changed Files
DeployHQ diffs commits and uploads only what changed over SFTP. Fast deploys, low bandwidth, no surprise overwrites.
Remote Command Execution
Run any shell command on the target server before, during, or after a deploy — migrations, cache clears, service reloads — with output streamed to your dashboard.
One-Click Rollback
Every deploy is tracked. Roll back to any previous revision with a single click — no SSH-ing in under pressure to fix things.
Set up your first SSH deployment in under five minutes
Create a project
Connect your GitHub, GitLab, or Bitbucket repository to DeployHQ.
Add an SSH or SFTP server
Enter hostname, port, username, and deployment path. Copy the project's public key into authorized_keys.
Push and watch it deploy
Every push triggers a deploy. Logs, rollbacks, and remote commands live in your dashboard.
Frequently Asked Questions
Which protocols does DeployHQ support for SSH-based deployment?
DeployHQ supports SSH, SFTP, and FTPS for code uploads, plus a separate SSH connection for running remote commands. You can mix protocols across servers in the same project — for example, SFTP to a shared host and SSH commands on a VPS.
Do I need to give DeployHQ my SSH password?
No. Every project in DeployHQ generates its own public/private SSH key pair. You add the public key to your server's authorized_keys file, and DeployHQ never sees or stores your password. Password auth is supported as a fallback for hosts that don't allow key auth.
Can I run commands on the server during a deploy?
Yes. You can configure commands that run before upload, after upload, or on a specific server. Output is streamed back to your dashboard so you can see exactly what happened — handy for migrations, cache clears, or service reloads.
What if my server is behind a firewall?
Use the DeployHQ Agent to deploy to servers that don't accept inbound connections from the public internet. The agent opens a secure outbound tunnel and lets DeployHQ reach private servers via SSH or SFTP without changing firewall rules.
Does it work with shared hosting that only offers SFTP?
Yes. Most shared hosts only expose SFTP rather than full SSH, and DeployHQ deploys to them just fine. See the shared hosting guide for details — you'll lose the ability to run remote shell commands, but uploads, diffs, and rollbacks all work the same way.
Stop opening terminals to ship
Connect a Git repo, add an SSH server, and never touch ssh manually again.
10-day free trial • No setup fees • Cancel anytime
Explore More Features
Discover all the tools that make DeployHQ the easiest way to deploy your code.
Zero Downtime Deployments
→One-Click Rollback
→Turbo Deployments
→Build Pipelines
→Docker Builds
→Deployment Checks
→Deployment Targets
→Automatic Deployment
→Deployment Templates
→Deploy Behind Firewalls
→SSH Deployment
→Deployment Zones
→Team & Permissions
→Static Sites & S3
→CLI & Agents
→Powerful Integrations
→Get started today for just $9/month
That's unlimited deployments and 3 projects.