- 시스템 보안

1. 소프트웨어 업데이트 설치하기 : 취약점 해결 버전 릴리즈

2. aws 계정에 접근 제한하기 : 모든 EC2를 쉽게 종료할 수 있다! ㄷㄷ

3. EC2 인스턴스를 드나드는 네트워크 트래픽 제어하기 : 필요한 포트만 열고 다 닫기

4. AWS에 사설 네트워크 생성하기 : 서브넷 만들어서 접근 제한하기


6.1 보안에 대한 책임은 누구에게 있는가?

- AWS는 책임 공유 환경 = AWS와 사용자가 책임을 공유

- AWS의 책임 : 

. 디도스 공격 방지 등 강력한 인터넷 접근 감시

. 민감한 영역에 접근했던 직원에 대한 뒷조사 ㄷㄷ

. 수명 다한 스토리지 물리적  파기

. 데이터센터의 물리적, 환경적 보안 보장 (화재 등)

- 사용자의 책임 :

. 네트워크 트래픽 암호화하기(HTTPS)

. 보안그룹과 ACL로 제어하는 가상 사설 네트워크(VPN) 구성

. 소프트웨어 패치 관리

. IAM으로 접근 관리


6.2 소프트웨어를 최신으로 유지하기

- 재빠른 업데이트가 중요허다

6.2.1 보안 업데이트 확인하기

1. ssh로 ec2 인스턴스에 로그인해서 오늘의 메시지 보기 -> 보안 업데이트가 몇개 있는지 알랴줌

$ ssh ec2-user@ec2-52-6-25-163.compute-1.amazonaws.com

2. yum 패키지로 확인하기

$ yum --security check-update

6.2.2 서버 시작시 보안업데이트 설치하기

- 세가지 방법

1. 서버 시작시 모든 업데이트 설치

2. 서버 시작시 보안 업데이트만 설치

3. 명시적 패키지 버전 정의 (권고)

6.2.3 실행 중인 서버에 보안 업데이트 설치하기

- 서버에 일일이 보안 업데이트 명령어 실행할 수 있지만 넘 많다면 -> 스트립트 사용하긔 (chapter6/update.sh에 있다고함)


6.3 AWS 계정 보안

- AWS 계정은 모든 AWS 자원을 포함하고 기본적으로 루트 사용자와 함께 제공된다.

- 공격자가 aws 계정에 접근하려면 사용자의 계정으로 인증할 수 있어야 한다

1. 루트 사용자 및 일반 사용자 사용하기 : 비밀번호나 접근키 필요

2. EC2 인스턴스와 같은 AWS 자원으로 인증 : EC2인스턴스에서 API나 CLI 요청을 보내야함

- 다단계 인증(MFA : Multifactor authentication)으로 루트 사용자 보호 -> 루트 사용자 사용 중지 -> 일상 업무용 새 사용자 생성 -> 최소 권한 부여

6.3.1 AWS 계정의 루트 사용자 보안

- MFA 활성화 !! 우리가 했던 구글 otp 앱으로 한번 더 인증하는거!!ㅎㅎ MFA 토큰이 같이 있어야 로그인 되쥐

6.3.2 인증 및 접근 관리 서비스

- 인증 및 접근 관리 (IAM : Identity and access management) 서비스는 AWS API를 사용하기 위한 인증과 권한 부여에 필요한 모든걸 제공 = 누가 무엇을 할 수 있는지 제어

- IAM에서 인증은 사용자(user)나 역할(role)을 활용하고, 권한부여는 정책(policy)에 의해 수행

- IAM 사용자와 IAM 역할은 권한을 부여하기 위해 정책을 사용한다.

6.3.3 권한 부여 정책

- 정책은 JSON으로 정의

- "Effect" : "Deny" or "Allow"

- "Action" : ["ec2:*"] : 모든 ec2 작업

- "Resource" : ["*"] : ARN(아마존 자원이름) 적는 곳




'개발' 카테고리의 다른 글

0713 kernel  (1) 2019.07.13
컴파일러  (0) 2019.01.08
[AWS] 스케일업, 스케일다운: 오토스케일링과 클라우드와치  (0) 2018.10.13
AWS dynamodb  (0) 2018.09.04
aws 네트워크  (0) 2018.08.05

+ Recent posts