230202_IT인프라, Cloud
1. Security Infrastructure
가. VPN(Virtual Private Network)
나. 심층 방어(Defense in Depth)
○ 보안의 기본은 다양하게 방어를 해야 하는 것이다.
다. Firewall
○ 네트워크 간의 트래픽에 대하여 차단 및 지연하는 방화벽 장비를 말한다.
○ 외부에서 사내 내부로 들어오는 패킷을 차단하는 것
- 송수신 네트워크, 송수신 주소, 포트 번호로 접속차단
ip 대역은 송수신 차단가능
포트는 목적지만 차단 가능
편의성과 보안을 적절히 섞어서 사용하는게 중요!
라. Proxy Server
○ 내부에서 인터넷으로 나갈 때 프록시 서버가 내신 나감
- NAT와 공통점
-> 둘다 IP를 변환하여 출발지 ip를 알 수 없음
- NAT와 다른점
-> proxy: L7에서 동작(HTTP,FTP) / 출발지,목적지 사이의 중개지 역할 / 사내망의 DMZ에 존재 / 캐싱, 인증 o
-> NAT: L3,4에서 동작(IP 패킷 수정) / 사설,공인 ip 전환 역할 / Router, Firewall에서 동작 / 캐싱, 인증 X
※NAT로 L3에서 사설 ip를 공인 ip로 변환하고 공인 ip자체를 노출하지 않기 위해 프록시, LB등을 통해 숨김
○ Proxy Server는 7계층에서 사용가능
○ 이용하는 이유
- 내부 IP 주소를 숨김 / 빠르게 인터넷 접속 / 특정 웹사이트 접속 차단
마. Reverse Proxy Server
○ 외부에서 내부(HTTP Web)로 접속할 때 대신 연결해주는 서버
○ 내부에 여러
○ Azure에서 Application Gateway로 사용됨
※ 포트 포워딩 약점
-> 같은 서버가 여러대 있으면 한대밖에 설정이 안됨 ex) 80,8080,8888이런 형식으로 서버당 포트 1개만 가능
바. Load Balancer
- 보안적인 측면의 로드밸런서
-> 사내 서버를 숨길 수 있다는 점
ex) AWS ALB를 사용했을 경우 연결된 EC2의 ip를 노출시키는 것이 아닌 CNAME 혹은 고정 ip의 값을 연결하기 때문
- 포트포워딩을 통해 포트번호에 따라 분산해주는 설정
사. GSLB
○ DNS Server 기능을 이용하는 것으로 클라이언트에 가까이에 있는 서버로 연결시켜줌
-> 인접한 서버로 연결해주기에 빠른 접속을 제공한다.
- Azure 에는 FrontDoor / AWS Router53
아. CDN(Content Delivery Network)
○ 데이터를 효율적으로 전송하기 위한 기술
- AWS CloudFront / Azure Front Door
자. VPN Server
○ 터널을 통해 서버끼리 논리적인 연결을 함
○ 보안을 보장함
2. Storage Infrastucture
○ 클러스터링 -> 고가용성을 위한 분할 / 하나가 죽어도 계속 이용가능하도록 하기 위해
-> 묶을 때 동일한 서비스를 묶음 / 서비스가 다르면 묶지 못함
-> EKS targetgroup ec2 설정을 하나만 할 수밖에 없는 이유 / 뒤에 스토리지는 공유해서 사용
○ storage run하기 전에는 늘 boot를 함(boot를 위해서는 RAID 필수)
○ 파티션 후 포맷을 진행
나. windows disk file system
○ FAT
1) 크기
- FAT(4GB)
- FAT32(64GB)
- exFAT(64GB)
2) 보안
○ NTFS
1) 크기
8페타바이트까지 확장 가능
2) 보안
- 암호화 / ACLs를 사용한 파일, 폴더 권한
○ REFS
1) 크기
35페타바이트까지 확장 가능
2) 보안
- 암호화 미지원 / ACLs를 사용한 파일, 폴더 권한
- 가상머신, 가상화를 할 때 적합한 파일 시스템임
다. RAID(Redundant Array of Independent Disks)
○ 디스크를 이중화한 것 / 디스크의 물리적 손상 시에도 계속 저장하고 운영하기 위해 필요
1) RAID0
- 읽기/쓰기 성능이 좋다. 번갈아서 저장 / 데이터 이중화는 안됨 / fault tolerance는 안됨
2) RAID1
- 디스크 미러링 / 최소 2개의 디스크 필요 / 데이터를 이중으로 저장 읽을 때는 하나만
- 읽기 성능은 좋고 쓰기 성능은 하나의 디스크를 쓰는 것과 동일 / OS를 주로 사용
3) RAID5
- Stripe with parity로 저장, 최소 3개 이상의 Disk가 필요 / 성능을 좋게 하려면 5개 이상 필요
- 1개의 disk가 고장나도 계속 저장하고 서비스 가능 / 디스크 성능은 부족하다
4) RAID6
- Double Parity를 사용 / 최소 4개 이상의 디스크 필요 / RAID5에 비해 읽기 성능이 낮음
5) RAID10
- RAID1과 RAID0을 합친 것 / RAId1보다 성능은 좋지만 상대적으로 비용이 많이 듬
- 미러링 지원, 미러링은 스트라이프가 된다. / RAID1을 RAID0식으로 사용
라. Cloud Storage
인터넷에서 무료/유료로 이용할 수 있는 Storage 서비스
○ 보안유지 / 중소규모의 비용효율성 / 운영성능이 향상
3. Identity Infrastructure
※ logon/login -> 옛날 성안/성벽안으로 들어가기 위해 통나무(log)를 통해 들어가는 것에서 유래
-> 자원을 활용하기 위해서는 신원이 확인되어야하는데 신원확인을 위해 로그인
○ 인증 서비스의 필요성
- 다른 컴퓨터에 접속하여 자원을 이용하기 위해서는 로그온을 해야함
- 로그온하기 전에 먼저 사용자 계정을 만들어야한다
- Logon = Authentication(인증) + Autorization(권한)
- Authentication(인증) = Credential + 부가 정보(접속 시간, 접속 컴퓨터 등)
- Authorization(권한) = User Right(로컬로 로그온 권한) + Permisson(자원)
- 대표적인 온프레미스 인증서비스는 Active Directory
- Cloud 인증 서비스는 Azure Active Diretory, Google, Facebook
가. Active Diretory 주요기능
○ 중앙인증 / 3rd Party 지원
- Single-Sign-on(SSO) 도메인 계정으로 인증하면 다른 곳에 접속해도 중앙인증을 통해 인증을 해줌(도메인별로 인증할 필요가 없다는 말씀)
○ 그룹 정책을 통한 컴퓨터 관리
※ 리눅스와 윈도우
- 윈도우는 그룹정책을 통해 중앙에서 사용자를 관리할 수 있음(AWS Organization이랑 비슷한듯?)
- 리눅스는 1:1 개별로 들어가서 관리해줘야함
○ 인터넷에서 사용하는 SNS계정 로그인을 사내에서 적용되는 것이 Active Directory
나. Windows 2가지 인증 서비스
※ mstsc: 윈도우 원격 데스크톱
※ 서버 재시작을 한다는 것은 커널단을 건드는것
○ SAM(NTLM인증)
○ Active Diretory(kerberos인증)
다. Azure Active Directory
- 암호는 로컬에 인증은 AD를 통해서 접속
○ 클라우드 서비스의 인증에 사용
○ 사내 Active Diretory 내용을 Azure Active Diretory와 동기화가 가능함
○ Azure portal을 직원들이 이용하려면 Azure Active Diretory에 계정 생성을 해야함
- 관리자와 사용계정을 별도로 만든다. (AWS root, IAM 사용자 분리처럼)
4. Name Resoultion Service
가. Name Resolution Service의 필요성
○ 대표적인 NSS
- hosts파일(로컬 컴퓨터가 가지고 있는 것)
- DNS Server (전세계로 연결된 계층적 구조)
나. DNS 포워딩
- 여러개의 DNS를 DNS로 묶어서 쿼리를 하는 것(삼성 계열사 도메인요청을 본사로 요청되게 해서 본사를 통해 DNS 쿼리가 되도록)
※ Redirection
- 방향이 없으면 방향을 지시해주는 것
※ Forwarding
- 오면 다른 곳으로 보내는 것
※ Proxy
- 없으면 다른 곳으로 보내거나 다른 곳에서 받아와서 주는 것(포워드보다 지능적임)
셋 다 직접 해결하는 것이 아닌 다른 곳에서 해결하지만 방법이 다르다!
5. Cloud Computer Model
가. IaaS
- Infeastructure만 제공(하드웨어와 OS등을 설정하여 대여)
- Amazon EC2, Azure Virtual Machines 등
나. PaaS
- Platform만 제공하는 것
- Amazon RDS, EFS 등
다. SaaS
- 소프트웨어까지 제공
- Microsoft365, Dropbox등
라. CaaS
- Container 운영 및 서비스를 제공하는 것
- Amazon ECS, Azure Container Instance 등
마. DaaS
- Desktop 서비스
- Amazon WorkSpaces, Microsoft Windows Virtual Desktop
바. FaaS
- (Function as a Service)Serverless 컴퓨팅을 제공
- AWS Lambda, Azure Cloud Funcions 등
7. Cloud Computing 배포
가. Private Cloud
- 높은 수준의 Customization 가능 / 초기 비용이 매우 많이 들어감 / 유지 보수 비용 비쌈 / 높은 보안 유지가능
나. Public Cloud
- CSP (AWS, Azure, GCP등)
다. Hybrid Cloud
- Public+Private Cloud