반응형
SSH 키 쌍(비밀키 및 공개키)을 생성하여 원격 서버로 복사하면 비밀번호 없이 안전하게 로그인할 수 있습니다. ssh-keygen으로 키를 생성하고, ssh-copy-id 명령어를 사용하여 공개키를 서버에 등록하는 것이 가장 일반적인 방식입니다.
1. SSH 키 쌍 생성 (로컬 PC)
터미널(Terminal)을 열고 다음 명령어를 입력하여 SSH 키를 생성합니다.
bash
ssh-keygen -t rsa -b 4096
엔터 3번: 파일 저장 위치와 비밀번호(passphrase)를 묻는데, 암호 없이 사용하려면 모두 엔터를 눌러 넘어갑니다.
키는 ~/.ssh/id_rsa (비밀키)와 ~/.ssh/id_rsa.pub (공개키)로 저장됩니다.
<예시화면>
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa
Your public key has been saved in /home/user/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:1apONQ----------------- user@remote-serv-ip
The key's randomart image is:
+---[RSA 4096]----+
|oOO%Bo o. |
|++Oo=... . . |
|.++.o |
|.o o . o . |
| E o |
| o |
| . |
+----[SHA256]-----+
2. SSH 공개키 복사 (서버로 전송)
생성된 공개키(id_rsa.pub)를 서버의 ~/.ssh/authorized_keys 파일로 복사합니다.
bash
ssh-copy-id -i ~/.ssh/id_rsa.pub 사용자명@서버IP
서버의 비밀번호를 한 번 입력하면, 이후부터는 비밀번호 없이 접속 가능합니다.
<예시화면>
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/user/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
user@remote-serv-ip password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'user@remote-serv-ip'"
and check to make sure that only the key(s) you wanted were added.
3. (옵션) 수동으로 복사할 경우
ssh-copy-id 명령어를 사용할 수 없다면, 다음 명령어로 공개키를 서버에 수동으로 복사할 수 있습니다.
bash
cat ~/.ssh/id_rsa.pub | ssh 사용자명@서버IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
4. 접속 확인
bash
ssh 사용자명@서버IP
비밀번호 입력 없이 바로 로그인되는지 확인합니다.
반응형
'Linux' 카테고리의 다른 글
| 공유기 내부에서 외부 공인IP 확인 방법(Linux) (0) | 2026.02.07 |
|---|