일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Props
- async
- Class
- AWS
- MongoDB
- socket io
- node
- S3
- merge
- react
- TypeScript
- 파이썬
- crud
- SAA
- NeXT
- SSA
- EC2
- git
- 튜플
- pandas
- 채팅
- dict
- 중급파이썬
- flask
- 카톡
- docker
- RDS
- Vue
- lambda
- wetube
- Today
- Total
초보 개발자
AWS EC2 mutiple user 본문
Mutiple User
다른 사람이 나의 EC에 접속하여 무언가 프로그램을 만들고 싶다고 한다. 나는 당연히 AWS Account가 하나만 존재한다.
그 프로그램을 만들고 나면 나는 그 사람이 다시는 EC2에 접속을 안했으면 좋겠다.
첫 번째 생각
이 때 나는 맨 처음 떠올린 생각은 IAM 유저를 하나 생성하여, 특정 EC2만 보여주고, 그 EC2만 접속할 수 있는 policy를 붙여줄려고 했다. 그리고 작업이 끝나면 IAM유저를 삭제. 하지만 이는 마음처럼 되지 않았다.
그 이유는 AWS에서는 EC를 숨기고 특정 EC2만 보여주는 기능은 아직 없다고 한다. 다만 태그를 통해서 특정 EC2에만 접근할 수 있도록 할 수는 있다고 하는데 내 모든 EC2의 이름, 스펙은 보여주고 싶지 않았다.
두 번째 생각
EC2안의 Linux안에 다른 유저를 하나 생성하여, ssh키를 만들고 공개키는 서버에 두고, 비밀키를 다른 사람에게 전달한 뒤, 작업이 끝나면 해당 유저를 삭제하거나, 키를 삭제해버리면 접속이 불가능할 것이다. 따라서 이 방법을 사용해보려고 한다.
실습
위의 이미지를 보면 기존에 있던 root, ec2-user와 함께 guest user라는 유저가 하나 더 생성이 되어있다.
sudo useradd guestuser
sudo passwd guestuser
~비밀 번호 설정~
sudo su guestuser # guest user아이디로 접속
ssh-keygen -t rsa -b 2048
키를 생성해주고 pass phrase는 엔터를 입력하여 빈 값이 들어가도록 해주었다.
Amazon Linux2의 AutorizedKeysFile경로는 Default값이 .ssh/authorized_keys이기 때문에, 퍼블릭 키를 만들어서 꼭 해당파일의 이름으로 만들어주자.
.ssh폴더는 700권한
autorized_keys는 600권한을 부여해줘야한다.
( 이 부분 생략하면 ec2에 ssh로 접속 시 권한 거부 뜸 )
cat .ssh/id_rsa.pub (위에서 생성한 퍼블릭 키) >> .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
이 후 Private key의 내용을 복사하여 로컬에 하나 만들고, PuTTYGEN을 사용하여 pem키에서 ppk키로 바꿔줘야 원할히 리눅스에 접속이 가능하다고 한다.
이 때 프라이빗 키를 열 수 없다는 오류가 나왔는데, 프라이빗 키를 다른 폴더에 넣어준 뒤 다시 해보니 잘 되었다.
save private key를 눌러주자. open ssh key로 export해주면 잘 접속이 된다. ( 저걸로 안하면 자꾸 ec2에 접속할 때 포멧이 맞지 않는 다고 뜸 )
이렇게 하면 새로운 유저가 ec2에 잘 접속을 할 수 있게 된다.
이 유저가 sudo 명령어를 사용하도록 하려면 wheel그룹에 넣어주면 되는데, 이 부분은 생략했다.
당연한 말이지만 22번 포트와 아이피를 개방하지 않으면 유저가 접속을 할 수 없을 것이다.
정리
중요한 부분은
유저 생성,
퍼블릭키 프라이빗 키 생성
퍼블릭 키를 authorized_keys에 입력
폴더와 키 권한 변경
프라이빗 키를 복사하여 ppk로 변경
'AWS' 카테고리의 다른 글
AWS Attach Spanned EBS Volume (0) | 2023.05.30 |
---|---|
AWS EC2 RI 계약 (0) | 2023.05.30 |
Active Directory란 (0) | 2023.05.25 |
AWS IO vs GP3 storage (0) | 2023.05.24 |
AWS RDS RI 계약 정리 (0) | 2023.05.24 |