$ ssh-keygen
usage: ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa | rsa1]
[-N new_passphrase] [-C comment] [-f output_keyfile]
ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
ssh-keygen -i [-m key_format] [-f input_keyfile]
ssh-keygen -e [-m key_format] [-f input_keyfile]
ssh-keygen -y [-f input_keyfile]
ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile]
ssh-keygen -l [-v] [-E fingerprint_hash] [-f input_keyfile]
ssh-keygen -B [-f input_keyfile]
ssh-keygen -D pkcs11
ssh-keygen -F hostname [-f known_hosts_file] [-l]
ssh-keygen -H [-f known_hosts_file]
ssh-keygen -R hostname [-f known_hosts_file]
ssh-keygen -r hostname [-f input_keyfile] [-g]
ssh-keygen -G output_file [-v] [-b bits] [-M memory] [-S start_point]
ssh-keygen -T output_file -f input_file [-v] [-a rounds] [-J num_lines]
[-j start_line] [-K checkpt] [-W generator]
ssh-keygen -s ca_key -I certificate_identity [-h] [-n principals]
[-O option] [-V validity_interval] [-z serial_number] file ...
ssh-keygen -L [-f input_keyfile]
ssh-keygen -A
ssh-keygen -k -f krl_file [-u] [-s ca_public] [-z version_number]
file ...
ssh-keygen -Q -f krl_file file ...
~/.ssh$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home1/irteam/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home1/irteam/.ssh/id_rsa.
Your public key has been saved in /home1/irteam/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:{xxxxxxxxxxxxxxxxxxx/XXXXXXXXXXXXXXXXXXXXXXX} {user}@{hostname}
The key's randomart image is:
+---[RSA 2048]----+
| .. |
| o o .o |
| o * * .o |
|. = * B = . |
|= . * *.So . . |
|o+ . + += E o . |
| = o +. . o . |
| o Xo . |
| +o=o |
+----[SHA256]-----+
~/.ssh$ ll
A호스트(client)에서 B호스트(server)로 ssh 명령을 이용해서 접속하거나 명령을 수행해야 하는 경우가 많이 있습니다. 이 때 아래와 같이 접근 권한이 없다는 오류가 발생 할 때가 있는데요. 간단히 해결할 수 있습니다.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
기본 컨셉은 클라이언트A 의 key정보를 접속하려는 서버B쪽에 알려줘서 미리 등록을 해두면
클라이언트A에서 서버B로 접속할 때 이미 등록된 key가 있으니 접속을 허용해주는 것입니다.
등록을 위한 이 키를 만들어내는 것이 필요한데 이 때 필요한 명령어는 ssh-keygen 입니다. 아래 단계별로 보기 쉽게 정리 했습니다.
1. clientA ~/.ssh 에서 아래 명령어 수행합니다. (공개키 생성)
ssh-keygen -t rsa
Enter file in which to save the key (/home1/irteam/.ssh/id_rsa): [엔터]
Enter passphrase (empty for no passphrase): [엔터]
Enter same passphrase again: [엔터]
2. id_rsa(개인키), id_rsa.pub(공개키) 생성 확인합니다.
3. id_rsa.pub(공개키) 내용을 복사하여
4. serverB호스트의 ~/.ssh에서 authorized_keys 파일에 위 공개키 내용 추가 해줍니다.
반응형
'정보 > 프로그래밍' 카테고리의 다른 글
스칼라 scala HttpRequest (1) | 2021.05.14 |
---|---|
git 로컬파일 유지한 상태로 리모트 저장소 파일만 지우기 git rm --cached (0) | 2021.04.15 |
리눅스 쉘 스크립트 시간 유효성 체크 / 시간 계산하기 / bash validate timestamp/ convert timestamp to date (0) | 2021.04.09 |
How to decompile java class file from jar file feat. unzip, javap / unzip 으로 jar파일 압축 푼 class파일 javap 디컴파일링 통해 java파일 확인하기 (0) | 2021.04.09 |
리눅스에서 하이픈(-)으로 시작하는 파일 지우는법 (0) | 2021.04.08 |