TheKoguryo's 기술 블로그

Version 2019.06.03

3.3 SSH 접속을 위한 Key Pair 만들기

서버 인스턴스에 접근하기 위해 패스워드 대신 SSH Key Pair를 사용합니다. Key Pair는 개인키와 공개키로 구성되며, 개인키는 사용자가 사용자의 컴퓨터에 보관하여 공개키는 서버 인스턴스를 만들 때 등록해야 합니다.

Key Pair를 만들기 위해서는 키 생성 도구가 필요하며 없는 경우 설치 후 사용합니다.

리눅스/유닉스, Windows 10 환경에서 SSH Key Pair 만들기

  1. 터미널 또는 Powershell 실행

  2. ssh-keygen을 통해 Key Pair를 생성합니다.
    명령을 실행하면, 추가적으로 passphrase 값 입력을 요구합니다. 이것은 생성되는 개인 키 파일에 대한 암호로 설정하게 되면, 매번 ssh 접속시 추가적으로 입력을 요구하게 됩니다. 필요 없으면 값을 입력하지 않고 그냥 엔터키를 칩니다.

    $ ssh-keygen -t rsa -b 2048 -C "<comment>" -f <output_keyfile>
  3. 개인키와 공개키가 각각 <output_keyfile>, <output_keyfile>.pub 파일로 생성된 걸 확인할 수 있습니다.

윈도우즈 환경에서 SSH Key Pair 만들기

  1. 내려받아 설치한 puttygen.exe 실행

  2. 키 타입을 SSH-2 RSA로 선택하고, 비트 수를 2048로 설정
    그림

  3. [Generate] 클릭

  4. 무작위 데이터를 생성하기 위해 진행 바가 끝까지 갈 때 까지 가운데 빈 화면에서 마우스를 이리저리 움직입니다.
    그림

  5. 생성 완료
    그림

  6. Key comment: 필요하면 수정

  7. Key passphrase: 개인 키 파일에 대한 암호로 ssh 접속시 입력을 요구하게 됩니다. 필요 없으면 값을 입력하지 않고 그냥 엔터키를 칩니다.

  8. Putty 전용 형식으로 개인 키 저장
    Save private key 클릭, 프롬프트가 뜨면 passphrase 없이 키 저장하도록 Yes 선택 후 파일 저장
    이때 저장되는 개인 키는 PuTTY Private Key (PPK) 형식으로 저장되어 PuTTY 에서만 사용 가능합니다.

  9. PEM 형식으로 개인 키 저장
    SSH를 통해 Compute VM으로 접속시에는 PEM 형식 키를 일반적으로 사용됩니다.
    상단 Conversions 클릭 후 Export OpenSSH Key 선택합니다. 프롬프트가 뜨면 passphrase 없이 키 저장하도록 Yes 선택 후 파일 저장

  10. 공개 키 저장

    그림
    표시된 공개키 문자를 모두 복사하여 개인키가 저장된 위치에 파일로 저장합니다. 편의상 공개키의 이름은 개인키 이름과 같게 하고, 확장자만 .pub로 변경하여 저장합니다.
    OCI에서는 OpenSSH 형식을 지원하나, “Save public key”은 OpenSSH 형식으로 저장되지 않으므로 사용하지 않습니다.

  11. 파일 경로와 파일명을 확인 후 공개키는 Compute Instance 생성시, 개인키는 SSH로 Instance 접속시 사용합니다.



** 이 글은 개인으로서, 개인의 시간을 할애하여 작성된 글입니다. 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다. **
Last updated on 12 Dec 2018