Free course

SSH Course

Use SSH safely for remote access, host verification, keys, file transfer, tunnels, jump hosts, automation, and recovery.

5 modules · 25 lessons · No signup

Prerequisites: Shell Commands and Linux Basics

~~~

Your progress

of lessons completed.

Course completed.

What you'll learn

Create and operate a verified path to an Ubuntu server with personal keys, narrow tunnels and automation, rotation, and a tested recovery runbook.

Take this course offline

Subscribe to my newsletter to get every free book and course in PDF and EPUB format.

Get the downloads

Course contents

  1. Connections and trust

    Understand the handshake, verify host identity, and diagnose explicit connections.

    1. Understand the SSH connection
    2. Verify the host key
    3. Understand known_hosts
    4. Connect with explicit options
    5. Check your understanding: connections and trust
  2. Keys, agent, and config

    Create protected identities, install public keys, and write maintainable client config.

    1. Generate a dedicated key
    2. Protect private keys and use the agent
    3. Install and restrict public keys
    4. Write maintainable SSH config
    5. Check your understanding: keys, agent, and config
  3. Files, tunnels, and jumps

    Run commands, transfer files, forward ports, and cross bastions safely.

    1. Run remote commands
    2. Transfer files with scp and sftp
    3. Create local and remote tunnels
    4. Use jump hosts without spreading keys
    5. Check your understanding: files, tunnels, and jumps
  4. Server access and hardening

    Use personal accounts, change sshd safely, reduce exposure, and read logs.

    1. Use personal accounts and sudo
    2. Change sshd configuration safely
    3. Reduce authentication and network exposure
    4. Read SSH logs and failures
    5. Check your understanding: server access and hardening
  5. Automation, rotation, and recovery

    Build narrow automation, rotate and revoke keys, respond, and rehearse recovery.

    1. Build narrow automation
    2. Rotate and revoke keys
    3. Respond to a lost key or host change
    4. Finish the operator runbook
    5. Check your understanding: automation, rotation, and recovery