보안 로그인을 위한 SSH 인증서 설정

LinuxBeginner
지금 연습하기

소개

이 프로젝트에서는 labex 사용자가 로컬 실험 환경에 SSH 로 로그인할 때 비밀번호를 입력할 필요가 없도록 labex 사용자를 위한 SSH 인증서를 구성하는 방법을 배우게 됩니다.

👀 미리보기

## localhost에 로그인할 때 비밀번호가 필요하지 않습니다.

## 새로운 쉘에 진입하기 위해 직접 로그인합니다.

🎯 작업

이 프로젝트에서 다음을 배우게 됩니다:

  • labex 사용자의 홈 디렉토리에 .ssh 디렉토리를 생성하는 방법
  • 새로운 SSH 키 쌍을 생성하는 방법
  • 새로 생성된 공개 키를 authorized_keys 파일에 추가하는 방법
  • SSH 인증서 구성 후 SSH 서비스를 재시작하는 방법
  • 비밀번호 없이 SSH 연결을 테스트하는 방법

🏆 성과

이 프로젝트를 완료하면 다음을 수행할 수 있습니다:

  • SSH 인증서를 사용하여 로컬 실험 환경에 안전하게 로그인
  • labex 사용자의 SSH 구성을 관리
  • 서버에 안전하게 접근하기 위해 SSH 인증서를 사용하는 것의 중요성을 이해

SSH 디렉토리 생성 및 SSH 키 쌍 생성

이 단계에서는 labex 사용자의 홈 디렉토리에 .ssh 디렉토리를 생성하고 새로운 SSH 키 쌍을 생성하는 방법을 배우게 됩니다.

  1. 터미널을 열고 labex 사용자로 로그인합니다:

    sudo su - labex
  2. .ssh 디렉토리를 생성합니다:

    mkdir -p ~/.ssh
  3. 새로운 SSH 키 쌍을 생성합니다:

    ssh-keygen -t rsa -b 4096 -C "labex@localhost"

    메시지가 표시되면 Enter 키를 눌러 기본 파일 위치를 수락하고 암호를 비워둡니다.

✨ 솔루션 확인 및 연습

공개 키를 authorized_keys 에 추가

이 단계에서는 새로 생성된 공개 키를 authorized_keys 파일에 추가하는 방법을 배우게 됩니다.

  1. 공개 키를 authorized_keys 파일에 추가합니다:

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  2. authorized_keys 파일에 대한 올바른 권한을 설정합니다:

    chmod 600 ~/.ssh/authorized_keys
  3. SSH 서비스를 재시작합니다:

    sudo service ssh restart
✨ 솔루션 확인 및 연습

SSH 연결 테스트

이 단계에서는 비밀번호 없이 SSH 연결을 테스트하는 방법을 배우게 됩니다.

  1. labex 사용자를 사용하여 로컬 실험 환경에 로그인해 봅니다:

    ssh labex@localhost

    이제 비밀번호 없이 로그인할 수 있어야 합니다.

  2. 로그인한 후, labex 사용자의 홈 디렉토리를 탐색할 수 있습니다:

    ls

    Code, Desktop, golang, 그리고 project 디렉토리를 볼 수 있습니다.

✨ 솔루션 확인 및 연습

요약

축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.