본문 바로가기

server

SSH 자동 로그인 적용 방법 (ssh key 방식)

개요

ssh를 사용할 때 매번 패스워드 입력이 번거로울 경우 rsa 인증키를 적용하여 인증키로 인증하는 방식으로 변경할 수 있습니다.

SSH key 생성하기

아래 명령어를 실행합니다.

$ ssh-keygen -t rsa

$HOME/.ssh/ 패스에 아래 그림과 같은 파일이 생성됩니다.

파일명 설명
id_rsa private key - 절대 타인에게 노출되면 안되는 파일
id_rsa.pub public key - 접속하려는 리모트 머신(서버)의 authorized_keys 에 입력해 줘야하는 파일

SSH 서버에 public key 전송하기

아래 명령어를 실행합니다.

  • userid : 접속하려는 리모트 머신의 유저 아이디를 입력합니다.
  • ip address : 접속하려는 리모트 머신의 IP주소 혹은 도메인 이름을 입력합니다.
    $ scp $HOME/.ssh/id_rsa.pub {userid}@{ip address}:id_rsa.pub

SSH 서버의 authorized_keys에 public key 등록하기

아래 명령어를 실행합니다.

$ cat $HOME/id_rsa.pub >> $HOME/.ssh/authorized_keys

SSH 접속하기

아래 명령어를 실행합니다.

$ ssh {userid}@{ip address}

패스워드 없이 로그인 가능하다면 설정은 완료입니다.

추가 사항

보안 강화를 위해 ssh key와 관련된 디렉터리와 파일은 아래와 같이 권한 설정하는 것을 권장합니다.

chmod 700 ~./ssh
chmod 600 ~./ssh/id_rsa
chmod 644 ~./ssh/id_ras.pub
chmod 644 ~./ssh/authorized_keys
chmod 644 ~./ssh/known_hosts