유저_pem_생성

1. 신규 사용자 생성 및 기본 설정

먼저 서버에 접속할 새로운 계정을 생성합니다.

# 1. 'newuser' 계정 생성 (원하는 이름으로 변경 가능)
sudo adduser newuser

# 2. (선택 사항) 관리자(sudo) 권한 부여
sudo usermod -aG sudo newuser

2. SSH 키 쌍(PEM) 생성 및 등록

비밀번호 대신 안전한 접속을 위해 PEM 형식의 키 쌍을 생성합니다.

서버에서 키 생성

# PEM 형식의 4096비트 RSA 키 생성
ssh-keygen -t rsa -b 4096 -m PEM -f newuser_key.pem
  • newuser_key.pem: 사용자에게 전달할 개인키
  • newuser_key.pem.pub: 서버에 등록할 공용키

서버에 공용키 등록

# 1. 신규 사용자의 .ssh 디렉토리 생성
sudo mkdir -p /home/newuser/.ssh

# 2. 생성한 공용키 내용을 authorized_keys에 기록
sudo sh -c "cat newuser_key.pem.pub >> /home/newuser/.ssh/authorized_keys"

# 3. 보안을 위한 권한 및 소유권 설정
sudo chown -R newuser:newuser /home/newuser/.ssh
sudo chmod 700 /home/newuser/.ssh
sudo chmod 600 /home/newuser/.ssh/authorized_keys

3. 파일 관리 및 이동 (mv)

파일 위치를 옮기거나 이름을 변경할 때 사용합니다.

  • 파일 이동: mv [원본] [대상_경로]
  • 이름 변경: mv [이전_이름] [새_이름]
  • 권한 필요 시: 시스템 경로로 이동할 때는 앞에 sudo를 붙입니다.

4. PEM 키 다운로드 및 권한 문제 해결

서버에서 생성한 PEM 키가 권한 문제로 다운로드되지 않을 때 조치 방법입니다.

파일 소유권 변경 (다운로드 가능하도록)

# 파일 소유권을 현재 접속 중인 계정(예: ubuntu)으로 변경
sudo chown ubuntu:ubuntu newuser_key.pem
chmod 600 newuser_key.pem

로컬 PC에서 다운로드 (SCP 활용)

로컬 터미널에서 다음 명령어를 실행합니다.

scp -i "기존_접속_키.pem" ubuntu@서버_IP:/home/ubuntu/newuser_key.pem ./

로컬에서 키 파일 권한 설정 (필수)

# 로컬로 가져온 PEM 키의 권한을 400으로 설정해야 접속 가능
chmod 400 newuser_key.pem

5. GitHub Personal Access Token (PAT) 발급

GitHub 작업 시 비밀번호를 대신하여 사용합니다.

  1. 경로: GitHub Settings → Developer settings → Personal access tokens
  2. Fine-grained tokens (권장): 특정 저장소에만 세밀한 권한 부여 가능
  3. Tokens (classic): 포괄적인 권한 부여 시 사용
  4. 사용법: 터미널에서 Password 입력 요청 시 발급받은 토큰값을 붙여넣기

6. 요약 체크리스트

단계 핵심 명령어 / 작업 비고
사용자 생성 adduser 비밀번호 설정 포함
키 생성 ssh-keygen -m PEM PEM 형식 필수
서버 등록 authorized_keys 작성 .ssh 폴더 권한 700 필수
권한 조정 chown, chmod 소유권 불일치 시 SCP 실패
로컬 접속 ssh -i key.pem user@ip 로컬 키 권한 400 필수