การปรับปรุงเครื่อง Web Server เพื่อเพิ่มมาตรการรักษาความปลอดภัยตามคำแนะนำของกองบริการเทคโนโลยีสารสนเทศและการสื่อสาร

1. ปิด Port ต่างๆ ที่ไม่ได้ใช้งานเพื่อป้องกันการโจมตีจากผู้ไม่ประสงค์ดี

2. ติดตั้งโปรแกรม SpyFolder ตรวจจับการเพิ่มหรือแก้ไขไฟล์เอกสาร

3. สร้าง Drive D:\ เพื่อจัดเก็บไฟล์เอกสารของเว็บไซต์ และจัดการสิทธิ์การเข้าถึง

  • การจัดการสิทธิ์เข้าถึง กำนหนดให้ Local user เป็นเจ้าของ Folder D:\htdocs แต่ไม่มีสิทธิ์ในการอ่านและเขียนและมีสิทธิ์ในการเข้าถึง Drive C:\ ในฐานะ User เท่านั้น
  • กำหนดให้ SYSTEM สามารถเข้าถึง Folder แบบ Full Control ได้บาง Folder เท่านั้น(เฉพาะ Folder ที่ต้องมีการอัพโหลดไฟล์เอกสาร)
  • กำหนดสิทธิ์เข้าถึง แบบ Full Control ให้กับผู้ใช้บางคนเท่านั้น
  • การกำหนดค่า htdocs.conf เพื่อชี้ folder จัดเก็บไฟล์เอกสารของเว็บไซต์

 

#DocumentRoot “/xampp/htdocs”

#<Directory “/xampp/htdocs”>

DocumentRoot “D:/htdocs”

<Directory “D:/htdocs”>

4. สร้าง Drive E:\ เพื่อจัดเก็บไฟล์ระบบฐานข้อมูล MySQL และจัดการสิทธิ์การเข้าถึง

  • การจัดการสิทธิ์เข้าถึง กำนหนดให้ user mysql_data เป็นเจ้าของ Folder D:\htdocs แต่ไม่มีสิทธิ์ในการอ่านและเขียนและมีสิทธิ์ในการเข้าถึง Drive C:\ ในฐานะ User เท่านั้น
  • กำหนดให้ SYSTEM สามารถเข้าถึง Folder แบบ Full Control ได้ เพราะ Folder ที่ต้องมีการเขียนไฟล์เอกสาร
  • กำหนดสิทธิ์เข้าถึง แบบ Full Control ให้กับผู้ใช้บางคนเท่านั้น
  • การกำหนดค่า my.ini เพื่อชี้ไปยัง folder จัดเก็บไฟล์เอกสารของ MySQL

 

#datadir = “C:/xampp/mysql/data”

datadir = “E:/mysql/data”

  • ปิด feature INTO OUTFILE เพื่อป้องกัน SQL injection

 

หมายเหตุ ก่อนการปรับปรุงในข้อ 3. และ 4. Web Server จะจัดเก็บ Folder htdocs และ MySQL ไว้บน Drive C:\ และไม่มีการจำกัดสิทธิ์การเข้าถึง ซึ่งอาจจะส่งผลให้ไฟล์เอกสารทั้งหมดติด virus เข้ารหัสไฟล์หรือ Ransom ware ได้

5. กำหนดให้ Apache จัดเก็บ Log เป็นรายวันเพื่อให้ง่ายต่อการตรวจสอบ

 

#CustomLog “logs/access.log” combined

CustomLog “|bin/rotatelogs.exe   logs/access.%y-%m-%d.log 86400” common

6. กำหนดสิทธิ์การเรียกใช้(เปิด/ปิด) Service ของ Apache และ MySQL ให้เป็น Local User ที่กำหนดไว้ แทนของเดิมที่เป็น Local Service