วันพฤหัสบดีที่ 29 ธันวาคม พ.ศ. 2565

Azure Update Management Center (Preview)

      สวัสดีครับทุกท่าน สำหรับบทความนี้จะเป็นเรื่องราวของขั้นตอนหนึ่งที่สำคัญในการบริหารจัดการตลอดจนการดูแลรักษา Virtual Machines ที่องค์กรได้มีการติดตั้งและใช้งาน ซึ่งแรกเริ่มเดิมที่ Virtual Machines ดังกล่าวนี้จะถูกติดต้้งและใช้ในงานใน On-Premise แต่ในช่วงหลายปีที่ผ่านมา หลายๆ องค์กรเริ่มมีการนำเอาเทคโนโลยีของ Cloud Computing เข้ามาประยุกต์ใช้งาน ตลอดจนได้มีการเลือกพิจารณา Services ต่างๆ ของผู้ให้บริการ Cloud  เช่น Microsoft Azure, AWS, GCP, และอื่นๆ ที่องค์กรใช้งาน ทำการ Deploy และติดตั้งใช้งานตามความต้องการ


ในกรณีนี้ผมขอยกตัวอย่างจาก Microsoft Azure นะครับ, ใน Microsoft Azure จะมี Services ให้เลือกหลากหลายเพื่อรองรับกับความต้องการขององค์กร แต่จะมี Services หลักๆ (Azure Core Services) ที่หลายๆ องค์กรมักจะเลือกติดตั้งใช้งาน และหนึ่งใน Services หลักๆ ที่หลายๆ องค์กรพิจารณาเลือกติดตั้งและใช้งาน นั่นก็คือ "Azure Virtual Machine" หรือเรียกสั้นๆ ว่า Azure VM และผมเชื่อว่า Azure VM น่าจะเป็น Service ที่ท่านผู้อ่านทุกท่านน่าจะมีความคุ้นเคยมากที่สุดตัวหนึ่งครับ 


และเมื่อท่านผู้อ่านได้มีการติดต้้งและใช้งาน Azure VMs (OS จะเป็น Windows หรือ Linux ก็ตาม) เรื่องหนึ่งที่จะต้องทำการพิจารณาวางแแผนเพื่อดำเนินการ คือ การทำ Patch Management ให้กับ Azure VMs เหล่านั้น  สำหรับเรื่องของการทำ Patch Management นั้น ไม่ใช่เรื่องใหม่เลยใช่มั๊ยครับ เพราะเราได้ดำเนินการเรื่องนี้ให้กับ Virtual Machines ที่อยู่ใน On-Premise ของเราอยู่แล้ว แต่คราวนี้เราจะต้องพิจารณาดำเนินการเรื่องดังกล่าวนี้ให้กับ Virtual Machines ที่องค์กรหรือเราติดตั้งใช้งานบน Cloud (ในกรณีนี้ คือ Azure VMs ตามตัวอย่างที่ผมได้เกริ่นไว้ข้างต้น) เพราะเนื่องจากองค์กรของเราได้มีการนำเอา Cloud Computing เข้ามาประยุกต์ใช้งาน ซึ่งก่อให้เกิดการปรับปรุงเปลี่ยนแปลงหลายอย่าง เช่น ในส่วนของ Infrastructure, Network ก็จะเปลี่ยนเป็นแบบ Hybrid Cloud Environment, ในส่วนของ Identity, และอื่นๆ ครับ


และจากตัวอย่างที่ผมได้อธิบายไว้ข้างต้น นั่นหมายความว่าองค์กรใดที่มีลักษณะที่เป็น Hybrid Cloud Environment และถ้าเราโฟกัสเฉพาะ Vitual Machines ท่านผู้อ่านจะเห็นว่าองค์กรดังกล่าวจะมี Virutal Machines ที่มีการติดตั้งและใช้งานอยู่นั้น กระจายอยู่ทั้ง On-Premise และ Cloud (Hybrid Cloud Environment) แล้วเราหรือองค์กรจะวางแผนเพื่อดำเนินการทำ Patch Management อย่างไร? และทาง Microsoft มีเครื่องมือมาช่วยองค์กรหรือไม่ และจากประเด็นของ Patch Management นี่เอง จึงเป็นที่มาของบทความนี้ครับ


สำหรับเรื่องของการอัพเดท โดยเฉพาะ OS Updates หรือเรียกโดยรวมว่า Patch Management นั้น ถือว่าเป็นส่วนประกอบที่สำคัญส่วนหนึ่งของ Zero-Day Vulnerability ซึ่งถือว่าเป็นสิ่งที่เกี่ยวข้องกับความปลอภัยหรือ Security ครับ  สำหรับเครื่องมือที่ทาง Microsoft ได้เตรียมเอาไว้ช่วยองค์กรสำหรับในการดำเนินการเรื่องดังกล่าวนี้ โดยมี Options ให้เลือกดังนี้ครับ


