OpenSSH ~ / .ssh / config khusus host tidak berfungsi

16

Saya sudah mencoba mengatur ~/.ssh/configfile saya dengan bantuan panduan ini. Namun, override Pengguna khusus host tidak memiliki efek dan ssh mencoba untuk terhubung menggunakan nama pengguna global alih-alih yang khusus untuk host. Konfigurasi ssh saya sudah diatur seperti ini:

$ cat ~/.ssh/config
User my_global_username

Host dev1
    HostName 10.40.10.41
    User my_username_on_dev_machines

Saya juga mencoba meletakkan nama pengguna global di bawah Host *entri tetapi tidak berhasil. Versi OpenSSH dan build yang saya jalankan adalah OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb 2013 `.

andyn
sumber

Jawaban:

29

Tidak ada nilai "global" di .ssh/config. Jika Anda ingin memiliki nilai default, Anda harus meletakkannya di Host *bagian:

Host dev1
    HostName 10.40.10.41
    User my_username_on_dev_machines

Host *
    User my_global_username

Perhatikan urutannya: Pertandingan pertama menang!

cran
sumber
2
Beberapa pertanyaan lanjutan: 1) Apakah perilakunya berubah baru-baru ini? Panduan di situs web tertaut dengan jelas ditampilkan Host *di atas.
andyn
2) Pertandingan pertama menang, tetapi tampaknya hanya untuk nilai-nilai yang ditetapkan secara eksplisit. Apakah ini didokumentasikan di suatu tempat? Man ssh_config tidak menampilkan apa pun yang terkait di bagian Host atau POLA.
andyn
6
Kalimat pertama dalam paragraf kedua dalam ssh_config (5) mengatakan: "Untuk setiap parameter, nilai yang diperoleh pertama akan digunakan." Saya tidak tahu apakah itu berubah baru-baru ini, tetapi saya memiliki "Host *" di bagian bawah sepanjang waktu.
cran