Jika Anda ingin memulai klien ssh, Anda bisa melakukan ini di bash:
#files are .ssh/config and ~/.ssh/foo.config
alias ssh='ssh -F <(cat .ssh/config ~/.ssh/foo.config)'
maka Anda menggunakan ssh secara normal dan kedua file akan dibaca dalam urutan itu.
Untuk daemon server sshd
Anda dapat melakukan hal yang sama, gunakan saja -f
alih-alih -F
dan tulis ini di mana Anda memulai daemon secara langsung. Anda tidak perlu alias.
Kemungkinan kedua menurut halaman manual adalah untuk menempatkan konfigurasi sistem yang lebar /etc/ssh/ssh_config
dan yang di pengguna ~/.ssh/config
.
Pembaruan Rupanya ada beberapa masalah dengan beberapa versi bash dan bagaimana perangkat dibuat. (lihat http://bugs.alpinelinux.org/issues/1465 )
Ini adalah solusi (meskipun menurut saya jelek):
mkfifo /tmp/ssh_fifo
cat ~/.ssh/config ~/.ssh/foo.config >/tmp/ssh_fifo &
ssh -F /tmp/ssh_fifo myserver
rm /tmp/ssh_fifo
jadi jika Anda mau, Anda dapat membuat fungsi darinya (atau skrip):
ssh() {
tmp_fifo=$(mktemp -u --suffix=_ssh_fifo)
mkfifo "$tmp_fifo"
cat ~/.ssh/config ~/.ssh/foo.config >"$tmp_fifo" 2>/dev/null &
/usr/bin/ssh -F "$tmp_fifo" "$@"
rm "$tmp_fifo"
}