1. WSUS (Windows Server Update Services)

2. SCCM (System Center Configuration Mananger)


และผมเชื่อว่าทั้งสอง Options นี้จะต้องมีท่านผู้อ่านรู้จักและใช้งานอยู่ครับ แต่โดยส่วนใหญ่หรือที่ผ่านเรากันใช้ใน On-Premise ที่เดียวครับ อ้าว!!!! แล้ว Azure VMs ล่ะ เราสามารถใช้เครื่องดังกล่าวนี้ได้หรือไม่ คำตอบ คือ ได้ครับ แต่จะต้องมีการติดตั้ง Azure VMs เพิ่มเติมเพื่อดำเนินการในเรื่องนี้ ทั้งนี้ขึ้นอยู่กับ Options, ความต้องการ, และการออกแบบครับ


นั่นคือ Options หรือทางเลือกที่มีอยู่สำหรับในช่วงเวลาที่ผ่านมาครับ คำถามถัดมาคือ แล้วทาง Microsoft มี Option หรือเครื่องมืออื่นๆ ให้เลือกเพิ่มเติมสำหรับการทำ Patch Management อีกมั๊ยครับ คำตอบ คือ มีครับ โดยใช้ฟีเจอร์หนึ่ง (Update Management) ของ Service ที่มีชื่อว่า "Azure Automation Account" โดย Service ดังกล่าวนี้ให้บริการในรูปแบบของ PaaS นั่นหมายความว่า เราสามารถทำ Patch Management ได้โดยที่ไม่ต้องติดตั้ง Server หรือ VM (WSUS หรือ SCCM Roles) ใดๆ เพิ่มเติม (ซึ่งต่างจาก 2 Options ที่ผมได้อธิบายไว้ก่อนหน้านี้ครับ)










เราสามารถทำการอัพเดท (Patch Management) ให้กับ Azure VMs ที่มี OS เป็น Windows และ Linux ได้ด้วยครับ ดังรูปด้านล่างครับ

















เราสามารถใช้ Update Management ฟีเจอร์ดังกล่าวนี้ทำ Patch Management ให้กับ Virtual Machines ที่อยู่ใน Microsoft Azure (Azure VMs) รวมถึงอยู่ใน On-Premise ด้วยครับ  และนี่ก็เป็นอีกหนึ่งทางเลือกหรือ Option สำหรับการทำ Patch Management ครับ  แต่ยังไม่จบครับ!!!!! 


เพราะยังมีอีกหนึ่งทางเลือกซึ่งเพิ่งมาได้ไม่นานและ ณ วันนี้ยังเป็น Preview อยู่ครับ นั่นคือ "Update Management Center (UMC)" ครับ และนี่คือสิ่งที่ผมอยากจะพาทุกท่านมาทำความรู้จักครับผม



Update Management Center (UMC) คืออะไร?


UMC เป็น Patch Management โซลูชั่นใหม่ โดยทางได้มีการออกแบบใหม่ทั้งหมด โดยองค์กรสามารถใช้ UMC ในการบริหารจัดการการทำ Patch Management  (System Updates, Update Configuration Settings,และอื่นๆ) แบบ Centralized Management โดย Virtual Machines (OS จะเป็น Windows หรือ Linux ก็ได้ครับ) จะอยู่ที่ไหนก็ได้ เช่น Microsoft Azure, On-Premise, รวมถึง Cloud Service Providers อื่นๆ  หรือสรุปได้ว่า UMC เป็น Patch Management ที่ครอบคลุม Environment ขององค์กรที่เป็น Hybrid และ Multi-Cloud ครับ







โดยเราสามารถให้  UMC ทำการประเมิน Status ของ Updates ต่างๆ, จัดการในเรื่องของการติดตั้ง Updates ต่างๆ รวมถึงการตรวสอบให้กับ Virtual Machines ดังรูปด้านล่าง



















