Frequently Asked Question
What is SSH and why is it the most important Linux tool to learn?
SSH (Secure Shell) is the encrypted remote-shell protocol invented by Tatu Ylönen
in 1995 to replace the insecure telnet and rlogin. It gives you three things
at once over a single TCP connection (default port 22): confidentiality (nobody
sniffing the wire can read your traffic), integrity (nobody can tamper with it),
and mutual authentication (both ends can verify each other). It is how system
administrators do almost all their work, how developers push to remote git
repositories, how cloud instances are managed, and how you reach any machine
further away than the keyboard in front of you.
The basic invocation is ssh user@host. From there it grows: ssh -p 2222 host
for non-default ports, ssh host 'ls /var' to run a single command, ssh -L 8080:localhost:80 host to tunnel a local port through the SSH connection, ssh -J bastion target to hop through a jump host. The companion tools scp and
sftp copy files over the same connection; rsync runs over SSH for
incremental transfers. If you learn one chapter's worth of tools, learn this
one.