25~26 겨울방학/클라우드 보안

클라우드 보안) 26.02.05(용어)

kimchangmin02 2026. 2. 6. 11:32

 


1. 클라우드 산업 및 비즈니스 기초

  • CSP (Cloud Service Provider): 클라우드 인프라(서버, 스토리지, 네트워크)를 직접 구축해서 빌려주는 업체. (예: 네이버 클라우드, AWS, MS Azure)
  • MSP (Managed Service Provider): CSP의 인프라를 고객의 목적에 맞게 설계, 구축, 운영해주는 전문 업체. (강사의 소속사인 '클라우드 스퀘어'가 해당)
  • DX (Digital Transformation): 기존의 아날로그식 비즈니스 모델을 디지털 기술 기반으로 전환하는 것.
  • AX (AI Transformation): 디지털화된 서비스를 인공지능(AI) 기반으로 고도화하여 전환하는 것.

2. 정보 보안의 3요소 (CIA)

보안의 가장 근본이 되는 세 가지 원칙입니다.

  • 기밀성 (Confidentiality): 허가된 사람만 정보를 볼 수 있게 하는 것. (주요 기술: 암호화, 접근 제어)
  • 무결성 (Integrity): 정보가 허가 없이 수정되거나 변조되지 않았음을 보장하는 것. (주요 기술: 해시 함수, 디지털 서명)
  • 가용성 (Availability): 서비스가 필요할 때 언제든 중단 없이 사용할 수 있는 것. (주요 기술: 이중화, 백업, DDoS 방어)
  • AES (Advanced Encryption Standard): 양방향 대칭키 암호화 방식. 암호화와 복호화에 같은 키를 사용하며 속도가 빠름.
  • RSA: 비대칭키(공개키) 암호화 방식. 공개키와 개인키 한 쌍을 사용하며 보안성이 높으나 연산이 복잡해 느림.
  • SHA-256 (Secure Hash Algorithm): 단방향 암호화(해시). 어떤 데이터를 넣어도 256비트 길이의 고유한 결과값을 내며, 원래 데이터를 복구할 수 없음. (무결성 확인용)

3. 서버(Compute) 및 가상화 용어

  • VM (Virtual Machine): 물리 서버 한 대를 소프트웨어로 쪼개어 만든 가상 컴퓨터. 우리가 실습에서 만든 '서버'가 이것임.
  • 베어 메탈 (Bare Metal): 가상화 레이어 없이 물리 서버 하드웨어를 통째로 사용하는 방식. 고성능이나 특수 소프트웨어 설치 시 사용.
  • 하이퍼바이저 (Hypervisor): 물리 서버 위에 가상 머신(VM)을 생성하고 관리하는 소프트웨어 엔진. (예: KVM)
  • 정가상화 (Full Virtualization): 하드웨어를 완벽하게 가상화하여 OS 수정 없이 그대로 사용하는 방식. (최신 OS 대응 빠름)
  • 반가상화 (Para-virtualization): 가상화 환경에 맞게 수정된 OS를 사용하는 방식. (최적화는 좋으나 OS 수정 과정 필요)
  • vCPU / RAM: 가상 머신에 할당된 가상 CPU 코어와 메모리 용량.
  • IOPS (Input/Output Operations Per Second): 초당 디스크 입출력 속도. 클라우드에서는 디스크 용량이 커질수록 이 성능도 비례해서 좋아짐.
  • 이니트 스크립트 (Init Script): 서버가 처음 부팅될 때 최고 관리자 권한으로 자동 실행되도록 설정하는 스크립트. (포트 변경 실습에 사용)

4. 네트워크(Networking) 용어

