서버 관리자가 사용할 개인 키를 보냈습니다. 왜?


73

회사의 준비 및 라이브 서버를 배포 루프에 연결하기 위해 서버에 액세스해야합니다. 측면의 관리자가 두 인스턴스를 설정 한 다음 서버에 사용자를 만들어 SSH로 연결할 수 있도록했습니다. 이것에 익숙합니다.

내 마음에 지금 일어날 일은 공개 키를 전송하여 승인 된 키 폴더 안에 넣을 수 있다는 것입니다. 그러나 그들은 나에게 파일 id_rsa내부 -----BEGIN RSA PRIVATE KEY-----에 이메일을 포함 하는 파일 이름 을 보냈습니다 . 이것이 정상입니까?

나는 주위를 둘러 보았고 처음부터 자체 키를 생성하고 설정하는 데 많은 양의 리소스를 찾을 수 있었지만 서버의 개인 키 에서 시작 하는 것에 대해서는 아무것도 없습니다 . 나 자신을 위해 키를 생성하기 위해 이것을 사용해야합니까?

나는 시스템 관리자에게 직접 요청하지만 바보처럼 보이고 우리 사이의 모든 사람들을 낭비하고 싶지 않습니다. 그가 보낸 키를 무시하고 공개 키를 승인 된 폴더에 넣도록 요청해야합니까?


6
나는 그것을 정상 또는 제정신이라고 부르지는 않지만, 개인 키를 가지고 있기 때문에 (이미 승인 된 것으로 가정하면) 다른 개인 키를 사용할 때와 같이 사용할 수 있습니다. 해당 공개 키가 필요하지 않지만 원하는 경우 언제든지 생성 할 수 있습니다. askubuntu.com/a/53555/158442
muru

34
얻기 -----BEGIN RSA PRIVATE KEY-----전자 우편을 통해하면라는 사용자 본 후에 다음 무서운 일이 '); DROP DATABASE;--사용자 이름 테이블을.
Dmitry Grigoryev

62
@DmitryGrigoryev '); DROP DATABASE;--데이터베이스 테이블에서 사용자 이름으로 보는 것이 무섭지 않습니다. 사용자 입력을 올바르게 이스케이프하고 있음을 보여줍니다
HorusKol

19
'다른 개인 키를 사용할 때처럼 사용할 수 없습니다 '. 이것은 개인이 아닙니다. Ergo 는 작성된 기능을 수행 할 수 없습니다. 버리고 UNIX 관리자가 심각하게 쫓겨났습니다. @muru
207421

7
이 개인 키를 가진 사람은 누구나 새 서버에 액세스 할 수 있습니다. 아마도 관리자는 아무 키도 필요없이 액세스 할 수 있으며 서버를 설정할 수 있었기 때문에 무단 액세스의 추가 위협은 없습니다. 그러나 이것이 당신의 열쇠 이기 때문에 그는 당신을 가장하게 가장 할 수 있습니다. 귀하 이외의 다른 사람이 이메일을 읽은 후에도 귀하를 가장 할 수도 있습니다.
user253751

답변:


116

내 마음에 지금 일어날 일은 공개 키를 전송하여 승인 된 키 폴더 안에 넣을 수 있다는 것입니다.

지금 무슨 일이 일어나야하는지 "마음 속에"있는 것은 맞습니다.

전자 메일은 안전한 통신 채널이 아니므로 적절한 보안의 관점에서 개인 키가 손상되었음을 고려해야합니다.

기술력과 외교관에 따라 몇 가지 다른 일을 할 수 있습니다. 다음 중 하나를 권장합니다.

  1. 자신의 키 페어를 생성하고 공개 키를 자신이 보낸 이메일에 첨부하여 다음과 같이 말합니다.

    감사! 전자 메일은 개인 키를위한 안전한 배포 방법이 아니므로 공개 키를 대신 배치 해 주시겠습니까? 첨부되어 있습니다.

  2. 전송 한 개인 키는 전자 메일을 통해 전송 된 후에 손상된 것으로 간주되므로 감사하고 그들 자신의 키 쌍 설치에 반대하는지 물어보십시오.

    고유 한 키 쌍을 생성하고, 보낸 키를 사용하여 처음 로그인 한 다음, 해당 액세스 권한을 사용 authorized_keys하여 새 공개 키를 포함하도록 파일을 편집하십시오 (그리고 손상된 개인 키에 해당하는 공개 키를 제거하십시오).

