Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> ซอฟต์แวร์

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

หากคุณเคยพบข้อความบนคอมพิวเตอร์หรืออุปกรณ์อื่นๆ แจ้งว่าต้องการ "สิทธิ์สูงกว่า" (higher privileges) แสดงว่าคุณได้พบกับความจำเป็นของ "การเข้าถึง Root" (Root Access) แล้ว

ระบบปฏิบัติการต้องสร้างสมดุลระหว่างการให้ผู้ใช้ทำสิ่งที่ต้องการ แต่ไม่ให้ทำลายระบบทั้งหมด ไม่ว่าจะดีหรือแย่ เมื่อคุณมี "การเข้าถึง Root" ต่อคอมพิวเตอร์ หมายความว่าคุณถือกุญแจสู่อาณาจักรทั้งหมด

ระบบปฏิบัติการคล้ายหัวหอม: มีหลายชั้น

ระบบปฏิบัติการ (OS) มีโครงสร้างแบบชั้นเหมือนหัวหอม แต่แตกต่างตรงที่ OS มี "เคอร์เนล" (Kernel) เป็นแกนกลาง

เคอร์เนลคือชั้น lõi สุดท้ายของ OS ส่วนนี้สื่อสารโดยตรงกับฮาร์ดแวร์ของคอมพิวเตอร์ เคอร์เนลเป็นสิ่งแรกที่โหลดเมื่อคอมพิวเตอร์เริ่มทำงาน และคงอยู่ใน RAM ตลอดเวลา หากเคอร์เนลมีปัญหา คอมพิวเตอร์จะล่มทันที ถือเป็นส่วนสำคัญที่สุดของระบบปฏิบัติการ

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

รอบเคอร์เนลประกอบด้วยองค์ประกอบต่างๆ ของ OS เช่น ระบบไฟล์ (File System), ไดรเวอร์อุปกรณ์ (Device Drivers), API และ UI (User Interface) UI คือส่วนที่เชื่อมต่อคุณ ผู้ใช้ กับองค์ประกอบ OS ที่ทำงานเบื้องหลัง

ผู้ใช้ส่วนใหญ่ต้องการเข้าถึงเพียงบางส่วนขององค์ประกอบ OS และในระดับที่แตกต่างกันออกไป ซึ่งเป็นเหตุผลที่ OS มีระดับ "สิทธิ์" (Privilege Levels) ต่างกัน

พื้นฐานสิทธิ์ของระบบปฏิบัติการ

เช่นเดียวกับชีวิตจริง การมีสิทธิ์พิเศษใน OS หมายถึงการเข้าถึงสิ่งที่ผู้ใช้ระดับต่ำกว่าไม่สามารถทำได้ การเข้าถึงสามารถจำกัดได้หลายวิธี ข้อจำกัดทั่วไปคือการเข้าถึงระบบไฟล์ คุณอาจมีแค่สิทธิ์ "อ่าน" (Read) เท่านั้นต่อข้อมูลบางชนิด หมายถึงคุณเปิดอ่านได้แต่แก้ไขไม่ได้ ต้องมีสิทธิ์ "เขียน" (Write) ถึงจะทำได้

ข้อมูลบางประเภทอาจไม่ให้สิทธิ์ "อ่าน" เลย เช่น คอมพิวเตอร์สาธารณะไม่ควรให้ผู้ใช้เข้าถึงข้อมูลเฉพาะเจ้าหน้าที่

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

ข้อจำกัดทั่วไปอื่นๆ เกี่ยวกับการตั้งค่าคอมพิวเตอร์และการติดตั้งซอฟต์แวร์ ด้วยระดับสิทธิ์ที่ต่างกัน ผู้ใช้สามารถถูกป้องกันไม่ให้ติดตั้ง/ลบแอปพลิเคชัน หรือเปลี่ยนแปลงพื้นหลังจอภาพระบบได้

การเข้าถึง Root คือสิทธิ์สูงสุด

"การเข้าถึง Root" หมายถึงการมีสิทธิ์สูงสุดบนคอมพิวเตอร์ ไม่มีไฟล์หรือข้อมูลใดถูกซ่อนอยู่จากคุณ ผู้ใช้ Root สามารถเปลี่ยนแปลงทุกด้านของระบบปฏิบัติการได้

