여러 컴퓨터 / 서비스간에 개인 키 파일을 공유해도됩니까?


110

따라서 SSH 등을 사용하여 공개 키 / 개인 키를 사용하는 방법을 알고 있습니다. 그러나이를 사용 / 재사용하는 가장 좋은 방법은 무엇입니까? 영원히 안전한 곳에 보관해야합니까? 즉, GitHub에 액세스하기 위해 키 쌍이 필요했습니다. 처음부터 페어를 만들어서 얼마 동안 GitHub에 액세스하는 데 사용했습니다. 그런 다음 HDD를 포맷하고 해당 쌍을 잃었습니다. 큰 문제로 새 페어를 만들고 GitHub가 새 페어를 사용하도록 구성했습니다. 아니면 내가 잃고 싶지 않은 것입니까?

회사 시스템에 액세스하려면 공개 키 / 개인 키 쌍이 필요했습니다. 관리자가 공개 키를 요청하고 새 페어를 생성하여 그에게 줬습니다. 일반적으로 다른 시스템에 액세스하기 위해 새 쌍을 생성하는 것이 더 좋습니까? 또는 한 쌍을 갖고 다른 시스템에 액세스하기 위해 재사용하는 것이 더 낫습니까? 마찬가지로, 두 개의 서로 다른 쌍을 생성하고 하나를 사용하여 가정에서 회사 시스템에 액세스하고 다른 하나를 사용하여 직장에서 시스템에 액세스하는 것이 더 좋습니까?


이것은 귀하의 질문에 대한 직접적인 대답은 아니지만 각 키에 대한 암호를 사용하는 것이 좋습니다. 이상적으로는 각 키에 대해 별도의 암호 문구를 사용하십시오 (비밀번호 관리자 사용). 그 이유는 다음과 같습니다. 개인 키가 손상되면 (노트북을 도난 당하고 컴퓨터가 해킹 당했을 경우) 키를 무차별 상태로 만들 수 있고 키가있는 모든 컴퓨터에서 공개 키를 교체 할 수있는 시간이 있습니다 공격자가 할 수 있기 전에. 출처 : help.ubuntu.com/community/SSH/OpenSSH/…
Xandor Schiefer

답변:


86

원점마다 별도의 개인 키가 있어야합니다 . 기본적으로 이는 일반적으로 백업을 계산하지 않는 각 개인 키의 단일 사본이 있어야 함을 의미합니다. 하나를 침입하면 기본적으로 다른 하나에 액세스 할 수있는 상황 (예 : 서로간에있는 경우)과 밀접한 관련이있는 시스템에서 동일한 개인 키를 사용하는 것이 좋습니다 shosts.equiv. 다른 영역 (예 : 집과 직장)의 컴퓨터에서 동일한 개인 키를 사용하지 말고 두 사용자간에 개인 키를 공유하지 말고 랩톱과 다른 컴퓨터간에 개인 키를 공유하지 마십시오.

대부분의 경우 목적지마다 다른 개인 키가 있다는 점을 알지 못합니다. 개인 키가 손상된 경우 동일한 디렉토리에 저장된 다른 모든 개인 키도 반드시 손상되므로 보안상의 이점이없는 합병증이 추가됩니다.

이러한 원칙을 준수하면 각 키 페어는 하나의 (머신, 사용자) 페어를 식별하므로 인증 관리가 쉬워집니다.

오리진 당 단일 개인 키의 일반적인 규칙에 대한 두 가지 예외를 생각할 수 있습니다.

  • 특정 머신의 특정 명령 (예 : 자동 백업 또는 알림 메커니즘)에만 액세스 할 수있는 암호가없는 키가있는 경우 해당 키는 일반 셸 액세스 키와 달라야합니다.
  • 일부 컴퓨터가 간헐적으로 연결되어 있으면 새 키 배포를 마칠 때까지 새 개인 키와 함께 이전 개인 키가있을 수 있습니다.

5
이것이 항상 키 페어를 사용한 방식입니다. GitHub가 설정 지침에서 새 키 페어 생성을 옹호하는 이유를 이해하지 못했습니다. 나는 그것을 무시하고 표준 키 페어를 사용했습니다. 나는 그들이 보수적이라고 가정합니다.
toolbear74

"다른 영역의 컴퓨터에서 동일한 개인 키를 사용하지 마십시오"라고 말하지만 DNS가 사용자의 위치에 따라 주어진 호스트 이름을 두 컴퓨터 중 하나로 확인하면 어떻게됩니까? 개인 키를 공유하지 않으면 ssh가 동일한 호스트 이름에 대해 두 개의 별도 키를 갖는 것에 혼란을 느끼기 때문에 해당 호스트 이름으로 ssh 또는 rsync를 시도하면 경고 또는 실패가 발생합니다.
Michael

@ Michael 나는 당신이 묘사 한 시나리오에서 사용자 키 와 관련하여 어떤 문제가 있는지 이해하지 못합니다 .이 스레드는 무엇입니까? SSH는 호스트 키 에 대해 혼란 스러울 수 있지만 사용자에게는 호스트의 개인 키가 아닌 호스트의 공개 키가 있으며 호스트의 개인 키를 공유하는 것이 위험합니다. 호스트가 완전히 동등한 경우에만 권장합니다 (중복성 그들 중 하나가 실패하는 경우), 아마도 그때조차도 아닙니다.
Gilles