เนื่องจาก UMC  ไม่ได้ทำงานร่วมกับ Azure Automation Account และ Azure Monitor Logs ครับ และจากจุดนี้เองทำให้ UMC มีความแตกต่างจาก Azure Automation Account (Update Management) และอย่างที่ผมได้อธิบายไว้ก่อนหน้านี้ว่าทาง Microsoft ได้ทำการออกแบบ UMC Service นี้ขึ้นมาใหม่เพื่อมาช่วยองค์กรได้ทำ Patch Managmenet ครับ ทำให้โดยภาพรวมความสามารถของ UMC นั้นสามารถทำหน้าที่ได้เหมือนกับ Update Management (Azure Automation Account) แต่มีความสามารถมากกว่า ตลอดจนมีความยืดหยุ่นกว่าครับ ที่นี้เรามาดูความสามารถและฟีเจอร์หลักๆ ของ UMC กันครับ


- Native Experience with Zero On-Boarding

- ทำงานร่วมกัน Azure AD (RBAC) สำหรับการทำ Access Control

- ตรวจสอบ Updates โดยอัตโนมัติหรือ On-Demand

- มีความสามารถในการติดตั้ง Updates ทันทีหรือตาม Schedules ที่กำหนด

- Hotpatching ทำการติดตั้ง Updates ไปยัง Virtual Machines (Supported Windows Server) โดยไม่ต้องทำการ Reboot หลังจากติดตั้ง Updates

- อื่นๆ 


สำหรับรูปด้านล่าง ที่แสดงถึง UMC ทำการประเมิน (Assesses) และทำการติดตั้ง Updates ต่างๆ ไปยัง Azure VMs, Non-Azure VMs (Azure-Enable Servers) ที่อยู่ในองค์กร (ครอบคลุมทั้ง Hybrid และ Multi-Cloud Environment) 











รายละเอียดเพิ่มเติมเกี่ยวกับ Azure Update Management Center สามารถไปที่ Link นี้ครับ, Update management center (preview) overview | Microsoft Learn


และในช่วง Preview, UMC ยังไม่มีคิดค่าใช้จ่ายนะครับ









และทั้งหมดนี้คือเรื่องราวเบื้องต้นหรือ Introduction  ของ Azure Update Management Center (Preview) ครับผม.....

วันจันทร์ที่ 26 ธันวาคม พ.ศ. 2565

รู้จักกับ Azure Key Vault

      สวัสดีครับทุกท่านสำหรับบทความนี้ ผมจะพาทุกท่านมาทำความรู้จักกับ Service หนึ่งใน Microsoft Azure ที่มีชื่อว่า "Azure Key Vault" ครับ และต้องบอกทุกท่านไว้ก่อนเลยว่า Service นี้มีความสำคัญและเกี่ยวข้องกับเรื่องของ Cloud Security ครับ เรื่องราวของ Azure Key Vault จะเป็นอย่างไร เชิญทุกท่านติดตามกันได้เลยครับผม



Azure Key Vault คืออะไร?












อย่างที่ได้เกริ่นไว้ตอนต้นครับว่า Azure Key Vault เป็น Service หนึ่งใน Microsoft Azure ครับ โดยหน้าที่ของ Azure Key Vault จะเป็นเตรียมที่ที่สำหรับเก็บและเข้าถึงข้อมูล (หรือเรียกว่า Vault ครับ) ที่ปลอดภัยครับ อีกทั้งยังมาพร้อมกับการบริหารจัดการข้อมูลที่ถูกเก็บใน Azure Key Vault แบบ Centrlized Management, Access Control, Logging, และอื่นๆ

  

นอกจากนี้แล้ว Azure Key Vault ยังบังคับใช้ TLS (Transport Layer Security) Protocol ในการป้องกันข้อมูลที่เดินทางระหว่างตัวของ Azure Key Vault เองกับ เครื่องของผู้ใช้งาน และ Azure Key Vault ยังป้องกันการเชื่อมต่อหรือ Connection ระหว่าง Client System กับ Microsoft Cloud Services ด้วยครับ


ทำไมถึงต้องใช้ Azure Key Vault?


เป็นประเด็นหนึ่งที่ผมมักจะเจอหลายท่านๆ สอบถามด้วยความสงสัยว่าเราจะใช้ Azure Key Vault เพื่อไปอะไรหรือทำไมเราต้องใช้ ผมขออธิบายแบบนี้นะครับ โดยเริ่มจากหน้าที่หลักๆ ของ Azure Key Vault คือ ช่วยองค์กรหรือ IT ทำการจัดเก็บ, ควบคุม, และบริหารจัดการข้อมูลสำคัญ (Sensitive Data) ให้มีความปลอดภัยมากขึ้น ว่าแต่การจัดเก็บตลอดจนการบริหารจัดการข้อมูลสำคัญที่ว่านี้ มันคืออะไร? ท่านผู้อ่านสามารถทำความเข้าใจเรื่องดังกล่าวนี้ โดยมีรายละเอียดดังนี้:

