ข้ามไปที่เนื้อหาหลัก

เปิด Remote Connect ไปที่ Docker Daemon และปลอดภัย EP 1 :: Concept

เปิด Remote Connect ไปที่ Docker Daemon และปลอดภัย EP 1 :: Concept

เห็นข่าว พบเครื่องที่ใช้ Docker จำนวนมากมีการตั้งค่าไม่ปลอดภัย อาจถูกแฮกฝังมัลแวร์ขุดเงินดิจิทัล แล้วทำจุดไฟให้เขียนเรื่องนี้ โดยปกติถ้าติดตั้ง Docker โดยที่ไม่ได้ปรับแต่งอะไรเพิ่ม จะไม่สามารถเชื่อมจากจากภายนอกเข้ามาบริหารจัดการ container ได้ docker daemon จะเปิดเฉพาะ IPC socket (inter-process communication socket) ทำให้ docker client สามารถเชื่อมต่อได้จาก localhost เท่านั้น แต่ถ้าเผลอเปิด remote connecti​on โดยไม่คำนึงถึงความปลอดภัย ก็จะให้เกิดปัญหาตามข่าวด้านบนได้

รูปที่ 1 ผลจากการเรียกใช้คำสั่ง docker เพื่อสั่งให้ dockerd.example.com ทำงาน

รูปที่ 1 ทางขวาแสดงให้เห็นว่า dockerd.example.com เปิดให้เชื่อมต่อได้โดยไม่มีการกำหนดการรักษาความปลอดภัยแต่อยากได้ และทางซ้ายแสดงให้เห็นว่า สามารถเรียกใช้คำสั่ง docker ให้สร้าง container จาก image ที่ชื่อว่า nginx ได้
หลักวิธีการเปิด Remote Connection ให้ปลอดภัย
รูปที่ 2

docker ใช้วิธีการ Mutual Authentication แบบ Certificate based ปรับปรุงความปลอดภัยในการสื่อสารระหว่าง docker daemon กับ docker client
  1. สร้าง Key และ Certificate สำหรับ Certificate Authority (CA)
  2. สร้าง Key และ Certificate 2 ชุดสำหรับ docker daemon และ docker client โดยที่ Certificate ทั้ง 2 ชุดต้องถูก Sign โดย CA ที่สร้างในข้อ 1
  3. นำ คู่ Key และ Certificate ที่สร้างสำหรับ docker daemon และ Certficate ของ CA ไปเก็บไว้ที่ server
  4. นำ คู่ Key และ Certificate ที่สร้างสำหรับ docker client และ Certficate ของ CA ไปเก็บไว้ที่ client
  5. แก้ไขคำสั่งในการเริ่มทำงานของ docker daemon เพื่อกำหนดให้เกิดรับการเชื่อมต่อจากภายนอก, ระบุให้ใช้ TLS (Transport Layer Security) ในการเชื่อมต่อ และ ตรวจสอบ การเชื่อม
— to be continue EP2 :: configuration
ขอขอบคุณเนื้อหาดีๆจาก คุณ

Damrongsak Reetanon

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

วิธีใช้ Google Form ส่งข้อความเข้า LINE Notify

วิธีใช้ Google Form ส่งข้อความเข้า LINE Notify           ขั้นตอนต่อไปนี้จะข้ามส่วนของรายละเอียดบางอย่างไป ซึ่งก่อนจะทำตรงนี้ควรจะรู้แล้วว่า LINE Notify ใช้ทำอะไร และ Access Token จะเอามาจากไหน แต่จะพยายามอธิบายให้ครอบคลุมที่สุดก็แล้วกัน Update: 2019/06/10 ในท้ายบทความได้เพิ่มคำอธิบายเรื่องการส่งข้อมูลหลายกล่องข้อมูล (คอลั่ม) พร้อมกับ code ที่วนลูปข้อมูลทุกกล่อง เพื่อความสะดวกในการส่งข้อมูลในรูปแบบเดิม สร้าง Google Form วิธีสร้างก็ง่ายแสนง่าย เข้าไปที่  https://docs.google.com/forms  จากนั้น คลิกตรงเครื่องหมาย + ตามภาพ จะได้ form หน้าตาแบบนี้มา แก้ไขตามสะดวกเลย ตัวอย่างเอาแบบนี้แล้วกัน จะลองส่งข้อความคลิกที่รูป “ตา” พิมพ์ข้อความอะไรก็ได้ แล้ว กด Submit โลด กลับไปหน้า Form ของเราใน tab แรก มันก็จะมี RESPONSES เข้ามา เมื่อคลิกดูก็จะพบข้อความที่เราเพิ่งพิมพ์ไปเมื่อตะกี้ ใส่ code ใน Script Editor คลิกที่ จุด 3 จุด ด้านขวาบน แล้วเลือก  <> Script Editor จะพบหน้าเปล่าๆ ที่ไม่คุ้นเคย ตรงนี้แหละที่เราจะมาใส่ code ใ...