오늘 가장 중요하게 다뤄진 파트입니다.

  • VPC (Virtual Private Cloud): 클라우드 내부에 논리적으로 격리된 나만의 가상 네트워크 공간.
  • 서브넷 (Subnet): VPC라는 큰 네트워크를 다시 용도별(웹, DB 등)로 쪼갠 작은 네트워크 단위.
  • 공인 IP (Public IP): 인터넷 세상에서 고유하게 식별되는 외부 접속용 주소.
  • 사설 IP (Private IP): VPC 내부에서만 통신할 때 사용하는 주소. (외부에 노출되지 않음)
  • CIDR (Classless Inter-Domain Routing): IP 주소 대역을 표기하는 방식. (예: 10.0.0.0/16에서 /16은 고정된 네트워크 범위를 의미)
  • 라우팅 테이블 (Route Table): 패킷이 목적지로 가기 위해 어떤 길(게이트웨이)로 가야 하는지 적어놓은 지도.
  • NAT 게이트웨이 (NAT Gateway): 공인 IP가 없는 프라이빗 서브넷 서버들이 외부 인터넷(업데이트 등)을 할 수 있게 공인 IP를 빌려주는 장치.
  • VPC 피어링 (Peering): 서로 다른 VPC 간에 네트워크 통로를 연결하여 통신하게 하는 것. (암호화는 안 됨)
  • IPsec VPN: 사이트와 사이트(예: 학교와 클라우드)를 전용 장비를 통해 암호화 연결하는 방식.
  • DNS (Domain Name System): naver.com 같은 문자를 IP 주소로 바꿔주는 시스템.
  • CDN (Content Delivery Network): 이미지, 영상 등을 전 세계 곳곳의 서버(캐시)에 미리 복사해두어 사용자에게 빠르게 전달하는 기술.

5. 접근 제어 및 보안 실습 용어

  • ACG (Access Control Group): 서버 단위 가상 방화벽. 상태를 기억하는 스테이트풀(Stateful) 방식. (나가는 문은 자동 허용)
  • NaCl (Network ACL): 서브넷 단위 가상 방화벽. 상태를 기억하지 않는 스테이트리스(Stateless) 방식. (들어오는 문, 나가는 문 모두 수동 설정)
  • SSH (Secure Shell): 서버에 원격 접속하기 위한 보안 프로토콜. 기본 포트는 22번.
  • 포트 (Port): 한 IP 내에서 특정 서비스(SSH, 웹 등)를 찾아가기 위한 번호표(0~65535).
  • SSL VPN: 웹 브라우저가 사용하는 443(HTTPS) 포트를 이용해 암호화 터널을 뚫고 내부망에 접속하는 기술.
  • 바스티온 호스트 (Bastion Host / Jump Server): 프라이빗 서버에 접속하기 위해 거쳐가는 중간 '디딤돌' 서버.
  • PEM 키 (인증 키): RSA 비대칭키 방식에서 사용하는 '개인키' 파일. 서버 비밀번호를 확인하거나 직접 접속할 때 사용.
  • 로드 밸런서 (Load Balancer): 트래픽이 몰릴 때 여러 대의 서버로 부하를 분산해주는 장치. (L4-네트워크형, L7-애플리케이션형)

 

 

강사님이 서버를 만들 때 "하이 CPU 2코어에 메모리 4기가" 같은 스펙을 정하라고 하셨죠? 이건 우리가 만든 가상 컴퓨터(VM)의 **'체급'**을 결정하는 핵심 부품들입니다.

1. 1코어 (CPU Core)

