< 강의 커리큘럼 >
01. DevOps의기본 개념
02. AWS기반 소규모&중규모 아키텍트설계
03. AWS기반 대규모아키텍트 설계
04. 코드를통한 인프라관리(IaC)
05. 도커와 쿠버네티스를 이용한서비스 운영
06. CI/CD(지속적 통합/지속적 제공) 구현하기
07. 모니터링서비스 구축및운영
08. AWS기반보안
부록. Kuberneteson AWS EKS
오늘은 AWS에서 가장 기본적인 EC2에 접속하는 것을 배웠습니다.
AWS 프리티어계정을 만들어서 해당 강의 내용대로 그대로 따라하게 될 경우 손쉽게 EC2에 접속하는 게 가능합니다.
그러나 테스트 계정이라든지, 기존에 누군가가 기본설정을 삭제했거나 등등.. 여러이유로 강의에서 본 것 처럼 쉽게 넘어가지 않습니다.
추후에 VPC에 대한 개념을 다루는것 같지만, EC2에 접속하려면 Public 서브넷에 위치해야 가능합니다.
오늘은.. 아키텍처를 그릴 준비가 안된 상태로 글을 쓰다보니까 아키텍처 그림이 이쁘지가 않지만.. 추후에는 준비를 조금 하도록 하겠습니다.
AWS에서 기본적으로 Default VPC가 생성되어 IGW가 다 연결되어 있는걸로 알고있습니다..(아마도..?)
그래서 Default VPC를 사용할 경우에는 바로 쉽게 SSH키 (키페어)를 생성하고 그 키페어를 이용해서 생성한 EC2에 접속할 수 있도록 되어 있습니다.
https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/default-vpc.html
기본 VPC 및 기본 서브넷 - Amazon Virtual Private Cloud
기본 VPC 및 기본 서브넷 2013년 12월 4일 이후에 AWS 계정을 만든 경우에는 EC2-VPC만 지원됩니다. 이 경우 각 AWS 리전에 기본 VPC가 있습니다. 기본 VPC는 바로 사용할 수 있는 상태이므로 VPC를 직접 생
docs.aws.amazon.com
< TMI >
과거에는 Default VPC를 삭제할 경우에는 AWS에 따로 요청을 해서 Default VPC를 생성해야 했지만, 지금은 많이 업그레이드 되서 Default VPC를 사용자가 만들 수 있습니다. 일반적인 VPC만드는게 아닌 우측상단에 기본VPC생성하는 그런 메뉴가 있습니다.
Default로 생성되는 VPC나 SG 등을 관리해야할 필요가 있습니다. (Defualt는 사용하지 않도록 권고드리고있습니다.)
만약에, EC2를 만들다가 VPC를 선택하는 부분에서 넘어가지 않는 경우가 발생 할 수 있습니다.
그럴경우 Public Subnet을 만들어줘야합니다.
VPC를 만들고, IGW를 생성하고 라우팅테이블을 설정해주는 작업이 필요합니다.
네트워크 구조를 모르고 그냥 아무런 VPC를 연결해서 EC2를 생성하면, 접속이 안됩니다.
사용자는 외부인터넷을 통해 EC2에 접근하기 때문입니다.
AWS에서 SSM이라는 기능도 있어 사용하면 좋을 것 같습니다. (보안적인 측면에서)
https://musma.github.io/2019/11/29/about-aws-ssm.html
AWS SSM으로 EC2 인스턴스에 접근하기 (SSH 대체)
목차 서론 들어가기: 더 좋은 방법 대상 독자 SSM: AWS Systems Manager 원격 호스트 접속 방법 비교: SSH (기존) vs. SSM (개선) S...
musma.github.io
영상은 짧게 Key를 등록하고, 설치한 WSL 또는 mac 터미널을 이용해서
ssh -i ./[pemkey] ubuntu@[ip]
형태로 로그인을 했지만
일반적으로 putty나 xshell을 많이 사용하실 거라 생각합니다.
저는 putty를 사용하는데, putty를 사용할 경우 다운로드 받은 pem키를 ppk키로 변환해주는 작업이 필요합니다.
https://sujinisacat.tistory.com/17
3. AWS EC2서버에 putty로 접속하기
AWS EC2 서버에 접속할 수 있는 방법은 3가지로 독립 실행형 SSH 클라이언트, Session Manager, EC2 인스턴스 연결(브라우저 기반 SSH 연결) 이 있습니다. 3가지 방법 모두 추가 설치및 설정이 필요합니다.
sujinisacat.tistory.com
또는 구글에 'putty ec2 연결'과 같은 키워드로 검색을 하면 많은 글들을 확인할 수 있습니다.
AWS의 운영계정이나 테스트계정에서 AWS 키페어부분을 보면 관리가 안되는 경우가 많습니다.
EC2를 생성하는 경우에 키페어가 없으면 만들 수 있는데, 그때 필요에 의해 만들고나서 삭제를 안한다거나, 무분별하게 테스트를 위해 만들어서 EC2를 사용하고 난 이후에 키페어에서 삭제를 안해서 쌓이는 경우가 많습니다.
불필요한 키페어는 삭제하고, 키페어가 유출되지 않게 유의해야합니다.
해당 영상에서도 키페어는 비대칭키라는 설명을 하는데, 비대칭키와 대칭키에 대한 내용은 간단하게라도 알고 있어야합니다.
이 또한 검색해보면 좋은 자료가 많기 때문에 간략히
비대칭 키 : 개인키 + 공개키로 이루어져 있어 키 교환의 문제가 해결됨. 속도는 느림
대칭 키 : 키교환의 문제가 있음. 1개의 키로 암복호화를 다 할 수 있음. 속도가 빠름
IAM 사용자의 Access Key나 키페어의 키는 반드시 안전하게 보관이 되야합니다.
키 보관에대한 방법은 많지만, 효율적으로 키관리를 어떻게 해야하는지는 어려운 것 같습니다.
SG의 경우 0.0.0.0/0과 같이 모든 IP에서 오픈하는 것이 아닌 반드시 IP 및 Port에 대한 할당이 필요하며, Wellknowport를 사용하지 않도록 하는것이 좋습니다.
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/working-with-security-groups.html
보안 그룹 작업 - Amazon Elastic Compute Cloud
보안 그룹 작업 인스턴스를 시작할 때 인스턴스에 보안 그룹을 할당할 수 있습니다. 규칙을 추가하거나 제거하면 해당 보안 그룹을 할당한 모든 인스턴스에 변경 내용이 자동으로 적용됩니다.
docs.aws.amazon.com
Security group 또한 무분별하게 Default name으로 생성되어 관리가 안되는 경우가 많습니다. 주기적인 관리가 이루어지면 좋습니다.
나중에 관련해서 강의가 나올지 모르겠지만
EC2와 같이 S3, RDS 등등 AWS의 서비스는 태그를 붙일 수 있습니다.
Tag를 활용하면, 자산관리를 쉽게 할 수 있을 뿐아니라 검색에도 효율적입니다.
아래 AWS의 리소스태그지정 모범사례도 있으니까 참고하시면 좋을 것 같습니다.
https://docs.aws.amazon.com/ko_kr/general/latest/gr/aws_tagging.html
AWS 리소스에 태그 지정 - AWS 일반 참조
개인 식별 정보(PII)나 기타 기밀 정보 또는 민감한 정보를 태그에 추가하지 마십시오. 청구를 비롯한 여러 AWS 서비스에서 태그에 액세스할 수 있습니다. 태그는 개인 데이터나 민감한 데이터에
docs.aws.amazon.com
각 회사별 태그 규칙이 존재할 것입니다.
해당 자산은 어디에 포함이 되는지 기록도 할 것이고 (예를 들어 ISMS-P 점검 대상 자산 등), 테스트용인지 운영용인지, 어디 부서에서 활용하고 있는지, 특수목적이 있는지, 관리자는 누구인지, 등등
태그는 리소스 한개에 최대 50개까지 설정을 할 수 있습니다. 태그를 잘 사용하는 것도 자산관리에 도움이 될 것이라 봅니다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
수강료 100% 환급 챌린지 | 패스트캠퍼스
딱 5일간 진행되는 환급챌린지로 수강료 100% 환급받으세요! 더 늦기전에 자기계발 막차 탑승!
fastcampus.co.kr
'IT이야기 > AWS인프라 구축과 DevOps 운영' 카테고리의 다른 글
AWS 주요서비스와 네트워크 기본 - 패스트캠퍼스 챌린지 AWS 인프라 구축과 DevOps 운영 6일차 (0) | 2021.11.06 |
---|---|
MFA와 비용이슈 - 패스트캠퍼스 챌린지 AWS 인프라 구축과 DevOps 운영 5일차 (0) | 2021.11.05 |
AWS CLI 설치와 Access key와 IAM 설명 - 패스트캠퍼스 챌린지 AWS 인프라 구축과 DevOps 운영 4일차 (0) | 2021.11.04 |
DevOps 실습을 위한 환경준비 - 패스트캠퍼스 챌린지 AWS 인프라 구축과 DevOps 운영 2일차 (0) | 2021.11.02 |
DevOps 기본 개념 - 패스트캠퍼스 챌린지 AWS 인프라 구축과 DevOps 운영 1일차 (0) | 2021.11.01 |