• Webmaster Tools
  • Diễn Đàn Hỏi Đáp
  • Profile
  • Ủng hộ
  • DNS Check
  • CheckIP
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • LIÊN HỆ

Hướng dẫn bảo vệ File Folder trên Linux với lệnh Chattr

by ĐỖ TRUNG QUÂN 19/04/2021
Tác giả: ĐỖ TRUNG QUÂN 19/04/2021 0 comments 802 lượt xem

DỊCH VỤ XỬ LÝ MÃ ĐỘC WORDPRESS

Bảo mật – An tâm – An toàn
Facebook Zalo Telegram
LIÊN HỆ TƯ VẤN

Cộng đồng Hỗ trợ WordPress

Tham gia ngay để cùng thảo luận, hỏi đáp lỗi, tối ưu tốc độ và bảo mật hệ thống.

FB
Group Facebook
Zalo
Nhóm Zalo
Tele
Group Telegram
Share FacebookTwitterPinterestTelegramEmail
802

NỘI DUNG

  • 1. Cách thêm thuộc tính vào tệp để bảo vệ khỏi bị xóa
  • 2. Cách để unset thuộc tính đã thêm
  • 3. Chỉ cho phép thêm nội dung vào file
  • 4. Sử dụng chattr để bảo vệ thư mục

Hướng dẫn bảo vệ File Folder trên Linux

Bảo vệ File Folder với lệnh Chattr
Hướng dẫn bảo vệ File Folder trên Linux

Ở môi trường Linux thông thường bạn sẽ sử dụng chmod để phân quyền hoặc bảo vệ tập tin. Và hôm nay mình sẽ giới thiệu đến bạn một lệnh khác đó là chattr.

chattr (Change Attribute) là một lệnh cực kỳ tiện ích của Linux được sử dụng để set/unset  một số thuộc tính nhất định cho một file, thư mục trong hệ thống Linux nhằm bảo đảm việc xóa hoặc sửa đổi các file và thư mục quan trọng, ngay cả khi bạn đăng nhập với tư cách người dùng root.

Cú pháp thực hiện

DOTRUNGQUAN.INFO
chattr [operator] [flags] [filename]
    

Các operator:

  • + :Thêm thuộc tính cho File
  • -: Gỡ bỏ thuộc tính ra khỏi File
  • = : Giữ nguyên thuộc tính của File

Thuộc tính và Flag

Có nhiều flag và ở đây mình giới thiệu một số flag thường dùng nhất là

  • i: Flag này khiến file không thể rename (đổi tên), không thể tạo symlink, không thể thực thi, không thể write (ghi). Và chỉ có user ROOT mới set và unset được thuộc tính này
  • a: Flag này làm cho file không thể Rename, không thể tạo được symlink, không thể thực thi, chỉ có thể thêm nội dung vào file (được write), và chỉ user ROOT mới có quyền set và unset thuộc tính này.
  • d: File có thuộc tính này sẽ không được backup khi tiến trình dump chạy
  • S: Nếu một file có thuộc tính này bị sửa, thay đổi sẽ được cập nhật đồng bộ trên ổ cứng.
  • A: Khi khi có thuộc tính được truy cập, giá trị atime của file sẽ không thay đổi.

1. Cách thêm thuộc tính vào tệp để bảo vệ khỏi bị xóa

Bây giờ mình sẽ thực hiện thêm thuộc tính i cho file và thư mục đã tạo như bên dưới.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# ls -la
total 12
drwxr-xr-x 3 root root 4096 Apr 19 01:53 .
drwxr-xr-x 3 root root 4096 Apr 19 01:53 ..
-rw-r--r-- 1 root root    0 Apr 19 01:53 file_demo.txt
drwxr-xr-x 2 root root 4096 Apr 19 01:53 thu_muc_demo
root@sv:/home/dotrungquan#
    

Sử dụng chattr +i để thêm thuộc tính vào

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# chattr +i file_demo.txt
root@sv:/home/dotrungquan# chattr +i thu_muc_demo/
    

Kiểm tra thử sau khi thêm thuộc tính đã có hiệu lực hay là chưa với lệnh lsattr. Nếu hiện như bên dưới bạn sẽ thấy dòng i như vậy là đã có thuộc tính rồi.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# lsattr
----i---------e----- ./thu_muc_demo
----i---------e----- ./file_demo.txt
    