- Secrets Management, กรณีนี้เราใช้ Azure Key Vault ในการเก็บและควบคุมการเข้าถึงข้อมูล (Secrets) ตัวอย่างของ Secrets เช่น Password, Database Connection Strings, Storage Account Keys, API Keys, และอื่นๆ 

- Key Management, กรณีนี้เราใช้ Azure Key Vault ในการบริหารจัดการและควบคุม Keys ที่เราจะนำเอาไปใช้ในการทำ Data Encryption

- Certificate Management, กรณีนี้เราใช้ Azure Key Vault ในการทำ Provision, Manage, และ Deploy Private/Public SSL/TLS Certificates เพื่อนำเอาไปใช้งานร่วมกับ Services อื่นๆ ต่อไป


ประโยชน์ของ Azure Key Vault


1. บริหารจัดการ Application Secrets แบบ Centralized Management โดยการนำเอา Application Secrets ต่างๆ มาเก็บไว้ที่ Azure Key Vault เพื่อควบคุมการ Distribution เพื่อนำไปใช้งาน และยังลดความเสี่ยงที่ Secrets อาจรั่วไหลได้


2. Integrate กับ Azure Services อื่นๆ  ท่านผู้อ่านสามารนำเอา Azure Key Vault ไปทำงานร่วมกับ Services อื่นๆ ใน Microsoft Azure ได้ เช่น Azure Virtual Machine, Azure Storage Account, Azure SQL, Azure Event Hub, Azure Container Registry, และอื่นๆ  ยกตัวอย่าง เช่น ใช้ Azure Key Vault ไปทำงานร่วมกับฟีเจอร์หนึ่งของ Azure Virtual Machine (Azure Disk Encryption) เพื่อใช้ในการ Encrypt Disks ของ Azure Virtual Machine  หรือการนำเอา Azure Key Vault ไปทำงานร่วมกัน Azure Stroage Account เพื่อทำการ Encrypt ข้อมูลที่เก็บอยู่ใน Azure Stroage Account เป็นต้น










3. Integrate กับ Azure Active Directory โดยก่อนที่เข้าถึงข้อมูลต่างๆ ที่เก็บใน Azure Key Vault จะต้องผ่านการ Authentication และ Authorization กับ Azure Active Directory ก่อน











4. Monitoring ท่านผู้อ่านสามารถทำการตรวจสอบการเข้าถึงหรือใช้งานข้อมูลต่างๆ ที่เก็บอยู่ใน Azure Key Vault ได้ เนื่องจากตัวของ Azure Key Vault จะมีการบันทึกเหตุการณ์หรือ Activity ต่างๆ เอาไว้ให้เราสามารถทำการตรวจสอบได้


5. High Availability เราสามารถทำการ Replicate ข้อมูลที่เก็บใน Azure Key Vault (Contents) ภายใน Azure Region เดียวกันหรือต่าง Azure Regions ได้ตามความต้องการ


6. Compliance  ตัวของ Azure Key Vault คอมไฟล์ตามมาตราฐาน FIPS 140-2 Level 2 (Vault) และ FIPS 140-2 Level 3 (Managed HSM Pools) 


7. Encryption (Data In Transit) Azure Key Vault ใช้ TLS Protocol ในการป้องกันข้อมูลที่เดินทางระหว่างตัวของ Azure Key Vault เองกับผู้ใช้งาน อย่างที่ผมได้อธิบายไว้ก่อนหน้านี้ครับ



Service Tiers ของ Azure Key Vault


ก่อนที่เราจะนำเอาข้อมูลไปเก็บไว้ใน Azure Key Vault สิ่งแรกที่จะต้องดำเนินการ คือ การสร้าง Vault  ครับ โดยจะมีให้เลือก 2 แบบหรือ Service Tiers ดังนี้:


Standard Tier (Software Based)

- เข้ารหัสหรือ Encrypt ด้วย Software Key

- ใช้ Software Vault ในการจัดเก็บและบริหารจัดการ (FIPS 140-2 Level 2)


Premium Tier (Hardware Based-HSM)

- เข้ารหัสด้วย Hardware Security Module (HSM) Protected Keys

- ใช้ Managed HSM Pool ในการจัดเก็บและบริหารจัดการ (FIP 140-2 Level 3)



รายละเอียดเพิ่มเติมเกี่ยวกับ Azure Key Vault สามารถไปที่ Link นี้ได้เลยครับ, Azure Key Vault documentation | Microsoft Learn


และทั้งหมดนี้คือเรื่องราวของ Azure Key Vault ที่ผมนำมาเล่าสู่กันฟังครับผม.....