본문 바로가기
IT Knowledge/기타

SSH 로그인 RSA방식(공개키-개인키)

by Seok. 2021. 7. 20.
반응형

정의 비밀번호가 아닌 RSA(공개키-개인키) 이용한 방식의 SSH 로그인

 

자동화(or 스케줄링 처리 스크립트 ) 시스템을 이용해서 서버에 SSH 접근할때는,

비밀번호 로그인방식보다, RSA(공개키-개인키) 방식으로 사용할때가 많다.

이유는 회사의 보안주기에 맞춰서 계정의 비밀번호를 주기적으로 변경해주어야 하는데,

이때마다 연관된 비밀번호를 모두 교체해주는 방법은 사용자의 실수를 야기할 있기 때문이다.

(RSA 방법을 사용하게 된다면, 공개키가 배포된 서버로는 개인키의 비밀번호만 알면 접근이 가능하다.)

 

해당 방법을 사용하기 위해서는 RSA 암호방식에 대한 이해가 필요하다.


[SSH Key 만들기]

SSH Key생성, "-t rsa" RSA 암호화 방식으로 생성

 

 

SSH 키파일 저장 경로

키파일의 저장경로를 지정한다.

그냥 엔터치면 기본경로(/$USER$/.ssh/id_rsa) 저장된다.

 

개인키 비밀번호 입력

Passphrase(비밀번호) 입력한다. 개인키의 비밀번호로 관리자만 알고 있어야 하는 비밀번호이다.

2 입력(비밀번호 확인까지)

 

SSH Key 생성 확인

파일 저장경로에서 확인해본다.

Id_rsa : 개인키(타인에게 노출되면 안됨)

Id_rsa.pub : 공개키(외부로 배포할 )

 


[SSH 공개키 등록하기]

이제 접속하고자 하는 대상서버에 공개키를 배포해야 한다.

나의 공개키를 대상서버의 authorized_keys 등록한다.

공개키 배포방법

  1. scp 배포
  2. ssh-copy-id 배포(권장)

 

SCP배포

$ scp ~/.ssh/id_rsa.pub [user]@[host]:~/.ssh/authorized_keys

해당 방법은 만약 대상서버에 다른 공개키도 등록되어 있다면 덮어쓰게 되므로, 주의해야 한다.

 

SSH-COPY-ID 배포

$ ssh-copy-id -i ~/.ssh/id_rsa.pub [user]@[Remote_Host]

대상서버에 공개키가 배포되었는지 확인.

Path : [userhome]/.ssh/authorized_key

확인 완료.

 

실제로 SSH 접근시도.

User 비밀번호를 물어보는것이 아닌, 개인키(id_rsa) 비밀번호를 물어본다.

그렇다면 성공적으로 적용된것이다.


※ 오류 발생시, 파일 권한 확인

참고 : https://opentutorials.org/module/432/3742

반응형

댓글