Bây giờ bạn hãy xoá thử xem có được không nhé. Sử dụng rm -rf để xoá. Khi xoá đều trả về thông báo Operation not permitted

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# lsattr
----i---------e----- ./thu_muc_demo
----i---------e----- ./file_demo.txt
root@sv:/home/dotrungquan# rm -rf file_demo.txt
rm: cannot remove 'file_demo.txt': Operation not permitted
root@sv:/home/dotrungquan# rm -rf thu_muc_demo/
rm: cannot remove 'thu_muc_demo/': Operation not permitted
root@sv:/home/dotrungquan#
    
Screenshot 2021 04 19 at 10.19.06

2. Cách để unset thuộc tính đã thêm

Để Unset thuộc tính mà bạn đã thêm cho file, thư mục bạn sử dụng operator là -i

Ví dụ mình sẽ unset cho file và thư mục đã tạo ở trên.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# chattr -i file_demo.txt
root@sv:/home/dotrungquan# chattr -i thu_muc_demo/
root@sv:/home/dotrungquan# lsattr
--------------e----- ./thu_muc_demo
--------------e----- ./file_demo.txt
    

Bây giờ mình sẽ xoá thử xem đã xoá được chưa với lệnh rm -rf. Kết quả bên dưới cho thấy khi bỏ thuộc tính i thì đã thực hiện bình thường.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# lsattr
--------------e----- ./thu_muc_demo
--------------e----- ./file_demo.txt
root@sv:/home/dotrungquan# rm -rf file_demo.txt
root@sv:/home/dotrungquan#
    

3. Chỉ cho phép thêm nội dung vào file

Bây giờ mình sẽ thực hiện chỉ cho phép thêm nội dung vào file với thuộc tính a (append).

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# ll
-rw-r--r-- 1 root root   43 Apr 19 03:25 dotrungquan.txt
drwxr-xr-x 2 root root 4096 Apr 19 01:53 thu_muc_demo/
root@sv:/home/dotrungquan# chattr +a dotrungquan.txt
root@sv:/home/dotrungquan# lsattr
-----a--------e----- ./dotrungquan.txt
--------------e----- ./thu_muc_demo
    

Ví dụ thực tế

Bây giờ mình sẽ sửa nội dung của file dotrungquan.txt và kết quả là không được phép.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# echo "sua noi dung file" > dotrungquan.txt
-bash: dotrungquan.txt: Operation not permitted

    

Nhưng khi nối thêm nội dung vào thì thực hiện được.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# echo "sua noi dung file ne" >> dotrungquan.txt
root@sv:/home/dotrungquan# cat dotrungquan.txt
Bảo vệ File Folder với lệnh Chattr
sua noi dung file ne
root@sv:/home/dotrungquan#

    
Screenshot 2021 04 19 at 10.33.57

Để gở bỏ thuộc tính này bạn sử dụng lệnh chattr -a để gở bỏ.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# chattr -a dotrungquan.txt

    

4. Sử dụng chattr để bảo vệ thư mục

Để bảo vệ các thư mục và file bên trong bạn hãy sử dụng Flag để bảo vệ. Sử dụng -R và +i với đường dẫn của thư mục đó.

Ví dụ thực tế

Mình sẽ bảo vệ thư mục với tên thu_muc_demo và các file ở bên trong. Sau đó thực hiện xoá thử để xem kết quả.

Như kết quả bên dưới bạn sẽ thấy khi mình sử dụng rm -rf để xoá thì không thể xoá được.

DOTRUNGQUAN.INFO
root@sv:/home/dotrungquan# chattr -R +i thu_muc_demo/
root@sv:/home/dotrungquan# rm -rf thu_muc_demo/
rm: cannot remove 'thu_muc_demo/dotrungquan3.txt': Operation not permitted
rm: cannot remove 'thu_muc_demo/dotrungquan2.txt': Operation not permitted
rm: cannot remove 'thu_muc_demo/dotrungquan4.txt': Operation not permitted
rm: cannot remove 'thu_muc_demo/dotrungquan1.txt': Operation not permitted
root@sv:/home/dotrungquan#

    

Để unset quyền trên, ta sử dụng flag -R và -i với đường dẫn thư mục.

DOTRUNGQUAN.INFO
chattr -R -i thu_muc_demo/

    

