-
SSH key 사용하기개발 환경/Ubuntu 2020. 1. 13. 18:41반응형
ssh를 통해 서버에 자주 접속하는데 비밀번호로만 보안을 하기에는 보안성이 떨어진다. 그래서 많이들 사용하는 SSH key를 사용해보았다.
1. key 존재여부 확인
cd ~/.ssh ls
output:
known_hosts
아마 키가 없으면 위의 결과를 볼 수 있을 것이다.
2. private key와 public key 생성하기
public key는 서버에 두는 것이고 private key는 로컬에 가지고 있는 것이다. private key를 가지고 있는 로컬 사용자만이 서버의 응답을 받을 수 있다.
ssh-keygen -t rsa -b 4096 -C "sah0322@naver.com"
여기서 -t는 복호화 방식을 말하며 가장 많이 사용되는 rsa를 사용하였다. -b는 key를 만드는데 사용하는 비트수로 많이 쓸수록 복잡해진다. 2048이 default다. -C는 key에 주석을 달 수 있다.
output:
Generating public/private rsa key pair. Enter file in which to save the key (/Users/hanseokhyeon/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/hanseokhyeon/.ssh/id_rsa. Your public key has been saved in /Users/hanseokhyeon/.ssh/id_rsa.pub. ...
(1) Enter file in which to save the key (/Users/hanseokhyeon/.ssh/id_rsa):
key가 저장되는 장소이므로 그냥 엔터를 친다.
(2) Enter passphrase (empty for no passphrase):
key에 비밀번호를 부여할 수 있다.
(3) Enter same passphrase again:
비밀번호 확인란이다. 같은 비밀번호를 다시 치자.
3. 생성된 key 확인 및 퍼미션 설정
ls
output:
id_rsa id_rsa.pub known_hosts
key가 생성된 것을 확인할 수 있다.
key 파일들은 보안이 중요하기 때문에 퍼미션 설정을 잘 해줘야한다.
chmod 700 ~/.ssh chmod 600 ~/.ssh/id_rsa chmod 644 ~/.ssh/id_rsa.pub chmod 644 ~/.ssh/known_hosts
4. public key 서버에 공유하기
key를 만들었으면 서버에 public key를 전달해야한다. 그래야 서버의 응답을 public key에 맞게 복호화해서 로컬로 전달한다.
scp -P 1627 ~/.ssh/id_rsa.pub han@223.194.33.89:~/.ssh/id_rsa.pub
5. public key를 authorized_keys에 추가
서버에 접속한 후에
cd ~/.ssh touch authorized_keys cat id_rsa.pub >> authorized_keys
를 하면 authorized_keys에 public key가 입력된다.
6. 접속 확인
ssh -p 1234 hanseokhyeon@223.123.12.12 Enter passphrase for key '/Users/hanseokhyeon/.ssh/id_rsa':
라고 key의 비밀번호를 물어보고 입력하면 정상적으로 접속이 된다.
출처:
https://opentutorials.org/module/432/3742
https://jupiny.com/2017/07/09/ssh-login-using-key-file/반응형'개발 환경 > Ubuntu' 카테고리의 다른 글
우분투에서 하드디스크 자동 마운트하기 (0) 2020.01.21 Vim 고수가 되어보자! (0) 2020.01.16 SSH 22번 말고 다른 포트 사용하기 (0) 2020.01.13 리눅스 명령어 cd, ls, mkdir, cp, rm, mv (0) 2020.01.13 Ubuntu ssh 서버 구축하기 (0) 2020.01.12