~/.ssh/config에서 백업 대체를 어떻게 정의합니까?

~/.ssh/config에서 백업 대체를 어떻게 정의합니까?

나는 많은 항목을 가지고 있습니다 ~/.ssh/config:

Host github.com
  Hostname github.com
  User git
  IdentityFile ~/.ssh/github

Host mydomain.com
  User name
  IdentityFile ~/.ssh/id_rsa

Host [email protected]
  Hostname work.com
  User full.name
  IdentityFile ~/.ssh/work_rsa

일치하는 항목이 없으면 기본 대체는 입니다 id_rsa. 하지만 다른 대체를 원합니다. 다음 시도는 모든 것을 캡처하고 이전 설정을 덮어쓰기 때문에 실패합니다.

Host '*'
  IdentityFile ~/.ssh/fallback

"위에 해당사항 없음"을 올바르게 표현하는 방법은 무엇입니까?

답변1

백업을 맨 아래로 이동합니다. SSH는 첫 번째 일치 블록에서 Host매개변수 값을 가져옵니다 .

모든 것이 일치 하므로 Host *맨 마지막에 두는 것이 좋습니다. 그렇지 않으면 SSH는 항상 이를 선택합니다 IdentityFile.

Host github.com
  Hostname github.com
  User git
  IdentityFile ~/.ssh/github

Host mydomain.com
  User name
  IdentityFile ~/.ssh/id_rsa

Host [email protected]
  Hostname work.com
  User full.name
  IdentityFile ~/.ssh/work_rsa

Host *
  IdentityFile ~/.ssh/fallback

관련 정보