OpenLDAP 을 활용하여, LDAP 서비스를 구축하는 토이프로젝트를 진행하고 있는데요!
그러기 위해선 EC2 인스턴스가 필요하여, SSH 키 등록 부터 EC2 접속까지 정리해보려고 합니다.
1. AWS SSH 키 등록 (키페어)
- 기존에 사용하던 키페어가 존재한다면 가능
+ (SSH 개인키 권한)
- 소유자에 대한 읽기/ 쓰기 권한 외 제거가 필요하다.
- SSH 서버 접속 시 사용할 PEM 개인키는 최소 권한이 설정되어 있어야 사용 가능하다.
- SSH 키는 비대칭 키다.
- 개인키와 공개키로 이루어져있는데, SSH 접속을 하려는 주체와 접속하고자 하는 대상 (EC2 머신)에 각각 설치된다.
- EC2 머신을 생성하는 단계에서 SSH 공개키를 등록할 수 있다.
2. EC2 머신 생성
- 인스턴스 시작
Ubuntu Server 20.04 LTS (HVM), SSD Volume Type
을 생성하고, 유형은t2.micro
로 셋팅 (테스트용인 경우 프리티어 사용 가능인지 확인)
3. 그 외의 세부 셋팅
- 기본적으로 디폴트 값으로 진행
- 키페어는 생성한 키페어로 등록해줌
- 보안 그룹의 경우 해당 서버에 접근 가능한 IP 제한을 진행할 수 있는데, SSH 접속을 위해 22번 포트에 모든 IP를 허용할 수 있도록
0.0.0.0/0
로 셋팅
4. SSH 원격 서버 접속
- 인스턴스 세부정보에서
퍼블릭 IPv4 주소
를 복사 - 개인키를 이용해 SSH 접근 시에는
-i
명령어를 사용 - 권한을 최소권한으로 설정해야 접속할 수 있음 (보안적으로 중요한 키이기 때문에)
- 명령어 :
ssh -i {pemkey}.pem ubuntu@{public_IPv4_address}
관련 이슈
- Pem Key 권한 이슈
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions xxxx for './{pemKey}' are too open.
key의 권한 관련 이슈입니다.
pemKey는 보안적으로 중요한 키이기 때문에 최소한의 권한으로 설정해야 접속할 수 있습니다.
소유자 외의 사용자가 접근이 불가능하며 수정이 가능해서는 안 됩니다.
해결 방법은 키의 권한(Permission)을 chmod
명령어를 통해 400
으로 변경해 주시면 됩니다.
chmod 400 ./{pemKey}
chmod 뒤 숫자는 본인/그룹/전체
에 대한 권한을 의미합니다.
권한은 세가지로 read(4)
, write(2)
, execute(1)
가 있는데 이 숫자들 합의 조합으로 권한을 나타낼 수 있습니다.
400
: 본인은 읽기(4) 권한600
: 본인은 읽기(4), 쓰기(2) 권한744
: 본인은 읽기(4), 쓰기(2), 실행(1) 권한 / 그룹은 읽기(4) 권한/ 전체는 읽기(4) 권한