askill
ssh-tmux-remote-workflow

ssh-tmux-remote-workflowSafety 85Repository

Configure SSH connections, multiplexing, jump hosts, and tmux sessions for remote work. Use when setting up SSH config with ProxyJump, creating persistent tmux sessions, syncing files with rsync, or debugging SSH connection issues. Do not use for systemd services on the remote host (prefer systemd-services) or container orchestration.

0 stars
1.2k downloads
Updated 3/17/2026

Package Files

Loading files...
SKILL.md

Purpose

Configure SSH connections, key management, jump hosts, and tmux sessions for reliable remote workflows.

When to use this skill

  • setting up ~/.ssh/config with host aliases, ProxyJump, and multiplexing
  • creating persistent tmux sessions for long-running remote work
  • syncing files between local and remote with rsync
  • debugging SSH connection failures or key issues

Do not use this skill when

  • writing systemd unit files on the remote host — prefer systemd-services
  • the task is container orchestration — different domain
  • doing local terminal debugging — prefer terminal-debugging

Procedure

  1. Generate keysssh-keygen -t ed25519 -C "user@machine". Copy: ssh-copy-id user@host.
  2. Configure SSH — edit ~/.ssh/config with host blocks for aliases, jump hosts, multiplexing.
  3. Enable multiplexingControlMaster auto, ControlPath ~/.ssh/sockets/%r@%h-%p, ControlPersist 600.
  4. Jump hosts — use ProxyJump bastion to reach internal hosts through a bastion.
  5. Persistent tmuxssh host -t 'tmux new -s work || tmux attach -t work'.
  6. Sync filesrsync -avz --exclude .git/ ./src/ host:~/project/src/.
  7. Port forwardingssh -L 8080:localhost:3000 host for local access to remote services.
  8. Debugssh -vvv host for verbose output; check /var/log/auth.log on server.

SSH config example

Host *
    AddKeysToAgent yes
    IdentityFile ~/.ssh/id_ed25519
    ControlMaster auto
    ControlPath ~/.ssh/sockets/%r@%h-%p
    ControlPersist 600
    ServerAliveInterval 60

Host bastion
    HostName bastion.example.com
    User deploy

Host internal
    HostName 10.0.1.50
    User deploy
    ProxyJump bastion

tmux essentials

tmux new -s dev           # new named session
tmux attach -t dev        # reattach
# Ctrl-b d  detach    Ctrl-b c  new window
# Ctrl-b %  vsplit    Ctrl-b "  hsplit

Decision rules

  • Use ed25519 keys — faster and more secure than RSA.
  • Use ProxyJump over ssh -J — config is version-controllable.
  • Create ~/.ssh/sockets/ directory — missing dir causes silent multiplexing failure.
  • Set ServerAliveInterval 60 to prevent dropped idle connections.
  • Use tmux new -s name || tmux attach -t name to be idempotent.

References

Related skills

  • linux-ubuntu-ops — server management after SSH access
  • bash — scripting remote commands
  • terminal-debugging — debugging remote processes

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

89/100Analyzed 3/29/2026

High-quality technical skill covering SSH tunneling, multiplexing, jump hosts, and tmux workflows with clear procedures, code examples, and decision rules. Well-structured with appropriate metadata and references.

85
92
87
88
90

Metadata

Licenseunknown
Version-
Updated3/17/2026
Publisherchelch5

Tags

remotesshtmux