ทำความเข้าใจ LM, NTLM, NTLMv2

ทำความเข้าใจ LM, NTLM, NTLMv2  วันนี้เราจะมาทำความเข้าใจเกี่ยวกับรูปแบบการเก็บ password ของ Windows โดยแต่ก่อนจนถึงปัจจุบันก็มีพัฒนาการมาเรื่อยๆครับ ซึ่งจะเริ่มจาก LM (Lan Manager) hash โดย LM นั้นเป็นรูปแบบดั้งเดิมในการเก็บ password ของ Windows ตั้งแต่ยุค 1980 ซึ่งในช่วงนั้นยังมีจำนวน charset ที่ยังจำกัดอยู่(16-bits characters) ซึ่งทำให้การ crack password นั้นทำได้ง่ายมากโดยดึงจาก SAM database บน Windows หรือว่า NTDS บน Domain Controller (Active Directory) ได้เลย โดยขั้นตอนการเปลี่ยน password อยู่ในรูปแบบ LM hash คือ เปลี่ยนอักษรทั้งหมดเป็นตัวใหญ่ หากตัวอักษรไม่ครบ 14 ตัวอักษรก็จะเติมตัวอักษรทั้งหมดให้เต็มด้วย NULL characters แบ่งเป็น 2 กลุ่ม กลุ่มละ 7 ตัวอักษร สร้าง DES key จาก character 7 ตัวทั้ง 2 กลุ่ม ก็จะได้ DES key 2 ชุด (ชุดละ 64 bit) นำ DES key ไปเข้ารหัส static string “KGS!@#$%” ด้วย DES (ECB) นำ encrypted strings ทั้ง 2 อันมาต่อกัน ก็จะได้เป็น LM Hash เช่น สมมติ password เป็น password password => password000000 PASSWORD000000 PASSWOR...

OC และเซตค่า RAM ในระบบ Ryzen ได้ง่ายๆ ด้วยโปรแกรม DRAM Calculator for Ryzen

OC และเซตค่า RAM ในระบบ Ryzen ได้ง่ายๆ ด้วยโปรแกรม DRAM Calculator for Ryzen สำหรับใครที่ใช้ซีพียู Ryzen นะครับ ผมเชื่อว่าต้องมีหลายคนที่ปวดหัวกับเรื่องแรม นอกจากจะเป็นเรื่องการเลือกแรมให้ถูกรุ่นแล้ว  ยังมีเรื่องของการตั้งค่าแรมในไบออสอีก แต่วันนี้ผมมีโปรแกรมแนะนำที่ชื่อ  DRAM Calculator for Ryzen  เพื่อใช้ในการปรับตั้งค่าไบออส ให้ระบบสามารถทำงานร่วมกับแรมได้อย่างมีประสิทธิภาพ แถมยังใช้ในการ OC แรมได้ด้วยนะ โปรแกรมที่จำเป็นต้องใช้นะครับ จะมีอยู่ 2 โปรแกรม คือ DRAM Calculator for Ryzen  ( ลิ้งค์ดาวน์โหลด ) Thaiphoon Burner  ( ลิ้งค์ดาวน์โหลด ) แนะนำให้ทุกคนอัปเดตไบออสตัวล่าสุด ก่อนการใช้งานนะครับ จะได้เรียกประสิทธิภาพจากไบออสได้อย่างเต็มที่ เมื่อดาวน์โหลดโปรแกรม และแตกไฟล์เรียบร้อย ขั้นตอนแรกเราต้องเช็คข้อมูลแรมของเราก่อน ด้วย  Thaiphoon Burner  เปิดโปรแกรมขึ้นมาเลยครับ ( คลิกขวาที่โปรแกรม แล้วเลือก Run as Administrator นะครับ ) จากนั้นให้เลือก  Read  และเลือก  Read SPD  อันแรก ข้อมูลของชิปแรมก็จะปรากฏให...