Linux

우분투(리눅스)에서 ssh키 발급 받기

yg1ee 2025. 2. 13. 10:15

발급 방법은 굉장히 쉽다.

터미널에서, ssy-keygen을 입력&엔터 후, 엔터를 3번 더 하면 완료된다.

이렇게 하면 ~/.ssh 폴더에 비밀키인 id_rsa와, 공개키인 id_rsa.pub 파일이 생성된다.

이름에서 알 수 있듯이, 비밀키는 유출되어선 안 되고, 공개키는 어디에 공개되든 무관하다.

 

간단하게 사용하려면 여기서 멈추고, id_rsa 페어를 사용하면 된다.

 

더 깊게 알아보고 싶다면, 위에서 엔터 3번 눌러서 건너뛰었던 설정들에 대해서 알아보겠다.

 

1. Enter file in which to save the key (/home/balatro/.ssh/id_rsa):

비밀키와 공개키의 파일명을 지정하는 부분이다. 지정하지 않으면 기본적으로 id_rsa라는 이름으로 생성되지만, 이미 id_rsa 페어가 존재하거나, 구분을 위해 다른 이름을 쓰고 싶을 때 문자열을 입력하면 된다.

id_rsa가 이미 존재해서, 덮어씌울지 묻는 프롬프트가 나온다.
joker라는 이름의 키 페어를 생성한 모습.

 

2. Enter passphrase (empty for no passphrase):

passphrase, 즉 암호를 설정하는 부분이다. 위에서 비밀키는 유출되면 안 된다고 했지만, 혹시나 공개된 장소에서도 이 키를 사용해야 할 수도 있다. 그럴 때는 키 페어에 암호를 설정하여, 관계자 외의 사용을 막을 수 있다.

참고로, 입력하는 문자열은 터미널에 노출이 안 되고 커서도 그대로 머무르기 때문에, 설정할 문자열을 미리 복사해와서 붙여넣는 것을 추천한다.

하지만 직접 입력해야 한다면 쓸 수 있는 작은 팁이 있다. 이렇게 문자열이 노출되지 않는 곳에서는 오타가 났는지, 제대로 백스페이스키를 눌러서 지운 게 맞는지를 확인하기가 어렵기 때문에, 전체를 지워버리는 것이 편리하다. 그리고, 리눅스에서 맨 처음부터 현재 커서 전까지의 문자열을 전부 지우는 단축키는 Ctrl + U 이다.

helloworld12345라는 문자열에서, 1에 커서가 위치한 상태로 Ctrl + U를 누르면 아래와 같이 helloworld 문자열이 삭제된다.

 

 

3. Enter same passphrase again:

위에서 입력한 문자열을 그대로 입력하면 된다.

근데 설정한 암호가 너무 짧다면 (5자 미만), 아래와 같이 키 페어 생성에 실패하고 끝난다.

passphrase는 최소 5자는 입력하라고 한다.

 

혹시 GitHub이나 ssh 원격지에 ssh 키를 등록하라는 문구가 보이면, (키 이름).pub 파일을 첨부하거나, cat (키 이름).pub 을 한 후 출력되는 내용을 붙여넣으면 된다.

.pub이 붙지 않은 파일의 내용물에는 대놓고 "PRIVATE KEY"라는 문자열이 있으니 외부에 노출하지 않도록 하자.