Cloud and Virtualization Notes

Cloud and Virtualization

What is Cloud?

  • Cloud involves apps and data running on a cloud environment.
  • The cloud is essentially a large building filled with servers.
  • Customers don't need to worry about upkeep or maintenance.
  • YouTube is given as a simple example of cloud usage.

Learning Resources

  • Microsoft Learn
  • PluralSight
  • A Cloud Guru
  • Cloud Academy
  • Azure Free Account (200 Credit)
  • GCP 90 Day, 300 Trial
  • AWS 12 Months Free
  • Instructor for IT342

Recommended Certifications (2024)

  • Azure
    • Fundamentals AZ-900 (Intro)
    • Admin Associate AZ-104 (Intermediate)
    • Network Engineer Associate AZ-700 (Advanced)
    • Solutions Architect Expert AZ-305 (Advanced)
    • Cyber Architect Expert SC-100 (Advanced)
    • Windows Server Hybrid Admin Associate AZ-800, 801 (Intermediate)
    • IAM Admin Associate SC-300 (Intermediate)
  • AWS
    • Cloud Practitioner Foundational (Intro)
    • Solutions Architect Associate (Intermediate)
    • Solutions Architect Professional (Advanced)
    • Security Specialty
    • SysOps Admin (Intermediate)
    • Developer Associate (Intermediate)
    • Advanced Networking Specialty
  • GCP
    • Cloud Digital Leader (Intro)
    • Cloud Engineer (Intermediate)
    • Cloud Architect (Advanced)

Cloud Terminology

  • Instance: Virtual server or device.
  • Blobs (Azure), S3 Bucket (AWS): Storage devices.
  • VPC: Virtual private cloud.
  • CDN: Content Delivery Network.
  • Project (GCP), Accounts (AWS), Subscriptions/Resource Groups (Azure): Organizing entity.
  • Peering: Network connections.
    • VPC peering involves connecting two VPCs.

Cloud Products

  • Virtual Servers
    • AWS: Instances, VMs
    • Azure: Cloud Services, VMs
    • GCP: VM Instances
  • Platform-as-a-Service
    • AWS: Elastic Beanstalk, ECS
    • Azure: Azure Functions, Container Service, Kubernetes Service
    • GCP: App Engine, Cloud Functions, Container Engine, Kubernetes Engine
  • Serverless Computing
    • AWS: Lambda
    • Azure: Block Blob
    • GCP: Cloud Storage
  • Docker Management
    • AWS: EKS
    • GCP: Cloud Storage
  • Kubernetes Management
    • Azure: Kubernetes Service
    • GCP: Kubernetes Engine
  • Object Storage
    • AWS: S3
    • Azure: Block Blob
    • GCP: Cloud Storage
  • Archive Storage
    • AWS: Glacier
    • Azure: Archive Storage
    • GCP: Coldline
  • File Storage
    • AWS: EFS
    • Azure: Azure Files
    • GCP: ZFS / Avere
  • Global Content Delivery
    • AWS: CloudFront
    • Azure: Delivery Network
    • GCP: Cloud CDN
  • Managed Data Warehouse
    • AWS: Redshift
    • Azure: SQL Warehouse
    • GCP: Big Query

Locations

  • GCP: VA
  • AWS: VA
  • Azure: WY

Data Residency Boundary (Azure Regional Pairs in Geography)

  • Regions are paired for availability.
  • Examples:
    • West US paired with East US
    • North Europe paired with West Europe
    • Southeast Asia paired with East Asia

Cloud Service Providers (CSP)

  • Rent out hardware/DC as a service.
  • Examples: Amazon AWS, Microsoft Azure, Google GCP, Alibaba, IBM, Oracle OCI.

Cloud Market Share

  • Amazon, Microsoft, and Google dominate the cloud market.
  • Worldwide market share in Q3 2022:
    • AWS: 34
    • Azure: 21
    • Google Cloud: 11
    • Alibaba Cloud: 5
    • IBM Cloud: 3
    • Salesforce: 3
    • Tencent Cloud: 2
    • Oracle: 2
  • Cloud infrastructure service revenues in the 12 months ended September 2022: 217 billion.
  • Includes platform as a service (PaaS) and infrastructure as a service (IaaS), as well as hosted private cloud services. Source: Synergy Research Group, Statista.

Public Cloud

  • Hosted by a cloud service provider.
  • Tenants pay only for the services they use.
  • Customers do not have complete control.
  • Examples: AWS, Azure, GCP.

Virtual Private Cloud (VPC)

  • A virtualized, private section of a public cloud environment.
  • Resources are isolated and have their own private IPs.
  • Can be peered with other VPCs to route using private IPs.
  • Often has dedicated network connections from on-premise to avoid internet access.

Private Cloud

  • Hosted virtualization in own data center.
  • Users pay for the hardware infrastructure.
  • Users have 100% control.
  • Increased security.

Hybrid Cloud

  • Cloud services are split between public and private.
  • Users choose how much hardware to buy/license.
  • Users can manage control depending on the service.
  • The majority of corporations use this model.

Multi-Cloud

  • Users use several different cloud providers.
  • Can be a combination of IaaS, PaaS, or SaaS.
  • Avoids dependencies on a single solution.
  • Provides more options for optimization.

Amazon Web Services (AWS)

  • Owned by Amazon.
  • Market leader.
  • High transfer stability.
  • Founded in 2006.

Microsoft Azure

  • Owned by Microsoft.
  • Easy integration with MS tools/software.
  • Founded in 2010.