Như vậy mình đã hoàn tất một bài hướng dẫn ngắn về việc bảo vệ file, thư mục trên Linux với lệnh Chattr. Hy vọng bài viết sẽ hữu ích cho bạn khi sử dụng Linux.

  • Tài liệu tham khảo: https://www.tecmint.com/chattr-command-examples/
5/5 - (10 bình chọn)
chattr
ĐỖ TRUNG QUÂN

Mình tên là Đỗ Trung Quân, hiện đang công tác tại AZDIGI với vị trí là SysAdmin. Mình đam mê viết Blog. Vì viết Blog giúp mình trau dồi được nhiều kỹ năng. Học hỏi thêm nhiều kiến thức mới, từ đó mình có thể chia sẻ đến các bạn các bài viết tài liệu bổ ích hơn. Hiện tại mình là admin của Blog DOTRUNGQUAN.INFO - CaiSSL.COM - QuantriVPS.COM. Mới đây mình có tạo ra nhóm Hỗ trợ Server - Hosting & WordPress | Hỗ Trợ Xử Lý Mã Độc WordPress với mục đích gây dựng một cộng đồng nhỏ để mọi người trao đổi kinh nghiệm, kiến thức quản trị VPS. Các thủ thuật, mẹo vặt khi sử dụng VPS. Rất mong nhận được sự ủng hộ của các bạn.

Theo dõi
Đăng nhập
Thông báo của
guest

guest

0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận

Hosting/VPS khuyên dùng

⚡ Tag Website
wordpress azdigi aapanel directadmin cpanel zimbra ssl fastpanel cyberpanel cloudflare
⚙️ Xem Nhiều
ssh key macos
Hướng dẫn tạo SSH Key trên macOS
16/05/2020
huong dan su dung ssh key
Hướng dẫn sử dụng SSH Key
16/08/2019
Screenshot 2021 10 16 at 22.39.03
Hướng dẫn cài đặt v2board trên AAPANEL
16/10/2021
ip public thay doi lien tuc
Vấn đề IP Public liên tục bị thay đổi vì sao và cách khắc phục
25/09/2019
telegram
Hướng dẫn cài đặt MTProxy trên Linux
26/05/2025
Screenshot 2021 04 06 at 10.44.26 1
Khắc phục lỗi không hiện hình ảnh và mô tả khi share link lên Facebook
06/04/2021
Screenshot 2021 08 05 at 12.50.41
Hướng dẫn kích hoạt Theme Flatsome mới nhất.
05/08/2021
google cloud mien phi
Hướng dẫn đăng ký Google Cloud có sẵn 300$ miễn phí
14/11/2021
huong dan tao addon domain
Hướng dẫn addon domain vào cPanel
19/04/2019
install ubuntu 20.04
Hướng dẫn cài đặt Ubuntu Server 20.04 LTS
17/03/2023
💬 Bình luận mới nhất
web an tâm
2 ngày trước
Khét lẹt luôn sếp ơi
Từ bài viết: Hướng dẫn chuyển sản phẩm WooCommerce bằng SQL
ĐỖ TRUNG QUÂN
2 ngày trước
Cảm ơn bác đã xem.
Từ bài viết: Hướng dẫn cài đặt n8n trên aaPanel
ĐỖ TRUNG QUÂN
2 ngày trước
Cảm ơn bác đã xem.
Từ bài viết: Hướng dẫn chuyển sản phẩm WooCommerce bằng SQL
Tobi
2 ngày trước
mình đã làm theo và thành công , uy tín !
Từ bài viết: Hướng dẫn chuyển sản phẩm WooCommerce bằng SQL
Tobi
2 ngày trước
Tuyệt vời
Từ bài viết: Hướng dẫn chuyển sản phẩm WooCommerce bằng SQL

BẠN BÈ & ĐỐI TÁC

Thạch Phạm
CỔ Ý CONCEPT
Trương Quốc Cường
Đàm Trung Kiên
Web An Tâm
Phong Đinh
PHUNG.VN
Đăng Đạt
Bạn được quyền sao chép lại nội dung trên website Đỗ Trung Quân, miễn là có dẫn nguồn.
Hosting/VPS được tài trợ bởi AZDIGI – Nhà cung cấp Server Hosting tốt nhất hiện nay
AZDIGI Hosting
Google Safe Browsing
sitecheck.sucuri


Back To Top
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • LIÊN HỆ
wpDiscuz