OCI CLI로 RSA key pair 생성
Oracle Cloud 서비스를 생성하는 과정에서, RSA Private Key 파일(pem 포맷)을 필요합니다. 예를 들어서 OCI에 Oracle BDC(Big Data Cloud) 서비스 인스턴스를 생성할 때, 인스턴스 생성 폼에는 RSA Private Key 파일을 등록1하는 항목을 포함됩니다.
이렇게 클라우드 서비스를 관리하는 과정에서 다양한 이유로 pem 포맷의 RSA Key pair를 생성해야 하는 경우가 발생합니다. Linux나 Mac OSX에서 pem 포맷의 RSA 파일을 생성하는 것은 어렵지 않지만, 윈도우에서 pem 포맷의 RSA 키를 만드는 것은 조금 더 복잡합니다.
Oracle Cloud Infrastructure의 관리 툴은 “oci cli“는 자체적으로 RSA key pair를 생성하는 기능을 제공합니다. pem 포맷의 RSA 파일 생성이 어려울 때, 특히 윈도우에서 RSA 파일을 생성해야 할 때, “oci cli“를 사용하면 매우 유용합니다.
이제부터 “oci cli“를 이용하여 RSA key pair를 생성하는 명령을 소개합니다.
본 문서는 “oci cli“가 설치되어 있음을 가정합니다. 아직 “oci cli“가 설치되어 있지 않다면, 다음 문서를 참조하여 “oci cli“를 먼저 설치하시기 바랍니다
oci cli를 이용하여 RSA 키 파일 생성
“oci setup keys” 명령을 이용하면 간편하게 RSA 키 파일을 생성할 수 있습니다. “oci setup keys” 명령은 RSA 키 파일을 생성하는 4개 옵션을 제공합니다.
옵션 | 의미 | 비고 |
---|---|---|
–key-name [text] | key 파일의 이름 지정, {key-name}_public.pem 파일과 {key-name}.pem 파일 생성 | 필수 옵션 |
–output-dir [path] | RSA 키 파일 생성 위치 | 필수 옵션 |
–passphrase [text] | 암호화를 위한 passphrase 설정 | 선택 옵션 |
–passphrase-file [filename] | 암호화를 위한 passphase 파일 지정 | 선택 옵션 |
다음은 oci setup keys
의 사용 예입니다. 2가지 필수 옵션을 이용하고 있습니다.
> oci setup keys --key-name test --output-dir ./
Enter a passphrase for your private key (empty for no passphrase):
Public key written to: ./test_public.pem
Private key written to: ./test.pem
Public key fingerprint: 1d:d2:7b:8a:88:6d:4d:b9:85:ba:a4:6a:42:fa:46:d0
If you haven't already uploaded your public key through the console,
follow the instructions on the page linked below in the section 'How to
upload the public key':
https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm#How2
>
위 명령은 다음과 같은 파일을 생성합니다.
> ls -al
total 16
drwxr-xr-x 4 taewan staff 128 Nov 28 16:03 .
drwxr-xr-x+ 195 taewan staff 6240 Nov 28 16:03 ..
-rw------- 1 taewan staff 1679 Nov 28 16:03 test.pem
-rw------- 1 taewan staff 451 Nov 28 16:03 test_public.pem
이 oci cli 명령은 리눅스 상에서 아래 명령과 동일하게 동작합니다.
> openssl genrsa -out ./test.pem 2048
> chmod go-rwx ./test.pem
> openssl rsa -pubout -in ./test.pem -out ./test_public.pem
관련 문서
- 인스턴스 생성에 앞서, Object Storage의 특정 Bucket에 RSA public key 등록을 선행해야 합니다. [return]