Microsoft 365 (Office 365)

  • Subscription services offered by MS.
  • Software-as-a-Service on the cloud.
    • Includes Exchange, Skype, Teams, OneDrive, SharePoint.
  • Cloud-based security capabilities.

Google Cloud

  • Owned by Google.
  • Many open-source technologies.
  • Optimal for cloud-native business.
  • Cost efficient / flexible contracts.
  • Founded in 2011.

Google Workspace

  • Google's answer to MS365.
  • Includes office suite, email/calendar services, meetings and voice, files and content.
  • Apps, storage, and support depend on the pricing tier.
  • GWS Sec is Google’s security checklist.
  • CIS has benchmarks for GWS.
  • GWS Admin Console controls:
    • Directory
    • Devices
    • Apps
    • Security
    • Rules

Important Cloud Logs (Beyond Scope of IT340)

Services for Security & Logging

  • AWS

    • CloudTrail
    • CloudWatch
    • CloudWatch Agent
    • VPC Flow Logs
    • GuardDuty
    • Security Hub
    • VPC Traffic Mirroring
  • Azure

    • Activity Logs
    • Azure Monitor
    • Azure Diagnostic Agent
    • NSG Flow Logs
    • Advanced Threat Protection
    • Security Center
    • Virtual Network TAP
  • GCP

    • Cloud Audit Logs
    • Stackdriver Monitoring
    • Logging Agent (fluentd)
    • VPC Flow Logs
    • Event Threat Detection
    • Cloud Security Command Center
    • Packet Mirroring
      Refer to SANS GIAC CERTIFICATIONS for additional information @SANSCloudSec | sans.org/cloud-security

Cloud Security Log Architecture Considerations

  • Identity: Who did what?
  • Volume: Ensure the environment can handle the volume of logs.
  • Bandwidth: Consider keeping logs on the CSP network.
  • Storage: Log storage, querying, and retention.
  • Filtering: Ensure only necessary logs are collected.
  • Speed: Ensure logs are received in real-time.

Shared Security Model

  • Defined by Service-Level Agreement (SLA).
  • Cloud provider responsible for security of the cloud:
    • Hardware
    • Software
    • Networking
    • Facilities
  • Customer responsible for security in the cloud:
    • System configuration (OS, FW, Network)
    • Key management
    • Access Control

Infrastructure as a Service (IaaS)

  • Cloud provider manages infrastructure:
    • Storage
    • Virtualization
    • Networking
    • Servers
  • Customer manages software:
    • Applications
    • Data
    • OS
    • Runtime
  • Examples: AWS, GCP, Azure.

Platform as a Service (PaaS)

  • Cloud Provider manages hardware and additional processes:
    • Storage, Virtualization, Networking
    • OS
    • Middleware
    • Runtime
  • Customer manages applications and data.
  • Examples: Docker, Google App Engine, AWS Elastic Beanstalk.

Software as a Service (SaaS)

  • Most common service.
  • Cloud providers host and manage all of the applications.
  • Customers only access the applications.
  • Examples: Google Drive, O365, YouTube, Netflix.

Analogy: Pizza as a Service

  • Traditional On-Premises: Making a pizza at home (You manage everything).
  • IaaS: Take & Bake pizza (Vendor manages the oven, fire, etc.; you manage toppings, cheese etc.).
  • PaaS: Delivered pizza (Vendor manages everything up to the final product).
  • SaaS: Dined out (Vendor manages everything, including the dining table).

Breakdown of On-site vs Various Cloud Services

  • On-site: You manage everything including applications, data, runtime, middleware, O/S, virtualization, servers, storage, and networking.
  • IaaS: Service provider manages virtualization, servers, storage, and networking.
  • PaaS: Service provider manages O/S additionally to the IaaS managed items.
  • SaaS: Service provider manages middleware, runtime, applications, and data in addition to the PaaS managed items.

Instance Metadata Services (IMDS)

  • Provides users with information about VMs, cloud accounts, etc.
  • Can be queried by any user via HTTP (169.254.169.254).
  • Bad actors can steal keys and tokens.
  • IMDSv2 requires tokens (stops SSRF).
  • Important to configure IMDS on host-based controls (e.g., owner-only access).

Gaming as a Service

  • Users run video games on cloud servers.
  • The video game is streamed as video to the user.
  • The user's hardware is unimportant.
  • Examples: Stadia, GeForce Now.

Why Cloud Computing?

  • Features of Cloud Computing:
    • Resource Pooling
    • Economical
    • Easy Maintenance
    • Large Network Access
    • Pay As You Go
    • Automatic System
    • Security
    • Data Availability
    • On-Demand
    • Measured Service
    • Self-Service

Managed Service Provider (MSP) / Network Operations Center as a Service (NOCaaS)

  • Cheaper/easier than an in-house IT team.
  • Provides security.
  • Allows clients to focus on business.
  • Can provide 24/7 support.

Infrastructure as Code

  • A concept for DevOps automation.
  • Setting up infrastructure:
    • New servers
    • Network configs
    • Load balancing
  • Configuring provisioned infrastructure:
    • Installing apps/versions (Java, DB, etc.)
    • App management
  • Deployment of applications.
  • Examples: Terraform, Ansible.

cloud-init

  • A tool to make system modifications during the first launch.
  • Available on Linux and Windows.
  • Examples: hostname, managing local users, configuring SSH, package management.

Cloud Shell

  • Browser-based shell environment.
  • Interacts directly with cloud resources.
  • No setup required.
  • Examples: Create, update, delete resources; script updates across your environment.

Leaky Buckets

  • Misconfigured cloud storage leads to breaches (buckets = storage).