다음은 로컬 클라이언트에서 SSH 키를 생성하고, 서버에 등록하여 비밀번호 없이 접속할 수 있도록 설정한 전체 과정을 정리한 것입니다.
SSH키를 생성하면, 개인키와 공개키가 만들어지고, 우리는 그 공캐를 엄청나게 긴 .. 녀석을 복사해서
서버에 주입하는 방식으로 처리합니다.
✅ 1. SSH 키 생성 (로컬)
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- 기본 경로(~/.ssh/id_rsa)에 생성하거나 직접 경로 지정 가능
- .ssh/id_rsa: 개인키 (비공개)
- .ssh/id_rsa.pub: 공개키 (서버에 등록할 키)
✅ 2. 공개키 확인 및 복사 (로컬)
cat ~/.ssh/id_rsa.pub
- 출력되는 한 줄짜리 공개키 내용을 복사함
✅ 3. SSH로 서버 접속 (비밀번호 방식)
ssh ubuntu@192.168.64.2
- 비밀번호 입력을 통해 접속 (공개키를 주입하기 전이므로 현재는 비밀번호를 넣지만) 나중엔 그냥 자동으로 들어가질겁니다!
✅ 4. 서버에서 공개키 등록
mkdir -p ~/.ssh
vi ~/.ssh/authorized_keys
- 편집기(vi)에서 기존 내용 삭제 후, 복사한 공개키를 붙여넣기
- 저장 및 종료
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
- 디렉토리 및 파일 권한 설정 (필수)
✅ 5. SSH 키 기반 재접속 테스트 (로컬)
exit # 서버에서 로그아웃
ssh ubuntu@192.168.64.2 # 비밀번호 없이 접속되는지 확인
🔐 성공 시 비밀번호 없이 바로 로그인됨
🔒 이거 왜 함? (세 줄 요약)
- 비밀번호 로그인은 brute force 공격에 취약 → 비활성화 가능
- 개인키는 로컬에만 존재 → 유출 위험 줄어듦
- 공개키는 서버에만 등록 → 안전한 인증 방식
🔁 선택적으로 추가할 수 있는 보안 조치
sudo nano /etc/ssh/sshd_config
설정 변경:
PasswordAuthentication no
적용:
sudo systemctl restart ssh
→ 오직 SSH 키로만 로그인 가능하도록 설정
이 과정을 통해 SSH 접속의 보안성이 강화되었고, 비밀번호 없는 빠른 접속 환경도 구축되었겠습니다.
'Linux' 카테고리의 다른 글
LINUX #7. Bash Script (0) | 2025.04.15 |
---|---|
🐧 macOS에서 Multipass + Ubuntu 서버 만들기 & SSH 접속 정리 (0) | 2025.04.02 |
🐧 Multipass로 Ubuntu VM 설정하기 (macOS 기준) (0) | 2025.03.31 |