แอปพลิเคชันใดๆ ที่ผู้ใช้ Root รันด้วยสิทธิ์เดียวกัน จะทำอะไรก็ได้ที่ Root user ทำได้ การเข้าถึง Root จำเป็นต่อการแก้ไขปัญหาหลายอย่างและการบำรุงรักษาคอมพิวเตอร์ทั่วไป

คำอื่นสำหรับ Root user คือ "Administrator" (ผู้ดูแลระบบ) แม้ในบางกรณี บัญชี Administrator อาจมีสิทธิ์ต่ำกว่า Root เล็กน้อย ขึ้นอยู่กับ OS และการตั้งค่าเฉพาะ แต่ในส่วนใหญ่ สิทธิ์ Admin และ Root ใช้แทนกันได้

ระดับสิทธิ์ผู้ใช้ใน Linux

Linux และ OS แบบ "Unix-like" อื่นๆ มีวิธีจัดการบัญชี Root เฉพาะตัว มีบัญชี Root อย่างน้อยหนึ่งบัญชี สร้างขึ้นตอนติดตั้ง OS ตั้งต้น โดยค่าเริ่มต้น บัญชีนี้ไม่ได้ใช้สำหรับการใช้งานประจำวัน แทนที่จะเป็นเช่นนั้น ทุกครั้งที่ผู้ใช้ทั่วไปต้องทำอย่างที่ต้องการสิทธิ์ Root จะต้องระบุชื่อผู้ใช้และรหัสผ่าน เพื่อยกระดับสิทธิ์ชั่วคราวทำภารกิจเสร็จ แล้วสิทธิ์จะลดกลับมาที่ระดับผู้ใช้ทั่วไป

ผ่าน Linux Terminal ผู้ใช้สามารถใช้คำสั่ง "sudo" (ย่อมาจาก "superuser do") คำสั่งต่อจาก sudo จะรันด้วยสิทธิ์ Root และจะต้องกรอกรหัสผ่านอีกครั้ง

ระดับสิทธิ์ผู้ใช้ใน Windows และ macOS

หลายปีก่อน Microsoft Windows มีทัศนคติคลาดเคลื่อนต่อสิทธิ์ Root บัญชีผู้ใช้หลักก็คือบัญชี Administrator หมายถึงคุณต้องปรับแต่งเองหากต้องการความปลอดภัยแบบ Linux

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

ใน Windows รุ่นใหม่ การกระทำที่ต้องการสิทธิ์ Admin จะกระตุ้นให้เกิดหน้าต่าง UAC (User Account Control) ขึ้นมา และต้องกรอกรหัสผ่าน Admin คุณยังสามารถเปิดแอปเฉพาะด้วยสิทธิ์ Admin ได้ เช่น Command Prompt หรือ Windows Terminal แบบ Admin จะไม่ต้องกรอกรหัสซ้ำในเซสชันนั้น

macOS ของ Apple เป็น OS แบบ Unix-like เช่นกัน ต้องการการยกระดับสิทธิ์ทีละครั้งเมื่อทำอย่างนอกการใช้งานทั่วไป ใน macOS คุณจะเห็นไอ콘ล็อคเล็กๆ ให้ปลดล็อคการตั้งค่าระบบด้วยรหัสผ่าน Root แล้วล็อคกลับไปเมื่อเสร็จ

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

โดยค่าเริ่มต้น macOS เข้มงวดกับสิทธิ์มากกว่า Windows ตัวอย่างเช่น หากแอปต้องเข้าถึงข้อมูลบนไดรฟ์ขยาย macOS จะถามยินยอมครั้งแรก

การเข้าถึง Root บนโทรศัพท์ Android

คนส่วนใหญ่ที่ไม่ใช่ Sysadmin รู้จัก "Root Access" หรือ "Rooting" ครั้งแรกจากสมาร์ทโฟน/แท็บเล็ต Android แม้ Android จะเป็น OS โอเพนซอร์ส แต่วินิโมสเกือบทั้งหมด (Samsung, OnePlus, ฯลฯ) ไม่ให้ลูกค้าเข้าถึง Root แต่มีบัญชีผู้ใช้พิเศษที่เข้าถึงฮาร์ดแวร์ระดับต่ำไม่ได้ ไม่เหมือน PC ที่คุณเปลี่ยน OS หรือตั้งค่าระบบได้ตามต้องการ

