이 SSH 구성이 잘못 구성되어 보안 위험이 있습니까?

이 SSH 구성이 잘못 구성되어 보안 위험이 있습니까?

편집하다:아래 답변을 참조하세요. 내 가정이 잘못되었습니다.

~/.ssh/config내 SSH 구성( OS X) 에 다음이 있으면 보안 위험이 있습니까?

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/my-secret-key.pem

ssh내가 이해한 바는 내가 입력하는 모든 호스트 에 내 키를 보낼 것이라는 것입니다 . 맞습니까? 그렇다면 이것이 보안 위험입니까? 호스트가 이론적으로 SSH에 대한 내 키를 일부 주요 SSH 호스트(예: GitHub)에 사용하려고 시도할 수 있습니까?

다음을 지정하는 경우 HostName에만 키가 해당 호스트로 전송되는 것이 맞다고 생각합니다 .

Host *
  HostName github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/my-secret-key.pem

이것GitHub용 SSH 설정에 대한 공식 문서첫 번째 구성을 사용하는 것이 좋습니다...

답변1

SSH 확인아니요개인 키를 서버로 보냅니다. 메커니즘은 엔터티가 소유한 것을 사용하는 계산을 기반으로 합니다. 서버는 공개 키를 기반으로 무언가를 계산하고 클라이언트는 개인 키를 기반으로 무언가를 계산합니다(참조).이번 정보보안스택 교환 포스팅은더 알아보기).

어떤 경우든 에이전트에 키를 추가하는지 여부에 관계없이 SSH는 성공할 때까지 모든 키를 시도합니다. 프록시 전달 설정이 없으면 어쨌든 유용하다고 생각하지 않습니다.섬기는 사람에이전트에 추가된 키를 사용하는 기능.


Host *
  HostName github.com
  AddKeysToAgent yes

이렇게 하면 Hostname모든 Host항목이 로 설정됩니다 github.com. 이는 확실히 사용자가 원하는 작업이 아닙니다(즉, ssh foo.bar에 연결됨을 의미함 github.com). 특정 구성만 연결에 적용하려면 github.com다음 Host패턴을 사용하세요.

Host github.com
    IdentityFile ~/.ssh/my-secret-key.pem

보안 위험이 있는지 여부는 방어하려는 대상이 누구인지에 따라 다릅니다. SSH 키가 비밀번호로 보호되어 있고 다른 사람이 시스템의 SSH 에이전트에 액세스할 수 있는 경우, 비밀번호로 보호된 모든 키가 에이전트에 추가되면 액세스를 위해 열립니다.

그러나 나는 이러한 위협이 일어날 가능성이 낮다고 말하고 싶습니다.

관련 정보