최대 1 분 소요

SSH(Secure Shell)는 리눅스 서버 관리에 필수적인 원격 접속 방법입니다. 비밀번호 대신 공개키 기반 인증을 사용하면 보안성이 크게 향상됩니다. 이번 글에서는 SSH 키 기반 인증을 설정하는 방법을 소개합니다.

1. SSH 키 생성

로컬 PC(클라이언트)에서 아래 명령어로 SSH 키를 생성합니다.

ssh-keygen -t ed25519 -C "[email protected]"

명령어 실행 후, ~/.ssh/id_ed25519(개인키)와 ~/.ssh/id_ed25519.pub(공개키) 파일이 생성됩니다.

2. 공개키를 서버에 등록

생성된 공개키를 서버의 사용자 계정에 등록합니다.

ssh-copy-id -i ~/.ssh/id_ed25519.pub username@server_ip

또는 직접 복사해서 서버의 ~/.ssh/authorized_keys 파일에 추가할 수도 있습니다.

3. SSH 설정 파일 수정(선택)

서버의 /etc/ssh/sshd_config 파일에서 아래 옵션을 확인하거나 추가합니다.

PubkeyAuthentication yes
PasswordAuthentication no

설정 변경 후 SSH 서비스를 재시작합니다.

sudo systemctl restart sshd

4. 접속 테스트

이제 비밀번호 없이 SSH 키로 서버에 접속할 수 있습니다.

ssh username@server_ip

5. 보안 팁

  • 반드시 강력한 패스프레이즈를 설정하세요.
  • 불필요한 계정의 SSH 접근을 제한하세요.
  • 방화벽 설정으로 SSH 포트 접근을 제한하세요.

SSH 키 기반 인증을 통해 리눅스 서버의 보안을 한 단계

댓글남기기