วันศุกร์ที่ 7 กุมภาพันธ์ พ.ศ. 2563

รู้จักกับ Azure Virtual Machine (Azure VM) Encryption

     สวัสดีครับทุกท่าน มาพบกันอีกเช่นเคยนะครับ สำหรับบทความนี้ผมจะหยิบยกเอาเครื่องของ Azure Virtual Machine (Azure VM) มานำเสนอครับ แต่จะเป็นโฟกัสในเรื่องของการ Encryption ที่จะใช้กับ Azure Virtual Machine ครับ และเมื่อพูดถึงเรื่องของการ Encryption แล้ว คงหนีไม่พ้นเรื่องของความปลอดภัยแน่นอนครับ ซึ่งผมต้องขออนุญาตชี้แจ้งก่อนนะครับว่าเรื่องของ Security ใน Microsoft Azure นั้นถือเป็นอีกเรื่องหนึ่งที่น่าสนใจและมีรายละเอียดมากพอสมควรครับ เนื่องจากแต่ละ Services ที่ใช้งานบน Microsoft Azure ก็จะมีฟีเจอร์หรือรูปแบบของการจัดการเรื่องความปลอดภัยหรือ Security ที่แตกต่างกันไปครับ และในบทความของผมตอนนี้เป็นเพียงแค่หยิบเรื่องของ Security ใน Azure Virtual Machine ขึ้นมาเป็นตัวอย่างหนึ่งเท่านั้นครับ

Disks ในรูปแบบต่างๆ ของ Azure Virtual Machine

ผมขอเริ่มจากเวลาที่ท่านผู้อ่านทำการสร้าง Azure Virtual Machine ซึ่ง OS ที่ติดตั้งจะเป็น Windows หรือ Liunx ก็ตาม แต่ละ Azure Virtual Machine ที่ได้สร้างขึ้นก็จมาพร้อมกับ Disks ต่างๆ ดังนี้ครับ:

1. OS Disk
2. Temp Disk
3. Data Disk

สำหรับ OS Disk ก็จะเป็น Disk ที่ติดตั้ง OS เช่น Windows Server หรือ Linux ครับ แล้วแต่ตอนที่เราทำการเลือกจาก Azure Marketplace ครับ สมมติว่า ผมเลือกติดตั้ง OS เป็น Windows Server, OS ดังกล่าวนี้ก็จะเป็น Drive C: ครับ  Disk ชนิดต่อมาคือ Temp Disk จะเป็น Disk ที่เอาไว้ใช้เก็บข้อมูลชั่วคราวครับ และสุดท้ายมันจะเป็น Drive D: ครับ และสุดท้ายคือ Data Disk ครับ โดย Disk ชนิดนี้ท่านผู้อ่านจะต้องทำการ Add หรือเพิ่มเข้าไปเองนะครับ แล้วทำการกำหนดขนาดหรือ Size ครับ จากนั้นก็กำหนด Drive Letter ที่ต้องการครับผม คร่าวๆ ประมาณนี้นะครับสำหรับ Disks ต่างๆ ที่จะเกิดขึ้นและเกี่ยวข้องกับ Azure Virtual Machine ครับ  และ Disks ที่เราให้ความสำคัญคือ OS กับ Data Disk ครับ เพราะเป็น Disks ที่มีการเก็บข้อมูลที่เราใช้งานครับ

สมมตินะครับ ถ้ามีใครมาถามท่านผู้อ่านเกี่ยวกับเรื่องของ Security ของ Azure Virtual Machine แบบตัวอย่างนี้ซึ่งตัวผมก็เคยได้รับคำถามนี้ และในบางครั้งผมเองก็ถามคำถามนี้กับลูกค้าที่เข้าอบรมกับผมเช่นกันครับ
"Disks ใน Azure Virtual Machine มีการเข้ารหัสหรือทำ Encryption ให้โดยอัตโนมัติมั๊ยครับ" 
ท่านผู้อ่านลองคิดก่อนนะครับ…..

คำตอบ ไม่มีการเข้ารหัสหรือการทำ Encryption Disks ของ Azure Virtual Machine โดยดีฟอลต์ครับ แต่สามารถทำการเข้ารหัสหรือทำ Encryption ได้ครับผม  ประเด็นของการเข้ารหัสหรือ Encryption Disks ของ Azure Virtual Machine ท่านผู้อ่านบางท่านอาจจะมีความสงสัยในใจว่า ต้องทำด้วยหรือ ไม่ใช่ทาง Microsoft Azure เป็นคนจัดการให้หรือ และถ้าจำเป็นต้องทำ เพราะสาเหตุใดและทำไมเราจึงต้องทำการเข้ารหัสหรือการทำ Encryption Disks ของ Azure Virtual Machine ครับ

