SSH
SSH (Secure Shell) lets you securely connect to remote computers and run commands. Authentication uses passwords or public-key cryptography. Transfer files securely with scp or rsync. Tunnel arbitrary traffic through SSH connections for security and access through firewalls.
SSH is the standard for remote system administration, development on servers, and secure file transfer. Every modern system runs an SSH server. Client tools: ssh (connect), scp (copy files), ssh-keygen (generate keys), ssh-add (manage keys).
$ ssh user@host # connect to remote host $ ssh -i key.pem user@host # use specific private key $ scp file user@host:/path # copy file to remote $ ssh-keygen -t ed25519 # generate key pair
Public-key authentication is more secure than passwords. Generate a key pair, copy the public key to the server, and SSH uses it for authentication. You can also configure SSH tunneling, jump hosts, and multiplexing for advanced usage.
