Tính quyền file Linux/Unix
rwxr-xr-x
chmod 755 file
Công cụ tính chmod permissions cho Linux/Unix server của Tấn Phát Digital. Chuyển đổi 2 chiều giữa octal notation (755, 644, 777) và symbolic notation (rwxr-xr-x). Bảng quyền trực quan với checkboxes cho Owner, Group, Others. 6 quyền phổ biến có sẵn: 755 (thư mục web), 644 (file thường), 777 (full access), 600 (file riêng tư), 700 (script riêng tư), 664 (file nhóm). Copy command chmod với một click. Giải thích chi tiết ý nghĩa Read(4), Write(2), Execute(1). Hữu ích cho sysadmin, DevOps, web developer quản lý server Linux.
Chmod (change mode) là lệnh Linux/Unix để thay đổi quyền truy cập file và thư mục - một trong những lệnh quan trọng nhất trong quản trị server. Mỗi file/folder có 3 nhóm quyền: Owner (chủ sở hữu - user tạo file), Group (nhóm - các users cùng group), Others (người khác - tất cả users còn lại). Mỗi nhóm có 3 quyền: Read (đọc nội dung), Write (ghi/sửa/xóa), Execute (thực thi nếu là script, hoặc truy cập nếu là folder). Thiết lập chmod đúng rất quan trọng cho bảo mật server: quyền quá rộng (777) tạo lỗ hổng để hacker upload và chạy mã độc, quyền quá hẹp khiến website không hoạt động hoặc không thể upload file. Công cụ này giúp bạn tính toán và hiểu chmod mà không cần nhớ các con số phức tạp.
Mỗi file/folder trong Linux có 3 nhóm quyền: Owner (u) - user sở hữu file, thường là người tạo file. Group (g) - nhóm users được gán cho file, cho phép share quyền giữa nhiều users. Others (o) - tất cả users khác trên hệ thống. Mỗi nhóm có 3 quyền: Read (r=4) - đọc nội dung file hoặc list nội dung folder. Write (w=2) - sửa/xóa file hoặc tạo/xóa files trong folder. Execute (x=1) - chạy file như script hoặc cd vào folder. Giá trị octal = tổng các quyền: rwx = 4+2+1 = 7, rw- = 4+2+0 = 6, r-x = 4+0+1 = 5, r-- = 4+0+0 = 4.
755 (rwxr-xr-x): Quyền chuẩn cho thư mục web, scripts, executables. Owner full quyền, others có thể đọc và execute. 644 (rw-r--r--): Quyền chuẩn cho files thường (HTML, CSS, JS, images, configs). Owner đọc/ghi, others chỉ đọc. 777 (rwxrwxrwx): Full quyền cho tất cả - NGUY HIỂM, chỉ dùng khi debug. 600 (rw-------): File riêng tư, chỉ owner đọc/ghi. Dùng cho SSH keys, passwords, .env files. 700 (rwx------): Script/folder riêng tư, chỉ owner có quyền. 664 (rw-rw-r--): File nhóm, owner và group đọc/ghi, others chỉ đọc. 775 (rwxrwxr-x): Folder nhóm, owner và group full quyền, others đọc/execute.
Folders: Thường dùng 755 để web server có thể đọc và traverse. Upload folders: 755 cho folder, 644 cho files uploaded. Nếu cần web server ghi, dùng 775 và thêm web server user vào group. Config files: 644 hoặc 600 tùy độ nhạy cảm. .htaccess: 644. PHP files: 644 (không cần execute vì PHP được interpret). Scripts (bash, python): 755 nếu cần chạy trực tiếp. SSH keys (~/.ssh/): 700 cho folder, 600 cho private keys, 644 cho public keys. TUYỆT ĐỐI TRÁNH 777: Đây là lỗ hổng bảo mật nghiêm trọng. Hacker có thể upload và execute malicious scripts.
755 = rwxr-xr-x: Owner có full quyền (7=4+2+1=rwx), Group và Others chỉ đọc và execute (5=4+0+1=r-x). Đây là quyền chuẩn cho thư mục web, scripts, và executables. Owner có thể làm mọi thứ, người khác có thể đọc và chạy nhưng không sửa được.
644 = rw-r--r--: Owner đọc/ghi (6=4+2), Group và Others chỉ đọc (4). Đây là quyền chuẩn cho file thường như HTML, CSS, JS, images, config files trên web server. Owner có thể edit, web server và visitors có thể đọc.
777 (rwxrwxrwx) cho phép TẤT CẢ mọi người đọc/ghi/thực thi file. Đây là lỗ hổng bảo mật NGHIÊM TRỌNG vì: Hacker có thể upload malicious scripts qua vulnerabilities, Scripts uploaded có thể được execute, Dữ liệu có thể bị đọc/sửa/xóa bởi bất kỳ ai. Chỉ dùng 777 tạm thời khi debug và PHẢI đổi lại ngay sau đó.
Folder upload thường dùng 755 (thư mục) và 644 (files uploaded). Nếu web server cần ghi file vào folder (như PHP upload), có 2 cách: 1) Dùng 775 và thêm web server user (www-data, apache, nginx) vào group của folder. 2) Chown folder cho web server user. TRÁNH 777 tuyệt đối.
Dùng flag -R: 'chmod -R 755 folder/' để áp dụng cho folder và TẤT CẢ file/folder con bên trong. Cẩn thận vì sẽ đổi quyền toàn bộ. Thường dùng: 'find folder -type d -exec chmod 755 {} \;' cho folders và 'find folder -type f -exec chmod 644 {} \;' cho files.
Symbolic notation hiển thị quyền dạng chữ dễ đọc: r=read, w=write, x=execute, -=không có quyền. rwxr-xr-x = owner(rwx) + group(r-x) + others(r-x). 9 ký tự chia thành 3 nhóm, mỗi nhóm 3 ký tự. Khi dùng 'ls -la', cột đầu tiên hiển thị dạng này (thêm 1 ký tự đầu cho file type: - là file, d là directory).
Dùng lệnh 'ls -la' trên terminal. Cột đầu tiên hiển thị permissions dạng symbolic: -rwxr-xr-x (file thường), drwxr-xr-x (directory), lrwxrwxrwx (symbolic link). Hoặc dùng 'stat filename' để xem chi tiết hơn bao gồm cả octal notation.
chmod thay đổi QUYỀN (permissions) của file - ai được làm gì với file. chown thay đổi CHỦ SỞ HỮU (owner và group) của file - file thuộc về ai. Ví dụ: 'chown www-data:www-data file' đổi owner và group thành www-data, 'chmod 755 file' đổi quyền thành rwxr-xr-x. Thường dùng kết hợp cả hai để setup đúng.
Chúng tôi không chỉ thiết kế website, mà còn giúp doanh nghiệp xây dựng thương hiệu số mạnh mẽ. Cung cấp dịch vụ thiết kế website trọn gói từ thiết kế đến tối ưu SEO. Hãy liên hệ ngay với Tấn Phát Digital để cùng tạo nên những giải pháp công nghệ đột phá, hiệu quả và bền vững cho doanh nghiệp của bạn tại Hồ Chí Minh.