summaryrefslogtreecommitdiff
path: root/config/ssh/entry
blob: a8cdf2b1f84966aab4ea01c9b031e1a0a8da480c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# ~/.ssh/config on every host, linked there by link/ssh.sh.
#
# It configures no hosts of its own. It only fixes the order the pieces are read
# in, which matters because ssh keeps the FIRST value it obtains for a keyword:
#
#   1. ~/.config/ssh/config-fleet  Host blocks another layer links in, shared by
#                                  a set of machines. First, so host-key pinning
#                                  there cannot be undone by anything read after
#                                  it.
#   2. ~/.config/ssh/enabled.d/    Configs from this repo that a host opted in
#                                  to, as links: bin/yubikey-git enable puts
#                                  one here.
#   3. ~/.config/ssh/config-local  This host only; not in any repo, never
#                                  synced. See config/ssh/config-local-example.
#   4. Shared defaults, below      Last, so any of the above can override them.
#
# Every include is optional: ssh skips an Include that matches no file, so on a
# machine with none of them this file configures nothing at all. No key is named
# anywhere; ssh's default ~/.ssh/id_ed25519 is whatever that machine installs.

Include ~/.config/ssh/config-fleet
Include ~/.config/ssh/enabled.d/*.conf
Include ~/.config/ssh/config-local

# Shared defaults for every host go here, under `Host *`. There are none yet.