**코어(Core)**는 CPU(중앙처리장치) 내부에서 실제로 연산을 수행하는 물리적인 하드웨어 단위입니다.

  • 물리적 실체: 실리콘 칩 위에 아주 미세하게 새겨진 회로들의 집합체입니다. 산술 연산(더하기, 빼기)과 논리 연산(참, 거짓 판단)을 담당합니다.
  • 서버에서의 역할: 우리가 명령어를 입력하거나 스크립트를 실행하면, 이 '코어'라는 장치가 전기를 소모하며 수억 번의 계산을 수행해 결과를 내놓습니다.
  • 1코어 vs 2코어:
    • 1코어: 한 번에 하나의 작업(정확히는 하나의 명령어 흐름)만 처리할 수 있습니다.
    • 2코어: 두 개의 연산 장치가 독립적으로 존재하므로, 두 가지 일을 동시에 처리하거나 하나의 복잡한 일을 나누어서 더 빨리 끝낼 수 있습니다.
  • 클라우드에서의 의미 (vCPU): 네이버 클라우드의 아주 큰 물리 서버 한 대에는 수십 개의 코어가 박혀 있습니다. 클라우드 시스템은 그중 딱 1개(혹은 2개)의 코어만큼의 연산 능력을 떼어서 여러분의 VM에게만 독점적으로 빌려주는 것입니다.

2. 메모리 (Memory / RAM)

**메모리(RAM)**는 데이터를 일시적으로 저장하는 고속 저장 장치입니다.

  • 물리적 실체: 메인보드에 꽂혀 있는 길쭉한 반도체 칩입니다. 전기가 흐르는 동안에만 데이터를 기억하는 휘발성 성질을 가집니다.
  • 서버에서의 역할:
    1. OS 로드: 리눅스가 켜지면 하드디스크(SSD)에 있던 운영체제 파일들이 메모리로 올라옵니다.
    2. 프로그램 실행: 우리가 설치한 nginxsshd 같은 프로그램도 실행되는 순간 메모리에 상주합니다.
    3. 데이터 처리: CPU(코어)가 계산을 하려면 데이터가 필요한데, 하드디스크(SSD)는 너무 느려서 CPU의 속도를 따라오지 못합니다. 그래서 CPU는 모든 데이터를 메모리에서 가져와서 계산하고 다시 메모리에 저장합니다.
  • 왜 4기가(GB)인가?
    • 메모리 용량이 클수록 더 많은 프로그램을 동시에 띄워놓거나, 더 큰 데이터를 한꺼번에 처리할 수 있습니다.
    • 용량이 부족하면 시스템이 멈추거나, 아주 느린 하드디스크(SSD)를 메모리처럼 빌려 쓰기 시작하면서(Swap) 서버가 엄청나게 느려집니다.

3. 코어와 메모리의 관계 (작동 원리)

데이터가 처리되는 물리적인 순서는 이렇습니다.

  1. 저장: 프로그램(SSH, 웹 서버 등)은 평소에 **SSD(저장소)**에 잠자고 있습니다.
  2. 실행: 사용자가 프로그램을 실행하면, 프로그램 데이터가 메모리로 복사되어 올라옵니다.
  3. 연산: **코어(CPU)**가 메모리에 있는 데이터를 읽어와서 계산(로그인 인증, 웹 페이지 전송 등)을 수행합니다.
  4. 응답: 계산 결과가 다시 메모리에 담겼다가 네트워크를 타고 사용자에게 전달됩니다.

4. 강사님이 선택한 "High CPU 2코어 4GB"의 의미

네이버 클라우드 상품군 중 하나인 이 스펙은 다음과 같은 물리적 특성을 가집니다.

  • High CPU: 이 서버는 메모리 용량보다는 CPU의 계산 능력에 더 집중된 모델이라는 뜻입니다. (연산이 많이 필요한 작업에 적합)
  • 2코어: 두 명의 일꾼(연산 장치)을 붙여주겠다는 뜻입니다. 하나는 웹 서비스를 돌리고, 하나는 관리자 접속을 처리하는 식으로 효율적인 분배가 가능합니다.
  • 4GB: 리눅스 OS와 웹 서버, 보안 프로그램 몇 개를 띄우기에 넉넉하고 안정적인 작업 공간을 제공한다는 뜻입니다.

요약하자면:
코어는 계산기(일꾼)이고, 메모리는 계산할 숫자들을 적어두는 노트(작업대)입니다. 이 두 개가 적절히 조합되어야 우리가 만든 가상 서버가 실제로 "작동"할 수 있는 것입니다!