1. Linux
ssh-keygen 명령 매뉴얼에서 "man ssh-keygen" 명령을 통해 키 생성:
명령을 통해" ssh-keygen -t rsa "
생성 후 사용자의 루트 디렉터리에 ".ssh" 폴더가 생성됩니다.
".ssh"를 입력하면 다음 파일이 생성됩니다.
이 파일은 여러 컴퓨터의 공개 키를 기록합니다.
id_rsa: 생성된 개인 키 파일 id_rsa.pub: 생성된 공개 키 파일
Know_hosts: 알려진 호스트 공개 키 목록
SSH 공개 키가 유효하려면 최소한 다음 두 가지 조건을 충족해야 합니다.
1) .ssh 디렉토리의 권한은 700이어야 합니다
2) .ssh/authorized_keys 파일의 권한은 600이어야 합니다
2. >
다음과 같은 방법이 많이 사용됩니다. 2.1 ssh- Copy-id 방법을 통해 명령: ssh-copy-id -i ~/.ssh/id_rsa.put
예:
root@192.168.91.135의 비밀번호:
이제 "ssh '192.168.91.135 '"로 머신에 로그인하고 체크인해 보세요. :
.ssh/authorized_keys
예상하지 못한 추가 키가 추가되지 않았는지 확인하세요.
[root@test .ssh]# ssh root @192.168.91.135
마지막 로그인: Mon Oct 10 01:25:49 2016 from 192.168.91.133
[root@localhost ~]#
일반적인 오류:
명령: scp - p ~/.ssh/id_rsa.pub root@
:/root/.ssh/authorized_keys
예:
root@192.168.91.135의 비밀번호:
id_rsa.pub 100% 408 0.4KB/s 00: 00[ root@test .ssh]#
[root@test .ssh]#
[root@test .ssh]#
[root@test .ssh]# ssh root@192.168
마지막 로그인: Mon Oct 10 01:27:02 2016 from 192.168.91.133
:pub_key //원격 서버에 파일 복사
$ cat ~/pub_key >> ~/. ssh/Authorized_keys // Authorized_keys 파일에 콘텐츠를 추가하되 이 명령을 실행하려면 원격 서버에 로그인하세요. 2.3.2 비밀번호 없는 작업을 위한 명령 실행
ansible
-mauthorized_key -a "user=root key='{{lookup('file','/root/. ssh/id_rsa.pub') }}'" -k
예:
[root@test sshpass-1.05]# ansible test -mauthorized_key -a "user=root key='{{ 조회 ('file','/root/.ssh/id_rsa.pub') }}'" -k
SSH 비밀번호: ----->비밀번호 입력
192.168.91.135 | 성공 >> {
"키": "ssh-rsa QG5NiqhYO8YCuiGYGsQAGwZCBlNLF3gq1/18B6FV5moE/8yTbFA4dBQahdtVP PejLlSAbb5ZoGK8AtLlcRq49IENoXB99tnFVn3gMM0aX24ido1ZF9RfRW zfYF7bVsLsrIiMPmVNe5KaGL9kZ 0svzoZ708yjWQQCEYWp0m+sODbtGPC34HMGAHjFlsC/SJffLuT/ug/hhCJUYeExHIkJF8OyvfC6DeF7ArI6zdKER7D8M0SM WQmpKUltj2nltuv3w== root@localhost .localdomain", " key_options": null,
"keyfile": "/root/.ssh/authorized_keys",
"manage_dir": true,
"path": null,
"state": "present" ,
"unique ": false,
"user": "root"
}
[root@test sshpass-1.05]#
2.4 수동 복사 및 붙여넣기 방법
복사 로컬 id_rsa.pub 파일의 내용을 원격 서버의 ~/.ssh/authorized_keys 파일에 복사