password 대신 .pem 파일로 서버 접속하기

NewNewDaddy·2023년 11월 20일
0

코딩 메모장

목록 보기
4/7

0. INTRO

  • 클라우드에서 리눅스 서버를 생성하고 최초에 ID + PW 조합으로 접속을 하였다면 VSCODE와 같은 IDE에서 Remote-SSH로 접속을 하고자 할 때는 매 번 비밀번호를 입력해야하는 번거로움이 있다.
  • Remote-SSH의 configrue 파일에 작성할 수 있는 인자들은 아래와 같이 다섯가지로, password는 따로 적는 란이 없다.
    Host node-vm
        HostName <vm address>
        User sana
        Port 5522
        IdentityFile ~/.ssh/id_node_vm
  • 서버에서 .pem 파일을 생성하여 해당 인자로 넘겨주면 매 번 비밀번호를 쓸 필요 없이 바로 접속이 되어 편리하다.

1. 본문

1. pem 파일 생성

cd ~/.ssh

mkdir pem

cd pem

ssh-keygen -t rsa -b 2048 -f [pem 파일이름]

2. authorized_keys로 지정

cat [pem 파일이름].pub >> ~/.ssh/authorized_keys

3. sshd_config 구성 변경 후 재시작

  • sshd_config 파일을 수정한다.

    sudo nano /etc/ssh/sshd_config

  • sshd_config 파일에서 59번째 줄에 있는 PasswordAuthentication 항목을 기본 yes에서 no로 바꿔준다.

  • ssh 서비스를 재시작 해준다.

    sudo service ssh restart

4. pem파일 다운로드

  • ~/.ssh/pem 파일 아래에 .pub가 없는 파일을 보면 아래와 같은 내용이 들어있다.

    — — -BEGIN RSA PRIVATE KEY — — -
    
    ……
    
    — — -END RSA PRIVATE KEY — — -
  • 해당 파일 .pem 파일 형태로 다운로드 후 VSCODE의 Remote-SSH configure 파일 IdentityFile 인자에 경로를 명시해준다.

5. 비밀번호 입력 없이 바로 서버 접속 확인!

profile
데이터 엔지니어의 작업공간 / #PYTHON #CLOUD #SPARK #AWS #GCP #NCLOUD

0개의 댓글