비밀번호없이 ssh 명령을 실행 하시겠습니까? [복제]


답변:


3

여기 에서 다음 정보를 얻었 습니다 .

비밀번호없는 SSH 로그인

당신의 목표 :

Linux 및 OpenSSH를 사용하여 작업을 자동화하려고합니다. 따라서 호스트 A / 사용자 a에서 호스트 B / 사용자로 자동 로그인해야합니다. b. 쉘 스크립트 내에서 ssh를 호출하기 때문에 비밀번호를 입력하고 싶지 않습니다. 그것을하는 방법

먼저 사용자 a로 A로 로그인하고 한 쌍의 인증 키를 생성하십시오. 암호를 입력하지 마십시오 :

a@A:~> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/a/.ssh/id_rsa): 
Created directory '/home/a/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/a/.ssh/id_rsa.
Your public key has been saved in /home/a/.ssh/id_rsa.pub.
The key fingerprint is:
3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 a@A

이제 ssh를 사용하여 B에서 사용자 b로 ~ / .ssh 디렉토리를 작성하십시오 (디렉토리가 이미 존재할 수 있음).

a@A:~> ssh b@B mkdir -p .ssh
b@B's password: 

마지막으로 b의 새 공개 키를 b @ B : .ssh / authorized_keys에 추가하고 마지막으로 b의 비밀번호를 입력하십시오.

a@A:~> cat .ssh/id_rsa.pub | ssh b@B 'cat >> .ssh/authorized_keys'
b@B's password: 

이제부터 비밀번호없이 A에서 B로 b로 B에 로그인 할 수 있습니다.

a@A:~> ssh b@B hostname
B

독자 중 한 사람의 메모 : SSH 버전에 따라 다음과 같이 변경해야 할 수도 있습니다.

  • 공개 키를 .ssh / authorized_keys2에 넣습니다.
  • .ssh의 권한을 700으로 변경
  • .ssh / authorized_keys2의 권한을 640으로 변경

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