결론 : 당신은 바보처럼 보이지 않습니다. 그러나 다른 관리자는 바보처럼 보이게 만들 수 있습니다. 좋은 외교는 그것을 피할 수 있습니다.


MontyHarder의 의견에 대한 답변으로 수정 :

내가 제안한 행동 중 어느 것도 "다른 관리자에게 자신이 잘못한 것을 말하지 않고 문제를 해결하는 것"과 관련이 없습니다. 나는 버스에서 그를 던지지 않고 미묘하게 그렇게했습니다.

그러나 나는 것을 추가 할 것이다 또한 미묘한 단서가 포착되지 않은 경우 (공손) 후속 :

안녕하세요, 안전하지 않은 채널 인 이메일에 대한 내 의견에 답변하지 않으 셨습니다. 나는 이것이 다시는 일어나지 않을 것이라고 확신하고 싶다.

개인 키의 안전한 처리에 대해이 점을 지적하는 이유를 알고 있습니까?

베스트,

남자 이름


9
+1 최고의 답변. 이 시스템 관리자가 무능한 것으로 판명되었으므로 특히주의하십시오. 더 나은 귀하의 뒷면 커버 한 (그리고 경우 ) 그 / 그녀가 좋은을 위해 서버를 망치는 것입니다.
dr01

2
감사. 섬세한 문구를 사용하여 공개 키를 보냈습니다. 모든 것이 해결 된 것처럼 보이지만 그가 지금 보낸 키를 승인 해제합니다.
Toby

27
다른 관리자가 "멍청이처럼 보이게 만들 수있는"것은 아닙니다. 다른 관리자가 바보 같은 짓을 한 것입니다. 머신간에 개인 키를 공유해야하는 하나의 시나리오 만 생각할 수 있는데, 여기서 동일한 풀 이름 (라운드 로빈 DNS 확인 등)을 통해 서버 풀에 액세스하고 동일한 SSH 호스트 키를 제시해야합니다. 자동화 된 프로세스는 해당 이름임을 승인합니다. 이 경우 같은 사람이 모든 서버의 관리자가되며 외부 당사자의 개입없이 전송을 처리합니다.
Monty Harder

21
@zwol 제 직업에는 실수를 저지르는 것을 이해하지만 같은 실수를 두 번하지 않는 것을 최우선으로하는 "책임 없음"철학이 있습니다. 그러나 같은 실수를 두 번하지 않으려면 실수라는 것을 알아야합니다. 따라서 OP가 제안한 답변을 다른 관리자에게 알리지 않고 문제를 해결하기 만하면 문제를 해결할 수는 없습니다. 나는 당신이 설명하는 이유로 관리자 이름을 정확하게 부르지 않고 실수를 '이디 오틱' 이라고 부르기로 선택했습니다 . (그러나 나는 당신의 결론적 인 괄호가 의미있는 구별을 분명히 나타내는 지 확신하지 못합니다.)
Monty Harder

8
@LightnessRacesinOrbit, 나는 당신이 "외교"의 의미를 불완전하게 이해하고 있다고 생각합니다. Webster의 Third New International Dictionary와 같은 좋은 사전에서 정리해 보셨습니까?
와일드 카드

34

그가 보낸 키를 무시하고 공개 키를 승인 된 폴더에 넣도록 요청해야합니까?

그렇습니다. 정확히 당신이해야 할 일입니다. 개인 키와 요점들이 있다는 것입니다 개인 이 개인 키가있는 경우에만 의미합니다. 관리자로부터 해당 키를 받았으므로 키도 가지고 있습니다. 그래서 그는 언제든지 당신을 사칭 할 수 있습니다.

보안 채널을 통해 키를 보냈는지 여부는 관련이 없습니다. 개인 키를 직접 받았더라도 아무 것도 변경하지 않습니다. 민감한 암호화 키를 전자 메일로 보내는 것이 핵심이라고 의견에 동의하지만 관리자는 일종의 보안 정책을 가장하지 않습니다.


