2011-08-09 3 views

답변

47

당신은 ssh-copy-id을 찾고 있습니다. 이 명령은 모두 .ssh.ssh/authorized_keys을 만들고 존재하지 않는 권한을 적절히 설정합니다. 그런 다음 .ssh/authorized_keys 끝에 공개 키를 추가합니다.

+12

좋습니다. 단지'ssh-copy-id root @ server'를 실행하십시오. –

0

가 선택한 대답은 정확하지만 여기 Keygen은 + 사본을 결합하고자하는 사람을위한 간단한 bash는 스크립트입니다 https://gist.github.com/wilcollins/bc420581da87962b8b47

이 파일은 클라이언트 시스템에 SSH 키를 생성을 해당 파일 권한, 사본을 적용 ~/.ssh 디렉토리에 & 지정된 서버로 복사하십시오.

+0

당신 만의 물건에 연결하는 것은 [좋은 대답이 아닙니다] (// stackoverflow.com/help/promotion)입니다. 오프 사이트 리소스를 포함하는 좋은 대답은 답안의 관련 정보를 포함하며 다음을 참조하십시오. 당신이 말하는이 점은 무엇입니까? 어디서 설치합니까? 어떻게 설치합니까? 이 문제를 해결하기 위해 ** 정확한 문제를 해결하려면 ** 어떻게해야합니까? 당신은 어떤 식 으로든, 모양을 형성하거나,이 물건과 관련이 있습니까? 참고 : [커뮤니티 친화적 인 방식으로 외부 리소스에 연결하려면 어떻게합니까?] (// meta.stackexchange.com/questions/94022) – Mogsdad

+0

"이 파일은 클라이언트 컴퓨터에 SSH 키를 생성하고 적절한 파일 사용 권한을 적용합니다 ~/.ssh 디렉토리에 복사하고 지정된 서버에 복사합니다. " & 사용법은 제공된 리소스의 주석에 포함됩니다.이것은 질문이 묻는 것처럼 공개 키를 원격 호스트에 전송하는 것입니다. 앞서 키를 생성하는 것과 함께 – wilco

8

이 명령을 찾고 될 수 있습니다

cat ~/.ssh/id_rsa.pub | ssh [email protected] 'cat >> .ssh/authorized_keys' 

이 키 허가 된 서버에 공개 키를 추가합니다. 서버가 이미 not accept password-based login로 설정되어있는 경우

Source

+0

모든 시스템 (내가 당신을보고있는 OS X)이이 대답보다 더 이식성이 뛰어납니다. 'ssh-copy-id'. 개인적으로, 나는'cat ~/.ssh/id_rsa.pub | ssh user @ hostname 'tee -a .ssh/authorized_keys''하지만 개인적인 취향 일뿐입니다. –

+1

ssh-copy-id가 MacOS Sierra의 일부인 것처럼 보입니다. – Graham

1

, 당신은 Permission denied (publickey) 오류가 있습니다.

이것은 netcat을 사용하여 키를 보내는 또 다른 방법으로, 인증 할 필요가 없습니다. 로컬 네트워크에서만 작동하지만 포트 포워딩을 사용하면 인터넷을 통해이 작업을 수행 할 수 있습니다. 서버에서

:

클라이언트에
$ nc -l 55555 >> ~/.ssh/authorized_keys 

(서버의 호스트 이름 또는 IP와 HOSTNAME 교체) : 당신은 당신의 선택의 열린 포트와 55555을 대체 할 수

$ nc HOSTNAME 55555 < ~/.ssh/id_rsa.pub 

.

소스 : 총 초보자를위한 chat over lan from linux to linux?


부록 : 나는 사람이 아직이 언급 생각하지 않지만, 당신이 ERROR: failed to open ID file '/home/username/.pub': No such file을받을 경우, 먼저 키를 생성해야합니다. 우분투 도움말 페이지는 Generating RSA Keys에 대한 훌륭한 가이드가 있습니다.