그래. 둘 사이에 명확한 구분이 많지 않은 것 같습니다. 어느 쪽이 이야기되고 있는지 아는 것으로 가정합니다.
Michael

1
@JSBach 영역마다 별도의 키를 사용하면보다 세분화 된 권한을 정의 할 수 있습니다 (보안 수준이 낮은 영역 A에 저장된 키는 A의 시스템간에 사용할 수 있지만 B에 로그인하면 더 강력한 인증 요소가 필요함). 별도로 (영역 A가 손상되었지만 여전히 B에서 C에 로그인 할 수 있음). SSO는 최고 보안 시스템에 로그인 한 다음 다른 곳에서 로그인 할 수있는 경우입니다. 사용자 당 여러 키를 가질 때 어떤 위험이 있는지 알 수 없습니다. 이것은 정보 보안에 대한 주제입니다 .
Gilles

4

가장 좋은 방법이 무엇인지 모르지만 내 방법이 무엇인지 알 수 있습니다.

sysadmin으로서 다른 키를 사용하여 각 서버 / 서비스에 루트로 액세스합니다. 이런 식으로 키를 분실하거나 훼손한 경우 하나의 단일 서버로 위험을 제한하고 모든 서비스를 새로운 키로 업데이트 할 필요가 없습니다.

사용자에 관해서는 각기 다른 키를 사용합니다. 이 키를 사용하면 권한이없는 사용자로서 필요한 서비스에 액세스 할 수 있습니다. 이렇게하면 각 사용자에게 단일 서비스에 대한 액세스 권한을 쉽게 부여하거나 취소 할 수 있습니다. 사용자가 자신의 키를 잃어버린 경우 모든 서비스에서 키를 삭제하고 무단 액세스의 위험을 제한 할 수 있습니다.


+1 새로운 키 사용 정책에 대해 상사와 이야기 할 것입니다 ;-) 서버 / 서비스 당 네트워크 당보다 훨씬 안전한 사운드
Diskilla

1

암호를 입력하지 않으면 어디에서나 개인 키를 사용할 수 있다고 생각합니다. 즉, 랩톱 1, 2, 데스크톱 1, 2와 같은 소수의 컴퓨터와 개인 키를 공유하고 싶다면 괜찮습니다.

내 경험에 비추어 볼 때 내 주요 컴퓨터는 강력한 프로세서로 대부분의 작업을 수행하는 데스크탑이지만 모바일에서 랩톱을 사용하고 데이터 센터 및 문제 해결에 문제를 겪어야하므로 여전히 모든 호스트에 로그인 할 수 있습니다 공개 키가 있습니다.


1
여기에서 최고의 답변을 읽으십시오. 당신은 잘못하고있다. 그렇게 할 수는 없지만 그렇게해서는 안됩니다.
PhilT

2
왜 모든 다운 보트를 볼 수 없습니다. 예를 들어 대학 네트워크에는 종종 네트워크로 연결된 홈 디렉토리가 있으므로 사용자가 제공 한 랩톱에서도 동일한 개인 키가 사용자가 어디에서나 사용합니다. 인터넷을 통해 암호화하지 않은 상태로 복사하지 않으면 위험을 이해하면 괜찮습니다. 다른 컴퓨터에 로그인했기 때문에 공개 키를 2,000 곳의 장소에 추가 할 필요가없는 피의 방식도 편리합니다.
Asfand Qazi

이 답변에 대한 담당자를 잃어서는 안되기 때문에 투표했습니다. 개인적으로 선호하며 서비스 당 별도의 키와 기계를 사용하면 궁극적으로 더 많은 제어 기능을 제공하지만 때로는 사용 사례에 따라 시간 낭비 일 수 있습니다.
다니엘 듀어 스트

0

우리 회사에서는 이러한 키를 사용자별로 사용합니다. 그것은 사례 2를 의미합니다. 사용자에게는 자신의 키가 있으며이 키는 회사 시스템에 연결하는 데 사용하는 모든 컴퓨터에 사용됩니다. 내 의견은 하나의 시스템에 하나의 키를 사용하는 것입니다. 즉, 특정 네트워크에 연결해야하는 모든 컴퓨터에서이 키를 사용합니다. 귀하의 경우 GitHub의 키 하나와 회사 시스템의 키 하나입니다. 따라서 관리자가 다시 요청하면 지난 번과 동일한 키를 제공합니다. 새로운 것이 아닙니다. 그러나이 키에 대한 일반적인 사용 정책이 있는지 모르겠으며 그 이후로 잘못하고 있습니다. 확실히 가능합니다 ;-)


0

생성 한 공개 키는 모두를위한 것입니다. 그것은 그들에게 a) 신뢰성을 검사 할 수있게한다. b) 당신을 위해 암호화한다

개인 키는 개인용입니다. 당신만을위한 것입니다. 그리고 안전한 장소에서 어딘가에 백업해야하는 열쇠입니다. 예를 들어 USB 스틱에 저장하면 보안 암호로 암호화 할 수도 있습니다.

공개 키는 다른 사람과의 정체성입니다. 따라서 아무 문제가 없습니다 / 적어도 명시적인 새로운 정체성을 사용하고 싶지 않은 곳에서는 모든 것에 대해 하나의 키 페어를 사용하는 것이 좋습니다.


3
고맙지 만 귀하의 답변은 대부분 내 질문과 관련이 없습니다. @Diskilla의 답변을 참조하십시오.
Behrang
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.