본문 바로가기
🐧 Linux_이야기

[Linux] SSH 서버 간 접속(ssh-keygen)

by gwon_s 2026. 2. 25.

1️⃣ 접속 시도 서버(241)에서 SSH 키 생성

먼저 접속을 시도할 서버에서 통행증 역할을 할 키 쌍(Public/Private Key)을 생성합니다.

# 192.168.20.241 서버에서 실행
[root@primary ~]# ssh-keygen -t rsa
  • 실행 후 질문이 나오면 아무것도 입력하지 않고 Enter를 3번 누르면 기본 설정으로 비밀번호 없이 생성됩니다.

결과 더보기👇

더보기
 # ssh-keygen -t rsa
	Generating public/private rsa key pair.
	Enter file in which to save the key (/root/.ssh/id_rsa): 		# 생성된 키 저장 위치
	Created directory '/root/.ssh'.
	Enter passphrase (empty for no passphrase): 				# 키 비밀번호
	Enter same passphrase again: 						# 키 비밀번호 재입력
	Your identification has been saved in /root/.ssh/id_rsa.
	Your public key has been saved in /root/.ssh/id_rsa.pub.
	The key fingerprint is:
	SHA256:I0dQzaiYA4BvpGzusewACGZmzjaHEJ710rbcuK/6E+4 root@localhost.localdomain
	The key's randomart image is:
	+---[RSA 2048]----+
	|+. .  ...+       |
	|o.= o  .. o      |
	|+@ o * ..        |
	|%o+ B =.         |
	|=B . =..S        |
	|ooo  ..o .       |
	|+ o ...          |
	|.+   o.          |
	|.. .+Eo.         |
	+----[SHA256]-----+

[생성 결과 확인] /root/.ssh 디렉토리에 두 개의 파일이 생깁니다.

  • id_rsa: 개인키 (절대 외부 유출 금지)
  • id_rsa.pub: 공개키 (상대 서버에 전달할 키)
[root@primary ~]# ls -l /root/.ssh
-rw------- 1 root root 1679 Apr  3 17:08 id_rsa
-rw-r--r-- 1 root root  408 Apr  3 17:08 id_rsa.pub

 

2️⃣ 대상 서버(242)와 통신 상태 확인

키를 전달하기 전에 상대 서버(242)와 네트워크가 정상적으로 연결되어 있는지 확인합니다.

[root@primary ~]# ping 192.168.20.242

 

 

3️⃣ 공개키 전달 (대상 서버 242에 등록)

이제 241 서버의 공개키(id_rsa.pub) 내용을 복사해서 242 서버의 인증 목록에 추가해야 합니다.

 

방법 A: ssh-copy-id 명령어 사용 (가장 권장) 

[root@primary ~]# ssh-copy-id root@192.168.20.242

 

방법 B: 수동으로 등록하기

만약 명령어를 쓸 수 없는 상황이라면 수동으로 작업합니다.

  1. 241 서버의 id_rsa.pub 파일 내용을 복사합니다.
  2. 242 서버로 이동하여 아래 파일을 생성/수정합니다.
# 192.168.20.242 서버에서 실행
[root@standby ~]$ mkdir -p /root/.ssh
[root@standby ~]$ vi /root/.ssh/authorized_keys
# (241 서버의 id_res.pub 내용을 붙여넣기 후 저장)

# 보안을 위해 권한 설정 필수
[root@standby ~]$ chmod 700 /root/.ssh
[root@standby ~]$ chmod 600 /root/.ssh/authorized_keys