실수로 .ssh / authorized_keys를 제거하는 것은 심각한 실수입니까?


13

Ubuntu 16.04에서 SSH 키를 처음 설정했습니다. 명명 된 이름을 제거 할 수있는 인증 된 키를 찾고 anne있었지만 전체 authorized_keys파일을 삭제했다고 생각 합니다.

mike@mike-thinks:~$ rm /home/mike/.ssh/
authorized_keys  id_rsa           id_rsa.pub       known_hosts
mike@mike-thinks:~$ rm /home/mike/.ssh/authorized_keys 

심각한 실수입니까? 그렇다면 어떻게 재생성합니까? 한편 나는 그렇게했다 :

mike@mike-thinks:~/.ssh$ touch ~/.ssh/authorized_keys
mike@mike-thinks:~/.ssh$ ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts
mike@mike-thinks:~/.ssh$ chmod 600 ~/.ssh/authorized_keys

첫 번째 rm명령 은 어떻게 디렉토리의 내용을 나열하게 되었습니까? 그 복사 오류가 있어야 ls /home/mike/.ssh/합니까?
Barmar

3
@Barmar, 경로를 자동 완성하기 위해 탭을 눌렀을 때 Bash에서 보이는 모양이며 여러 가지 선택이 있습니다.
ilkkachu

2
지금은 백업복원 에 대해 생각하기 가장 좋은시기 입니다.
Reinstate Monica-M. Schröder

답변:


21

~/.ssh/authorized_keys파일은 공개 키의 목록이 포함되어 있습니다. 이를 통해 개인 키와 일치하는 개인 키를 소유 한 모든 사람이이 컴퓨터에 연결하고이 사용자 계정으로 원격 액세스 할 수 있습니다 ( ~경로 앞의 물결표 는이 파일이 현재 사용자의 홈 디렉토리에 있음을 나타냄).

서버 (기계가 연결하려는에 ) :

이 파일을 삭제하면 개인 키를 사용하여이 사용자 계정으로 인증 할 수있는 사람이 없습니다. 암호 인증을 해제하지 않으면 암호 인증이 계속 작동합니다.

파일을 다시 생성하고 공개 키 인증 방법을 사용하여 액세스 권한을 부여 할 모든 공개 키를 추가해야합니다.

클라이언트 (연결하려는 시스템에서 에서 , 즉 로컬 컴퓨터) :

authorized_keys키를 인증하지 않고 로컬 컴퓨터에 대한 원격 액세스 권한을 부여하지 않으려는 경우 파일이 필요하지 않습니다 . 비어 있거나 삭제해야합니다.

클라이언트에서, 당신은 단지 서버에 권한이 부여 된 개인 키 파일이 필요합니다 (즉, 어떤 이에 상응하는 대중의 키가 authorized_keys서버에있는 파일) 및 선택적으로 적절한 configknown_hosts파일을.


감사 ! 흠, 저는 공개 키, 개인 키 및 원격 액세스를 처음 사용합니다. 이것은 내 개인 기계입니다. 아무도 내 컴퓨터에 원격으로 액세스 할 수 있다고 생각하지 않습니다.
Monica Revolucion에 대한

다른 사람이 컴퓨터에 액세스하지 못하게하려면 파일을 제거하거나 비워두면됩니다.
pLumo

2
알았어, 네가 잘못 읽은 것 같아 authorized_keys로컬 시스템이 아니라 서버에 파일이 필요하지 않습니다 .
pLumo

3
ssh-keygen생성 id_rsa하고 id_rsa.pub,하지 authorized_keys. 그리고 확실히.
pLumo

1
이 ssh를 원하는 것은 매우 흔한 일 것을 주 에서 데스크톱 컴퓨터에 다른 컴퓨터, 그 경우 인증하기 위해 키를 사용하여 더 안전합니다.
Karl Bielefeldt

3

예, 전체 파일을 제거했습니다. 다시 만들려면 모든 사용자가 서버 연령대에 ssh 키를 복사해야합니다. 당신이 사용할 수있는

ssh-copy-id user@hostname.example.com

모든 키를 제거하지 않으려면 파일을 편집하고 다음에 줄만 제거하십시오.


고마워, 이것은 내 개인 기계입니다. 나는 그것이 서버로서의 역할을했는지 확실하지 않다
Monica

2
클라이언트에는 개인 키 파일과 known_hosts 및 pubkeys가있는 서버 authorized_keys가 필요합니다
trietend
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.