Bí Mật Bảo Mật Của Linux – Phân Quyền File (chmod) & Quản Lý Người Dùng

Chào mừng bạn quay trở lại với chuỗi bài viết hướng dẫn Linux cho người mới bắt đầu!

Ở bài trước, chúng ta đã làm quen với Terminal và các lệnh cơ bản. Hôm nay, chúng ta sẽ giải mã lý do tại sao Linux lại được mệnh danh là hệ điều hành bảo mật nhất thế giới, hiếm khi bị virus tấn công. Bí mật đó nằm ở kiến trúc Đa người dùng (Multi-user)Cơ chế phân quyền (File Permissions) cực kỳ chặt chẽ.

Hãy cùng tìm hiểu cách Linux quản lý “ai được phép làm gì” trên hệ thống nhé!

1. Kiến trúc Đa người dùng (Multi-user) trong Linux

Khác với Windows (đặc biệt là các bản cũ) thường cho phép người dùng thoải mái can thiệp sâu vào máy tính, Linux phân chia rõ rệt các cấp bậc người dùng:

  • Root User (Người dùng tối cao): Đây là tài khoản có quyền lực tuyệt đối. Root có thể xóa bất cứ thứ gì, cài đặt bất cứ phần mềm nào và cấu hình toàn bộ hệ thống. (Đó là lý do bạn phải dùng lệnh sudo ở bài trước để “mượn” tạm quyền của Root).

  • Standard User (Người dùng thông thường): Đây là tài khoản bạn tạo ra khi cài đặt máy. Bạn có toàn quyền trong thư mục cá nhân của mình (/home/ten_cua_ban), nhưng không thể tự ý chỉnh sửa các file hệ thống nếu không có mật khẩu cấp quyền.

Linux nhóm các người dùng này lại thành các Group (Nhóm). Ví dụ: nhóm admin, nhóm sinh_vien. Điều này giúp quản trị viên dễ dàng cấp quyền cho nhiều người cùng lúc.

2. Đọc hiểu cơ chế phân quyền File trong Linux

Mọi file và thư mục trong Linux đều có 3 đối tượng được gắn quyền:

  1. Owner (Người sở hữu – u): Người tạo ra file đó.

  2. Group (Nhóm sở hữu – g): Nhóm người dùng được gắn với file.

  3. Others (Những người khác – o): Bất kỳ ai không phải là Owner và không thuộc Group.

Và mỗi đối tượng trên sẽ được cấp 3 loại quyền hạn:

  • Read (r): Quyền đọc nội dung file / xem danh sách file trong thư mục.

  • Write (w): Quyền chỉnh sửa, xóa file / thêm bớt file trong thư mục.

  • Execute (x): Quyền chạy file (áp dụng cho phần mềm, script).

Cách xem quyền của một file

Trong Terminal, hãy gõ lệnh ls -l. Bạn sẽ thấy một dãy ký tự lạ lùng như thế này ở đầu mỗi dòng: -rwxr-xr--

Đừng hoảng! Hãy chia dãy này ra làm 4 phần để đọc:

  • Ký tự đầu tiên: - (nghĩa là file bình thường), nếu là d (nghĩa là Directory – thư mục).

  • 3 ký tự tiếp theo (rwx): Quyền của Owner (Được đọc, sửa và chạy).

  • 3 ký tự tiếp theo (r-x): Quyền của Group (Được đọc, chạy, không được sửa).

  • 3 ký tự cuối cùng (r--): Quyền của Others (Chỉ được đọc).

3. Lệnh chown – Thay đổi chủ sở hữu

Nếu bạn muốn chuyển nhượng một file cho người dùng khác, bạn dùng lệnh chown (Change Owner). Vì thao tác này ảnh hưởng đến quyền sở hữu, bạn thường phải dùng kèm sudo.

Cú pháp: sudo chown [người_dùng_mới] [tên_file]

Bash

sudo chown admin bao_cao.txt

(Lệnh này chuyển quyền sở hữu file bao_cao.txt cho người dùng có tên là ‘admin’).

4. Lệnh chmod – Thay đổi quyền hạn (Quan trọng!)

Đây là lệnh bạn sẽ dùng rất nhiều. chmod (Change Mode) giúp bạn cấp hoặc rút lại quyền (r, w, x) của một file. Có hai cách để sử dụng chmod:

Cách 1: Dùng chữ cái (Dễ hiểu cho người mới)

Bạn dùng các dấu + (thêm quyền), - (rút quyền) hoặc = (đặt chính xác quyền).

  • Thêm quyền chạy (Execute) cho chính mình (Owner):

chmod u+x script.sh

*   Rút quyền chỉnh sửa (Write) của những người khác (Others):
    ```bash
chmod o-w bao_cao.txt

Cách 2: Dùng số (Chuyên nghiệp và nhanh gọn)

Dân IT thường dùng hệ số (Octal) để phân quyền cực nhanh. Mỗi quyền được gán một con số:

  • Read (r) = 4

  • Write (w) = 2

  • Execute (x) = 1

Bạn chỉ cần cộng các số này lại để ra quyền mong muốn. Ví dụ: Quyền Đọc + Viết = 4 + 2 = 6. Quyền Đọc + Viết + Chạy = 4 + 2 + 1 = 7.

Sau đó, bạn ghép 3 con số đại diện cho Owner – Group – Others lại với nhau. Dưới đây là 3 bộ số phổ biến nhất bạn phải thuộc lòng:

  • chmod 777: Cực kỳ nguy hiểm! Cấp toàn quyền (Đọc, Sửa, Chạy) cho TẤT CẢ mọi người. Tuyệt đối không dùng trên máy chủ thực tế.

  • chmod 755: Owner có toàn quyền (7). Group và Others chỉ được đọc và chạy (5). Thường dùng cho các file thực thi hoặc thư mục web.

  • chmod 644: Owner được đọc và sửa (6). Group và Others chỉ được đọc (4). Đây là quyền tiêu chuẩn và an toàn nhất cho các file văn bản, tài liệu thông thường.

Ví dụ:

Bash

chmod 644 tai_lieu_mat.txt

Tổng kết

Hiểu rõ chmodchown chính là chìa khóa để bạn làm chủ sự an toàn của hệ thống Linux. Ban đầu, những con số 755 hay 644 có thể hơi khó nhớ, nhưng khi đã quen, bạn sẽ thấy cơ chế này cực kỳ logic và thông minh.

Trong bài viết tiếp theo (Ngày 6), chúng ta sẽ rời khỏi các file cục bộ để kết nối với thế giới Internet: Hướng dẫn cách cài đặt và gỡ bỏ phần mềm trên Linux (apt vs snap). Cùng đón chờ nhé!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *