bash : /home/user/.ssh/authorized_keys : 해당 파일 또는 디렉토리가 없습니다.


30

ssh 키를 작성하십시오.
명령 :

ssh-keygen -t rsa –P ""

키를 인증 된 키로 이동 :
명령 :

cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory

1
~/.ssh/authorized_keys자신의 키가 아닌 연결 / 신뢰 한 다른 컴퓨터 키입니다.
saiarcot895

일부 응용 프로그램은 자신의 컴퓨터에 암호없는 ssh가 필요합니다.
Nehal J Wani

Stack Exchange 네트워크의 여러 사이트 에 동일한 질문을 게시하지 마십시오 .
terdon

왜 자신이 소유 한 키를 신뢰해야합니까? 정확히 무엇을하려고합니까?
Braiam

답변:


74

.ssh디렉토리와 authorized_keys파일을 처음으로 만들어야합니다 .

  1. .ssh디렉토리를 작성하십시오 .

    mkdir ~/.ssh
    
  2. 올바른 권한을 설정하십시오.

    chmod 700 ~/.ssh
    
  3. authorized_keys파일을 작성 하십시오.

    touch ~/.ssh/authorized_keys
    
  4. 올바른 권한을 설정하십시오.

    chmod 600 ~/.ssh/authorized_keys
    

권한이 중요합니다! 올바른 권한이 없으면 작동하지 않습니다!

이제 파일에 공개 키 를 추가 할 수 있습니다 authorized_keys:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

당신의 공개 키를 추가 할 필요가 컴퓨터를 받는 사람 authorized_keys의 파일 SSH 키를 사용하여 액세스 당신이 원하는 컴퓨터 !


terdon이 언급 했듯이이 명령을 사용할 수도 있습니다.

ssh-copy-id user@host

그러면 id_rsa.pub( ~/.ssh디렉토리에) 원격 컴퓨터 authorized_keys파일에 저장되어 필요한 경우 올바른 권한으로 .ssh디렉토리와 authorized_keys파일을 만듭니다 .


5
어쨌든, 당신은 그것을 원하지 않고 cat그게 ssh-copy-id목적입니다.
terdon

1
와, 쿨, 내가 추가했습니다.
Louis Matthijssen

@LouisMatthijssen 원격 서버에 키를 복사했습니다. authorized_keys에 공개 키가 추가되었는지 확인하는 방법
Aman

2

원격 서버에 설치하기 위해 공개 키를 이메일로 보낸 경우 :

1) 서버에 SSH로 연결하십시오. Windows에서 PuTTY를 사용했습니다.

2) 키를 설정하십시오 :

mkdir ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys

키를 정확하게 복사하여 편집기 창의 새 줄에 붙여 넣으십시오. 한 줄을 차지하는지 확인하고 저장하십시오.

chmod 600 ~/.ssh/authorized_keys

2

평판이 충분하지 않으므로 여기에 추가하고 있습니다. Louis Matthijssen의 답변 외에도 여전히 ssh를 통해 생성 한 사용자로 로그인 할 수없는 경우

ssh username@host

/home/username/.ssh 폴더에 추가해야하는 소유자 권한 이 없기 때문일 수 있습니다 . 나는 같은 문제가 있었고 다음과 같이이 권한을 부여 할 수 있습니다.

chown -R username:username /home/username/.ssh

디렉토리를 작성하고 권한을 root 로 설정 했지만 서버에 액세스하려는 사용자 이름 이 아닌 경우 일 수 있습니다.

이것이 누군가를 돕기를 바랍니다.


0

시험

 touch $HOME/.ssh/authorized_keys

해당 사용자의 권한으로 빈 ​​파일을 만듭니다.

이 파일은 해당 사용자가있는 첫 번째 원격 호스트에 액세스 할 때 생성됩니다.


0

로 키를 만들 때 ssh-keygen파일 이름을 지정하면 실패 할 수도 있습니다 . 나는 name을 입력 했고 폴더 대신에 my-ssh-file-name키를 썼다 . 파일 이름을 비워두면 예상대로 기록됩니다 ./Users/MyUserName.ssh.ssh

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.