เอาล่ะครับจากคำถามที่ผมยกมาเป็นตัวอย่างข้างต้น การเข้ารหัสหรือการทำ Encryption Disks ของ Azure Virtual Machine นั้นจะทำหรือไม่ ขึ้นอยู่กับความต้องการขององค์กรในแง่ของความปลอดภัยครับ เพราะถ้าหากมึผู้ใดก็แล้วแต่มีสิทธิเข้าไปที่ Azure Portal ของท่านแล้วทำการ Download Disks (.VHD) ของ Azure Virtual Machine ลงมาที่เครื่องแล้วทำการ Attach Disk ดังกล่าว ก็จะสามารถเข้าถึงข้อมูลต่างๆ ที่อยู่ใน Disk ของ Azure Virtual Machine ได้เลยครับ นั่นหมายความว่่าแง่ของความปลอดภัย มีเรื่องของ Data Leak หรือข้อมูลรั่วไหลออกจากองค์กรครับ ประเด็นคือ เราจะสามารถจัดการกับปัญหาดังกล่าวนี้ได้อย่างไร คำตอบ คือ จัดการด้วยการทำ Encrytion Disks ของ Azure Virtual Machine ครับผม

มาดูกันในรายละเอียดเพิ่มเติมอีกซักหน่อยนะครับสำหรับเรื่องของ Azure Virtual Machine Encryption สำหรับการ Encyption ในรูปแบบนี้จะมี 2 วิธีการสำหรับการ Encryption เข้ามาเกี่ยวข้องครับ

1. Server Side Encryption (Data At Rest)
2. Azure Disk Encryption (Encrypt Disk ของ Azure Virtual Machine)

สำหรับในรูปแบบที่ 1 คือ Server Side Encryption (SSE) คือ การเข้ารหัสหรือ Encryption Disks (Managed Disk) ของ Azure Virtual Machines ทุกตัวโดยดีฟลอต์ เมื่อ Disks เหล่านี้เก็บอยู่ใน Azure Storage ครับ นั่นหมายความว่าข้อมูลหรือ Disks เหล่านี้นอนอยู่เฉยๆ ไม่มีการใช้งานนะครับหรือเรียกตาม State ของ Data ว่า Data At Rest ครับ  เมื่อถูกใช้งานก็ถูกถอดรหัสหรือ Decrypt โดยอัตโนมัติครับ

ต่อมารูปแบบที่ 2 คือ Azure Disk Encryption หรือ ADE ซึ่งเป็นทางเลือกสำหรับองค์กรใดที่ต้องการเข้ารหัสหรือ Encryption Disks  ของ Azure Virtual Machine เพื่อป้องกันข้อมูลรั่วไหลออกจากองค์กร ดังตัวอย่างที่ผมได้อธิบายไว้ในข้างต้นครับ โดยท่านผู้อ่านสามารถทำการเข้ารหัสหรือทำ Encryption ได้ทั้ง OS และ Data Disks ของ Azure Virtual Machine ซึ่งจะเป็น Windows หรือ Linux ก็ได้ครับ ADE ก็สามารถทำการเข้ารหัสหรือทำ Encryption ครับ

ในส่วนของรายละเอียดของการเข้ารหัสหรือทำ Encryption Disks ของ Azure Virtual Machine ใช้วิธีการหรือเทคโนโลยี ขึ้นอยู่กับ OS ที่ติดตั้งใน Azure Virtual Machine นั้นครับ ผมขออนุญาตสรุปตามรายละเอียดนี้ครับ

- Azure Virtual Machine (OS เป็น Windows) ใช้ BitLocker
- Azure Virtual Machine (OS เป็น Linux) ใช้ DMCrypt

ท่านผู้อ่านท่านใดสนใจสามารถศึกษาข้อมูลเพิ่มเติมจาก Link นี้ได้เลยครับผม
https://docs.microsoft.com/en-us/azure/security/fundamentals/azure-disk-encryption-vms-vmss



และทั้งหมดนี้คือเรื่องราวของ Azure Virtual Machine Encryption ครับผม…..