Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- jwttoken
- 파이썬
- 커스텀 헤더
- 99클럽
- 항해99
- DesignPattern
- 개발자 취업
- 빈 조회 2개 이상
- 프로그래머스
- 인프콘 2024
- Spring multimodule
- 빈 충돌
- 1주일회고
- @FeignClient
- KPT회고
- TiL
- 취업리부트코스
- 코딩테스트 준비
- jwt
- 개발자부트캠프추천
- 구글 OAuth login
- 디자인패턴
- Python
- JavaScript
- 전략패턴 #StrategyPattern #디자인패턴
- infcon 2024
- 디자인 패턴
- 프로그래머스 이중우선순위큐
- spring batch 5.0
- 단기개발자코스
Archives
- Today
- Total
m1ndy5's coding blog
Amazon Inspector, Aws Systems Manager, 암호화 본문
VPC에 관련해서 몇가지 질문이 있었다.
- 만약 Private Subnet에 Instance가 공인 ip를 가지고 인바운드 규칙도 열려있다면 통신이 가능할까?
- 공인 ip가 없는 private subnet에 있는 instance를 관리자가 어떻게 관리할까?해답
- private subnet에 있는 instance가 공인 ip를 가지고 있고 인바운드 규칙이 열려있다고 해서 통신이 가능하지 x
-> private subnet에 있는 instance는 nat gateway를 통해 외부와 통신하는데 nat gateway는 요청이 나가거나 나가는 요청에 대한 응답만 돌아올 수 있고 그냥 오는 요청은 받을 수 없기 때문.
-> 따라서 로드밸러서를 사용해서 어떤 요청이 오면 어떤 인스턴스로 보낼지 설정을 해줘야함 ex. TCP/80 요청이 오면 인스턴스 A로 ㄱㄱ - 앞선 질문의 대답을 보면 22번 포트를 열어놔도 SSH로 접근할 수 없다는 뜻이다. 관리자는 접근을 해야될텐데 그럼 어떻게??
-> 바로 bastion server을 public subnet에 만든후 관리자가 bastion server에 접근한 뒤 private server에 접근해야 한다.
-> 하지만 위 방법은 옛날 방법이고 요즘은 Session Manager을 사용한다.
-> Session Manager을 사용하려면 3가지 조건이 갖춰있어야하는데, 1) 인스턴스에 SSM agent가 설치되어 있어야한다 2) IAM role에 system manager 권한이 있어야한다. 3) 인터넷에 연결될 수 있어야 한다.(Nat gateway) 이렇게 3가지다.추가질문
- Load Balancer가 죽으면 어떡하지???
-> AWS에서 로드밸런서나 인터넷게이트웨이나 나트 게이트웨이를 관리해주기 때문에 우리가 걱정안해도 됨
-> 나트 게이트웨이같은 경우 AZ가 죽으면 죽을 수 있으므로 다른 AZ도 설정해놓는 것이 좋다.Amazon Inspector
- 인스턴스 하나하나 패치가 잘 되어있는지 혹은 os 보안 설정이 잘 되어있는지 확인하기가 힘듦
- 원하는 인스턴스를 지정하면 한번에 검사를 도와주는 서비스
- ex) SecurityScan이라는 태그 값이 true인 인스턴스들만 자동으로 검사하게 함
- 또한 어떤 부분을 검증할 건지 선택할 수 있다.
- 이렇게 위험 요소가 레벨로 표현되게 되는데 중요하다고 떴다해서 한번에 고치려고 하면 안됨
- 그러다가 실행되고 있는 서비스들에 문제가 생길 수 있음
- 문제를 파악한 뒤 이것저것 고려해보고 바꿀것!!
Aws Systems Manager
- 각 인스턴스를 검증하기 힘들듯이 각 인스턴스를 개별적으로 업데이트하기도 힘들다.
- 원하는 인스턴스를 지정하면 한번에 업데이트를 관리 가능하다.
- 이 또한 예시로 특정 태그를 달아 관리할 수 있음
- 세션 관리자 : 위에서 설명했던 bastion server 대신 세션 관리자를 통해 편하게 private instance에 접근 가능하다.
- 패치 관리자 : 패치할 인스턴스를 선택해 패치를 진행할 수 있다.
- 명령 실행 : 패치가 실행되는 것을 볼 수 있다.암호화
- plain text를 암호화 알고리즘과 키를 가지고 만든 암호문을 cipher text라고 함
대칭 암호화(Pre-Shared Key)
- 수신자와 발신자가 모두 같은 키를 사용하여 데이터를 암호화하고 복호화
- 빠르고, 신뢰할 수 있으며, 대량의 데이터에 사용됨
- 하지만 수신자에게 키를 전달하는데 어려움이 있을 수 있음
- ex. AES, IDEA, Twofish etc
비대칭 암호화(Public Key)
- 수신자는 프라이빗키(개인키), 발신자는 퍼블릭키(공개키)를 가지고 있음
- 발신자가 퍼블릭키를 가지고 암호화를 하면 오직 프라이빗키를 가지고 있는 수신자만 복호화 가능
- 대칭 암호화보다 더 복잡하기 때문에 훨씬 느림, 하지만 더 안전함
- ex. RSA, DH, ElGamal etc
하이브리드 암호화
- 대칭키와 비대칭키를 모두 사용한 암호화 기법
- 먼저 발신자와 수신자는 대칭키를 가지고 있고 발신자가 1차로 대칭키를 사용하여 암호화합니다.
- 수신자는 발신자에게 퍼블릭키를 넘기고 발신자는 이 퍼블릭키를 가지고 2차 암호화를 진행합니다.
- 수신자는 1차로 프라이빗 키를 이용해 복호화하고 2차로 대칭키를 사용해 복호화합니다.
- ex. SSL, TLS
'클라우드 with AWS > Security' 카테고리의 다른 글
ABOUT OAuth 2.0 (0) | 2023.12.14 |
---|---|
PKI(Public Key Infrastructure), ACM(AWS Certificate Manage) (0) | 2023.03.15 |
시스템 강화 보안 (0) | 2023.03.12 |
ABOUT Firewall, AAA, DMZ (0) | 2023.03.10 |
ABOUT SECURITY (0) | 2023.03.10 |