บนโทรศัพท์หลายรุ่น สามารถ Root ได้โดยรันแอป Rooting แต่บางเครื่องต้องใช้กระบวนการที่ซับซ้อนผ่านคอมพิวเตอร์และ ADB (Android Debug Bridge) ด้วยวิธี One-click root หรือบทแนะนำต่างๆ คุณสามารถได้สิทธิ์ Root บนโทรศัพท์

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

จากนั้นคุณสามารถเปลี่ยนแปลงทุกด้านของอุปกรณ์ รวมถึงลบ Bloatware ของผู้ให้บริการ ปิด/เปิดฟีเจอร์ที่ผู้ผลิตซ่อนไว้ Rooting ยังเป็นขั้นแรกหากต้องการเปลี่ยน OS ทั้งหมด เช่น ติดตั้ง Android รุ่นใหม่ Custom ROM หรือ Stock Android (แบบ Google Nexus) โดยไม่มี UI ของผู้ผลิต คุณจะได้โลกของ Firmware ทางเลือกเมื่อ Root และปลดล็อค Bootloader

แอปยอดนิยม ได้แก่ SuperSu และ Magisk ใช้ด้วยความเสี่ยงของตัวเอง หรืออ่านฟอรัม Android ดูประสบการณ์ของเจ้าของรุ่นเดียวกัน

"Jailbreaking" อุปกรณ์ iOS

แม้ Android ไม่ให้ Root ตั้งแต่โรงงาน แต่ Android ปลอดคลายกว่า iOS แม้ไม่มี Root ตัวอย่างเช่น Android เปิดติดตั้งแอปจากร้านค้าคนอื่นได้ง่าย แม้ไม่อยู่ใน Play Store

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

บน iOS แอปที่ Apple ไม่อนุมัติจะเข้าถึงไม่ได้ นี่คือที่มาของ "Jailbreaking" ผลลัพธ์คล้าย Rooting Android แตต่างตรงที่ต้องใช้ Exploit โจมตีมาตรการรักษาความปลอดภัยของ iOS

อันตรายของการเข้าถึง Root

สำหรับ iPhone และ Android ปัญหาสำคัญคือ Rooting อาจทำให้ประกัน失效 (Void Warranty) นี่น่ากลัวเพราะ Root/Jailbreak ที่ล้มเหลวอาจทำให้อุปกรณ์ "Brick" (เสียชีวิตถาวร) ผู้ผลิตอาจไม่อยากซ่อมแม้คุณจ่ายเงิน

บน PC ปัญหาแตกต่าง คือ ไม่ควรให้ผู้ใช้หรือแอปผิดๆ ได้สิทธิ์ Root โดยไม่ตั้งใจ ไม่ว่าจะโทรศัพท์หรือคอมพิวเตอร์ มีโอกาสที่คุณให้มัลแวร์ได้สิทธิ์ Root ซึ่งเป็นภัยพิบัติและอันตรายต่อไฟล์ระบบ นี่คือเหตุผลที่ Antivirus จำเป็นบนอุปกรณ์ที่ Root แล้ว

การเข้าถึง Root: ความสำคัญและเหตุผลที่จำเป็นบนคอมพิวเตอร์และสมาร์ทโฟน

หากคุณ Root และติดตั้ง Custom ROM อาจสูญเสียฟีเจอร์พิเศษของอุปกรณ์ และเจอการจัดการความร้อนหรืออายุแบตเตอรี่แย่ลง เนื่องจากการเพิ่มประสิทธิภาพของผู้ผลิตหายไป บางคนทำ Overclock บนอุปกรณ์ที่ Root ไปแล้ว (ดัน CPU/GPU เกินสเปค) ซึ่งอาจทำลายโทรศัพท์

การ Unroot อุปกรณ์

ถ้าต้องการยกเลิก Root? สมมติอุปกรณ์ยังทำงานอยู่ คุณสามารถ "Unroot" หรือ "Un-jailbreak" คืนสู่สภาพเดิมได้ รวมถึงติดตั้ง OEM ROM กลับเข้าไป คุณควรทำก่อนขาย/ให้อุปกรณ์ หรือก่อนส่งเคลมประกัน ถ้าเป็นไปได้

การมีโทรศัพท์ที่ Root แล้ว อาจรู้สึกปลดปล่อยและเสรี แต่ก็มาพร้อมกับความเสี่ยงและข้อจํากัดมากมาย จึงควรคิดดีๆ ว่าคุ้มค่าหรือไม่