เวลาที่เราจัดการไฟล์เว็บไซต์ผ่าน FTP หรือ File Manager หลายคนอาจเคยเห็นตัวเลขอย่าง 644, 755 หรือ 777 แล้วรู้สึกงงว่า…
- ตัวเลขพวกนี้เอาไว้ทำอะไร?
- ตั้งผิดจะเกิดอะไรขึ้น?
- เกี่ยวข้องกับความปลอดภัยเว็บไซต์จริงไหม?
ตัวเลขเหล่านี้คือ สิทธิ์ไฟล์ (Permission) ซึ่งเป็นหนึ่งในพื้นฐานที่สำคัญมากของการดูแลเว็บไซต์ และเป็นสาเหตุของปัญหายอดฮิต อย่างเว็บเข้าไม่ได้ Error 403 หรือแม้แต่เว็บโดนแฮก
บทความนี้จะช่วยอธิบายให้คุณเข้าใจว่า Permission คืออะไร ใช้ยังไง และควรตั้งค่าแบบไหนถึงจะปลอดภัย
สิทธิ์ไฟล์ (Permission) คืออะไร?
สิทธิ์ไฟล์หรือ File Permission คือการกำหนดสิทธิ์การเข้าถึงไฟล์และโฟลเดอร์บนเซิร์ฟเวอร์ ว่าผู้ใช้งานสามารถทำอะไรกับไฟล์นั้นได้บ้าง โดยบนระบบโฮสติ้งที่ใช้ Linux ซึ่งเป็นระบบที่นิยมมากที่สุด จะใช้ตัวเลขเพื่อควบคุมสิทธิ์ไฟล์ว่า
- ใครอ่านไฟล์ได้ (Read)
- ใครแก้ไขไฟล์ได้ (Write)
- ใครรันไฟล์ได้ (Execute)
เปรียบง่าย ๆ สิทธิ์ไฟล์ก็เป็นเหมือน “ระบบล็อกประตูไฟล์” ของเว็บไซต์ที่…
- หากล็อกหลวมเกินไป ไม่ว่าใครก็เข้ามาแก้ได้
- หากล็อกแน่นเกินไป เว็บก็อาจใช้งานไม่ได้
สิทธิ์ไฟล์แบ่งการควบคุมออกเป็นกี่ส่วน?
การกำหนดสิทธิ์ไฟล์จะแบ่งการควบคุมจากผู้ใช้งาน 3 กลุ่มหลัก ได้แก่
1. เจ้าของไฟล์ (Owner)
ผู้ใช้ที่เป็นเจ้าของไฟล์นั้น โดยปกติจะเป็นบัญชี Hosting ของเราเอง
2. กลุ่มผู้ใช้ (Group)
กลุ่มผู้ใช้งานที่อยู่ในระบบเดียวกัน เช่น ระบบเว็บเซิร์ฟเวอร์ หรือผู้ใช้งานที่ถูกจัดอยู่ในกลุ่มเดียวกัน
3. บุคคลอื่น (Others)
ทุกคนที่ไม่ใช่ Owner และไม่อยู่ใน Group ซึ่งตรงนี้จะเกี่ยวข้องกับความปลอดภัยมากที่สุด
โดยแต่ละกลุ่มผู้ใช้งานจะมีการแบ่งสิทธิ์พื้นฐานออกเป็น 3 แบบ ได้แก่
1. อ่านไฟล์ (Read)
- เปิดดูเนื้อหาไฟล์ได้
- เว็บเซิร์ฟเวอร์ต้องใช้สิทธิ์นี้ในการแสดงหน้าเว็บ
2. เขียน/แก้ไขไฟล์ (Write)
- แก้ไขไฟล์
- เพิ่ม หรือลบข้อมูลในไฟล์
หากเปิดสิทธิ์นี้ให้คนอื่นมากเกินไป อาจทำให้ไฟล์ถูกแก้ไขหรือฝังโค้ดอันตรายได้
3. รันไฟล์/เข้าถึงโฟลเดอร์ (Execute)
- สำหรับไฟล์จะหมายถึงการใช้รันสคริปต์
- สำหรับโฟลเดอร์จะหมายถึงการใช้เข้าไปในโฟลเดอร์
หากโฟลเดอร์ไม่มีการกำหนดการเข้าถึง เว็บไซต์จะไม่สามารถเข้าถึงไฟล์ด้านในได้
ตัวเลขสิทธิ์ไฟล์มาจากไหน (ทำไมถึงต้องเป็น 644, 755)
ตัวเลขสิทธิ์ไฟล์ (Permission) มาจากการการรวมค่าสิทธิ์ระหว่าง
- Read = 4
- Write = 2
- Execute = 1
ตัวอย่างเช่น
- 4 + 2 = 6 หมายความว่า สามารถอ่าน และเขียน/แก้ไขไฟล์ได้
- 4 + 1 = 5 หมายความว่า สามารถอ่าน และรันไฟล์/เข้าถึงโฟลเดอร์ได้
- 2 + 1 = 3 หมายความว่า สามารถเขียน/แก้ไขไฟล์ และรันไฟล์/เข้าถึงโฟลเดอร์ได้ (แทบไม่ได้นำมาใช้งานจริง เนื่องจากเว็บต้องอ่านไฟล์ได้เป็นพื้นฐาน)
- 0 หมายความว่า ไม่มีสิทธิ์ใด ๆ เลย
โดยตัวเลขทั้ง 3 หลักจะหมายถึงสิทธิ์ของ เจ้าของไฟล์ (Owner) กลุ่มผู้ใช้ (Group) และบุคคลอื่น (Others) ตามลำดับ
สิทธิ์ไฟล์ที่มักพบและใช้งานอยู่บ่อย ๆ
664 (สำหรับไฟล์ทั่วไป)
- เจ้าของไฟล์ (Owner) สามารถอ่าน + เขียน/แก้ไขไฟล์ได้
- กลุ่มผู้ใช้ (Group) และบุคคลอื่น (Others) สามารถอ่านได้อย่างเดียว
มักใช้กับ ไฟล์ .html, .php, .css, .js
755 (สำหรับโฟลเดอร์)
- เจ้าของไฟล์ (Owner) สามารถอ่าน + เขียน/แก้ไข + เข้าถึงได้
- กลุ่มผู้ใช้ (Group) และบุคคลอื่น (Others) สามารถอ่าน + เข้าถึงได้
หากโฟลเดอร์ไม่ได้กำหนดสิทธิ์เป็น 755 เว็บอาจเข้าไปอ่านไฟล์ด้านในไม่ได้
777 (อันตรายที่สุด)
- ทุกคน สามารถอ่าน + เขียน + เข้าถึงได้ทั้งหมด
ไม่แนะนำให้ใช้อย่างยิ่ง เพราะไม่ว่าใครก็ตามที่เข้าถึงเซิร์ฟเวอร์ได้ สามารถแก้ไขไฟล์เว็บไซต์ของคุณได้ทันที ซึ่งมักเป็นสาเหตุหลักให้
- เว็บโดนฝังมัลแวร์
- เว็บโดนแฮก
- ไฟล์ถูกแก้โดยไม่รู้ตัว
สิทธิ์ไฟล์สำคัญกับความปลอดภัยของเว็บไซต์ยังไง?
1. ลดความเสี่ยงจากการถูกแก้ไขไฟล์
การกำหนดสิทธิ์ไฟล์ที่เหมาะสม จะช่วยจำกัดสิทธิ์เฉพาะที่จำเป็น ทำให้แฮกเกอร์ไม่สามารถเข้ามาเขียนหรือแก้ไขไฟล์ได้ง่าย ๆ
2. ป้องกันมัลแวร์และ Backdoor
มัลแวร์จำนวนมากมักอาศัยโฟลเดอร์ที่สามารถ “เขียนได้” หากกำหนดสิทธิ์ได้หนาแน่นพอ มัลแวร์จะไม่สามารถสร้างไฟล์ใหม่ได้
3. ป้องกันเว็บ Error
การกำหนดสิทธิ์ที่ผิดอาจทำให้เกิด
- 403 Forbidden
- เว็บโหลดไม่ขึ้น
- ระบบอัปโหลดไฟล์ไม่ทำงาน
โดยการตั้งค่าสิทธิ์ให้เหมาะสมจะช่วยให้เว็บไซต์ทำงานได้เสถียรและปลอดภัยไปพร้อมกัน
แนวทางการตั้งสิทธิ์ไฟล์
- 755 โฟลเดอร์
- 644 ไฟล์ทั่วไป
- 600 ไฟล์สำคัญ
- 640 ไฟล์ระบบที่ต้องให้บาง service อ่านได้
- 700 โฟลเดอร์ส่วนตัว
สามารถตั้งสิทธิ์ไฟล์ได้จากที่ไหนบ้าง?
คุณสามารถตั้งสิทธิ์ไฟล์ได้ทั้งจาก
- FTP Client เช่น FileZilla, WinSCP, Cyberduck
- File Manager ใน DirectAdmin, cPanel, Plesk
การกำหนดสิทธิ์ไฟล์ถือเป็นพื้นฐานสำคัญของการดูแลเว็บไซต์ ที่แม้จะดูเป็นเรื่องเทคนิค แต่ก็มีผลโดยตรงกับ
- ความปลอดภัย
- ความเสถียร
- การป้องกันเว็บโดนแฮก
โดยหากเข้าใจและตั้งค่าสิทธิ์ไฟล์ได้ถูกต้องตั้งแต่แรก จะช่วยลดปัญหาจุกจิก และดูแลเว็บได้มั่นใจมากขึ้น
หากคุณกำลังมองหาเว็บโฮสติ้งที่ใช้งานง่ายและปลอดภัย สามารถดูรายละเอียดแพ็กเกจ Web Hosting ของเราได้ที่
👉 https://www.hostatom.com/web-hosting