6
그리고 OP는 관리자의 머신이 얼마나 안전한지 알 수있는 방법이 없기 때문에 (아마도 매우 안전하지 않을 수도 있음) 개인 키도 다른 사람에게 유출 된 것으로 가정해야합니다. 이메일을 통해 개인 키를 보내는 것은 infosec 단서의 보너스 사실입니다.
dr01

1
사용자를 만들 수있는 관리자가 사용자를 가장하기 위해 개인 키가 필요하지 않다고 가정 할 수 있습니다.
Max Ried

3
@MaxRied 적절한 보안 로그가 제대로 설정되어 있지 않으면 어려울 수 있습니다. 개인 키를 사용하면 로그를 조롱 할 필요조차 없습니다. 비밀번호를 재설정하는 기능과 비밀번호를 알고있는 것과 같습니다.
Dmitry Grigoryev

@DmitryGrigoryev 그는 항상 authorized_keys 파일에 다른 키를 추가 할 수있었습니다 ...
Max Ried

4
@MaxRied 내가 언급 /var/log/secure하거나 비슷한 것이 었으므로 공간 트릭이 이것을 속이지 않을 것이라고 확신합니다.
Dmitry Grigoryev

14

나에게 그것은 관리자가 당신을 위해 개인 / 공개 키 쌍을 생성하고, 공개 키를 authorized_keys에 추가하고 개인 키를 보내는 것처럼 보입니다. 이렇게하면 서버와의 ssh 세션에이 개인 키만 사용해야합니다. 키 쌍을 직접 생성하거나 관리자에게 공개 키를 손상된 (항상 최악의 경우 : P) 개인 키로 보낼 필요가 없습니다.

그러나 암호화되지 않은 메일을 통해 귀하에게 전송 된 개인 키는 신뢰하지 않습니다.

내 접근 방식은 개인 키를 사용하여 한 번 로그인하고 서버의 authorized_keys에 자신의 공개 키를 추가하고 (원래 공개 키 대체)이 전자 메일 키를 버리는 것입니다. 그런 다음 관리자에게 개인 키를 제공했지만 관리자에게 감사를 표시 할 수 있지만 이러한 정보 / 키를 전자 메일을 통해 보내지 않기를 원할 것입니다.


3
@Toby 개인 키를 보내는 사람들이 상상할 수있는 유일한 이유는 그들이 사용하는 도구를 이해하지 못하기 때문입니다. 그리고 당신은 사용할 수 있습니다 -i사용하는 개인 어떤 키를 선택하기 위해 명령 줄에서.
kasperd

18
@kasperd 내가 상상할 수 있는 이유 는 전자 메일을 통해 개인 키를 보내는 위험이 기술에 정통하지 않은 사용자에게 키 쌍을 올바르게 생성하고 보내는 방법을 설명하려는 번거 로움으로 결정한 과로 한 sysadmin 때문입니다. 공개 키
mattdm

1
이 문제를 직접 해결할 수 있다는 것이 좋습니다. 관리자가 새 키 쌍을 위해 공개 키를 설치하기를 기다리는 것보다 직접 수행하는 것이 좋습니다. 더 이상 비밀이없는 개인 키를 사용하지 않아도 도움이되지 않습니다. 그것은 당신이 들어 와서 그것을 제거하기 전에 authorized_keys(자신을 추가하고 + 테스트 한 후) 잠재적 인 도청자를 더 오래 사용할 수있게 합니다.
Peter Cordes

4
@mattdm 저것은 ... 전적으로 논리적이지만 무섭습니다. 키 페어를 생성 할 수없고 공개 키를 보내지 못하는 사람은 아마도 내가 제공 한 개인 키로 훨씬 나아지지 않을 것입니다.
Monty Harder

1
@mattdm, 충분히 공평하지만 내가 그에게 모든 것을 해달라고 부탁 한 사람으로서 ssh와 연결하는 방법을 모른다고 생각하기가 어렵습니다. 공개 키를 사용하는 기본적인 일반적인 방법 만 알기 때문에 그가 취한 조치가 더 혼란 스러웠습니다. : x
Toby
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.