31 lines
1.6 KiB
Markdown
31 lines
1.6 KiB
Markdown
---
|
|
title: "OpenSSH"
|
|
category: "Networking and remote access"
|
|
tagline: "Log in to other machines securely, and let them log in to this one."
|
|
source: "pacman"
|
|
package: "openssh"
|
|
command: "ssh"
|
|
website: "https://www.openssh.com/"
|
|
code: "https://github.com/openssh/openssh-portable"
|
|
---
|
|
|
|
## What it is
|
|
|
|
OpenSSH is the standard implementation of SSH, the encrypted protocol for logging in to another computer's shell, running commands on it and copying files (`scp`, `sftp`). It includes the client, `ssh`, and the server, `sshd`, that accepts connections, plus tools for creating and managing keys.
|
|
|
|
```
|
|
ssh you@machine.local
|
|
```
|
|
|
|
## Why it's here
|
|
|
|
- **Remote shells.** Work on your other machines and servers from this one.
|
|
- **Secure file transfer.** Copy files with `scp`, `sftp` or `rsync` over SSH.
|
|
- **Tunnels.** Forward ports to reach services on another machine.
|
|
|
|
## On CoreDesktop
|
|
|
|
OpenSSH is installed from pacman and `sshd.service` is enabled, so you can SSH into this computer. The firewall allows SSH on port 22, and Avahi advertises it on your LAN, so other machines can reach this one as `<hostname>.local`. Commands run with `ssh machine command` can find tools in `~/.local/bin` and mise.
|
|
|
|
For the client, CoreDesktop sets keepalives so a dropped connection is noticed within a minute (your `~/.ssh/config` still wins per host) and points `SSH_AUTH_SOCK` at Bitwarden's SSH agent. It also adds shell functions for port forwarding: `fip <host> <port>...` forwards local ports to the same ports on a host, `dip <port>...` stops them, and `lip` lists them. `update` keeps OpenSSH current with the pacman packages.
|