SSH 공개 키 인증이 작동하려면 왜 sudo를 사용해야 합니까?

SSH 공개 키 인증이 작동하려면 왜 sudo를 사용해야 합니까?

sudo를 사용하지 않는 한 컴퓨터(OS X)에서 라즈베리 파이(우분투 메이트)로 SSH를 통해 연결할 수 없습니다. 인증을 위해 공개/개인 키 쌍을 사용하고 있습니다.

적절한 공개 키가 라즈베리 파이의authorized_users 파일에 추가됩니다.

내 .ssh 디렉터리에 대한 권한은 700입니다. 내 키 파일에 대한 권한은 600입니다.

이것은 -v 플래그를 사용한 ssh의 출력입니다.

debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/username/.ssh/id_rsa
debug1: Authentications that can continue: publickey 
debug1: Trying private key: /Users/username/.ssh/id_dsa
debug1: No more authentication methods to try. Permission denied (publickey).

ls:

-rw------- 1 username staff 3326 May 18 23:24 id_rsa 
-rw-r--r-- 1 username staff 752 May 18 23:24 id_rsa.pub 

.ssh:

drwx------  11 username   staff    374 May 19 21:49 .ssh

답변1

아마도 당신은 아마도 sudo당신이 한 일을 통해 루트의 SSH 키를 공유했을 것입니다 ssh-copy-id. username의 공개 키가 authorized_keys대상 에도 있는지 확인하세요.

답변2

여기서 단절이 있는 것 같습니다. 당신은 계속authorized_users라고 말합니다. 다른 사람들은 Authorized_keys라고 계속 말합니다. 사용자의 공개 키는 .ssh/authorized_users가 아닌 .ssh/authorized_keys라는 파일로 사용자의 홈 디렉터리에 저장됩니다. ssh는 루트에서 작동하므로 ~root/.ssh의 디렉토리를 보고 ~user_name/.ssh의 디렉토리를 동일하게 보이게 할 수 있습니다. 단, 키는 해당 사용자의 키가 됩니다. , 루트용이 아닙니다.

관련 정보