Make tokens “time-base””: yes
Update the .google_authenticator file: yes
Disallow multiple uses: yes
Increase the original generation time limit: no
Enable rate-limiting: yes
เพื่อให้ Web Server ของเราปลอดภัยจากการถูกโจมตี บทความนี้จะเป็นการแนะนำการกำหนดค่าต่างๆของ web server ที่ให้บริการ ซึ่งทำงานด้วยบน Windows Server และ มีการติดตั้ง IIS, PHP, MySql, ASP.Net และ WordPress
การกำหนดส่วนของ Windows Server อ้างอิงคำแนะนำจาก Quays SSL Labs ให้ได้ระดับ A ขึ้นไป
ใช้ใบรับรองจาก CA ที่น่าเชื่อถือ และ ใช้การ RSA 2048 bits (SHA256withRSA) ขึ้นไป
การป้องกันการเรียกดู user data ผ่าน REST API ใน WordPress กรณีนี้ควรติดตั้งส่วนเสริมไม่ให้สามารถเรียกใช้งานผ่าน REST API โดยไม่มีการยืนยันตัวตนก่อน เช่น Disable WP REST API
Windows Server 2022 รองรับ TLS 1.2 และ TLS 1.3 หมายเหตุ ทั้งนี้ Windows Server 2022 เพิ่มการรองรับ TLS 1.3 อย่างไรก็ตาม หากเปิดใช้งานทั้ง TLS 1.2 และ 1.3 Site Scanner จะส่งผลให้ได้เกรด A เท่านั้น เนื่องจากปัจจุบัน Windows Server ไม่รองรับการป้องกันการโจมตีแบบดาวน์เกรด หากไคลเอนต์ร้องขอ TLS 1.3 Windows จะยังคงอนุญาตให้ปรับไปใช้ TLS 1.2 ได้ และนั่นคือสาเหตุที่ Site Scanner รายงานเกรด A แทนที่จะเป็น A+
ใช้ plugin ชื่อว่า WPO365 วิธีการตั้งค่าเพื่อใช้งาน single sign on ของ Microsoft365 ในการล็อคอินเข้าระบบของ WordPress
Authentication
ต้องเซ็ต HTTPS ที่เว็บให้เสร็จเรียบร้อย
สำคัญ!!! จำเป็นต้องมีสิทธิ์ Global Administrator บน Azure
Login เข้าเว็บ https://portal.azure.comมองหา Azure Active Directory
ซ้ายมือเลื่อนหาคำว่า App registrations
คลิก + New registration แล้วกรอกชื่อที่ต้องการในช่อง Name ในส่วนของ Supported account types เลือก Accounts in this organizational directory only (Prince of Songkla University only – Single tenant)
ให้ตั้งค่าเป็นเสียงต้นฉบับ ในส่วนเลือกภาษา หากใครต้องการให้ Sub Title ที่ใส่เป็นภาษาไทยสามารถเลือกภาษาตามที่ต้องการได้เลย ในกรณีนี้จะเลือกเป็นภาษาไทย เมื่อเสร็จแล้วให้มาคลิกที่ปุ่ม เริ่มต้น (Start)
ผมได้ทำ google form สอบถามเกี่ยวกับการ cloning ต้นฉบับ Windows เพื่อนำไป cloned ลงยังเครื่องอื่น ๆ ในห้องปฏิบัติการหรือสำนักงาน
ได้ข้อสรุปและคำถามมาดังนี้
แผนภูมิ ข้อมูลจากแบบสอบถามใช้ซอฟต์แวร์ใดในการ cloning Windows
มีผู้เข้ามาตอบจำนวน 14 คน ได้ผลสรุปตามรูปภาพ o มีผู้ที่ตอบว่าใช้ PSU12-Sritrang (opensource.psu.ac.th) จำนวน 7 คน o มีผู้ที่ตอบว่าใช้ โปรแกรมอื่น จำนวน 4 คน o มีผู้ที่ตอบว่าใช้ FogProject (fogproject.org) จำนวน 2 คน o มีผู้ที่ตอบว่าใช้ PSU12-Fog (opensource.psu.ac.th) จำนวน 1 คน
โปรแกรมอื่นที่เลือกใช้ในการ cloning Windows มีดังนี้ o Clonezilla o Aomei backupper o Acronis True Image ทำทีละเครื่อง o Acronis True Image 2014 premium (ใช้ในการ clone เครื่องในสำนักงาน) o Norton Ghost with Windows 7 PE ใช้งานร่วมกับ PSU12-Sritrang o Norton ghost
ความคิดเห็นอื่น ๆ ที่เกี่ยวกับการเตรียม Windows ห้องคอมพิวเตอร์ มีดังนี้ 1.การติดตั้ง Windows11 และการปรับแต่งให้เหมาะสมสำหรับใช้ในห้องปฎิบัติการคอมพิวเตอร์ 2.ทั้ง PSU12-Sritrang และ PSU12-fog ใช้โคลน windows 10 ได้ดี และทั้งการโคลนและสูตรการจัดการให้บริการห้องแลปด้วย PSU 12 Sritrang สามารถใช้บริหารจัดการห้องแลปคอมที่ใช้ windows 10 ได้ดีครับ โดยเฉพาะเรื่องการจัดการเลือกบูต OS ได้ แต่การเลือก Boot OS ด้วย windows 11 จากการทดลองไม่สามารถทำได้แล้วเพราะมีการจัดการ Partition ในรูปแบบใหม่ 3.อยากให้เปิดการอบรมPSU12-Sritrang(opensource.psu.ac.th)อีกครั้งครับเพราะทำกับเครื่องจริงแล้วมีปัญหาหลายอย่าง 4.ปัญหาการ Cloning Windows กับ SSD ssd nvme m.2 5.ปัญหาเกี่ยวกับต้องใส่ cd key เสมอเวลา cloning windows ใหม่ 6.อยากทราบว่ามีท่านใดใช้โปรแกรมใดในการ clone harddisk ที่เป็น ssd เพราะ software รุ่นเก่าจะมองไม่เห็น เท่าที่ดู พาทของ /dev/sda ก้จะเปลี่ยน 7.PSU12-Sritrang Support Windows11 มั้ยคับ
ผมจะขอให้ข้อมูลเท่าที่พอจะมีความรู้นะครับ
O เกี่ยวกับ PSU12-Sritrang (opensource.psu.ac.th)
เนื่องจากผมทำชุดติดตั้งสำหรับ cloning Windows คือ PSU12-Sritrang (opensource.psu.ac.th) นั่นคือ ต้องมี server 1 ตัว ผมเลือกใช้ ubuntu server ทดสอบล่าสุดใช้ได้เพียง ubuntu server 20.04 เมื่อทดสอบกับ ubuntu server 22.04 จะเริ่มมีปัญหาในขณะ Boot client จึงยังคงไว้ที่รุ่นนี้ มาพูดถึงการ cloning Windows นั้น ชุดติดตั้งนี้รองรับเพียงแค่ Windows ที่สามารถจัดการ partition แบบ MBR ได้เท่านั้น เมื่อดู Windows 11 แล้วจะพบว่า ทำไม่ได้ แล้ว หากว่าเครื่อง clients ที่ลง Windows ยังสามารถทำ partition แบบ MBR ได้ ไม่ว่าจะเป็น disk ชนิด SATA หรือ SSD nvme M.2 ชุดติดตั้งนี้รองรับครับ ตั้งแต่รุ่น sysresccd-5.1.2-16.04-dvd-psu12-sritrang-server-autopartition-offline-2019-12-13.iso ครับ ปัจจุบันล่าสุดคือ sysresccd-5.1.2-20.04-dvd-psu12-sritrang-server-autopartition-offline-2022-03-18.iso
หากใช้ PSU12-Sritrang รุ่นใด ๆ แล้วทดสอบกับคำสั่งดังนี้ grep SSD /var/www/cloning/backup.sh ไม่พบข้อความ use for M.2 SSD
โน้ตบุ๊ค HP รุ่น 6450b มีหน่วยความจำ 4 GB ผมเอามาทำเป็นเซิร์ฟเวอร์สำหรับรัน Virtual Machine (VM) ผมใช้ทดสอบติดตั้ง server หรือ services ต่าง ๆ เช่น Ubuntu server ทำงานเป็น web server เป็นต้น ผมอยากจะเรียกว่า Mobile Virtual Data Center ครับ โดยที่ผมนำซอฟต์แวร์ที่ชื่อว่า OpenNebula มาใช้ ตัวนี้ใช้ทำเป็น Virtual Data Center ขนาดใหญ่ได้เลยหากมี Hardware สเปคสูง ๆ สร้าง VM ให้บริการได้จริง เค้ามีซอฟต์แวร์สำหรับเครื่องเดียว (Test Drive) เรียกว่า OpenNebula miniONE ให้ใช้ น่าจะนำมาลงโน้ตบุ๊คได้ จึงได้ทดลองดู พบว่าใช้ได้จริง
สิ่งที่ทำมีดังนี้
เตรียม USB Drive ที่ Boot เป็น Ubuntu Desktop สำหรับติดตั้ง
Boot Ubuntu Desktop ที่โน้ตบุ๊ค และเข้าใช้งาน ติดตั้ง OpenSSH server
คำสั่ง sudo apt install openssh-server
ติดตั้งเซิร์ฟเวอร์สำหรับสร้าง VM
ติดตั้ง OpenNebula miniONE on KVM
แก้ไขเล็กน้อย
เตรียมไว้ว่าต่อไปจะใช้ TCP Port 80 สำหรับ web server ที่เป็น VM จึงต้องแก้ไข default port จาก 80 เป็นอย่างอื่น ตั้งค่า :port: 8080 แก้ไขที่ไฟล์ /etc/one/sunstone-server.conf
ติดตั้ง apache2 web server (เปิด port 80) พร้อม php และลงซอฟต์แวร์ชื่อ CMSimple version 5.3 สำหรับทำเป็น CMS Web Server อย่างง่าย ไม่มี database (แตกไฟล์ CMSimple_5-3.zip ไว้ใน /var/www/html/cms/) (ติดตั้ง CMSimple version 5.3 ใน VM ของ miniONE KVM)
เป็นขั้นตอนที่ทำขึ้น เพื่อทำการ redirect port 80 เข้าไปยัง web server ใน VM (OpenNebula miniONE on KVM) ที่เราติดตั้งไว้ในเครื่อง Ubuntu Desktop ในตัวอย่างนี้ Ubuntu Desktop มี IP 192.168.1.70 และ VM มี IP 172.16.100.3
เป็น CMS Web Server อย่างง่าย ไม่มี database ติดตั้งลงใน OS ที่เป็น Ubuntu Server 20.04 ที่ได้ติดตั้ง apache2 web server (เปิด port 80) พร้อม php ไว้แล้วด้วยคำสั่ง sudo apt install apache2 php php-xml
ขั้นตอน
ไปที่เครื่อง Ubuntu Desktop ของเรา เข้าเว็บเบราว์เซอร์ OpenNebula Sunstone และเปิด VM ที่เป็น Ubuntu Server (สมมติว่า VM มี IP 172.16.100.3)
เปิดเพจของ CMSimple
ดาวน์โหลด CMSimple_5-3.zip
ใช้คำสั่ง scp คัดลอกไฟล์ไปไว้ใน VM scp CMSimple_5-3.zip papa@172.16.100.3 เสร็จแล้ว ssh เข้าไปใน VM ssh papa@172.16.100.3