• Về minhduy.vn
  • Đăng ký Hosting
  • Thiết kế Website
  • Khuyến mãi HOT
Hướng Dẫn Sử Dụng Dịch Vụ - Minh Duy Solutions
  • Trang chủ
  • Hosting
    • Hướng dẫn Hosting cPanel
    • Hướng dẫn Hosting DirectAdmin
  • Tên miền
  • Website
    • Hướng dẫn WordPress
    • Hướng dẫn Webmaster
  • Email Doanh Nghiệp
    • Office 365
    • Google Work Space
    • Email Zimbra
  • VPS – Máy chủ
    • Hướng dẫn Linux
    • Hướng dẫn DirectAdmin
  • Hướng dẫn chung
  • Góc ICT
No Result
View All Result
  • Trang chủ
  • Hosting
    • Hướng dẫn Hosting cPanel
    • Hướng dẫn Hosting DirectAdmin
  • Tên miền
  • Website
    • Hướng dẫn WordPress
    • Hướng dẫn Webmaster
  • Email Doanh Nghiệp
    • Office 365
    • Google Work Space
    • Email Zimbra
  • VPS – Máy chủ
    • Hướng dẫn Linux
    • Hướng dẫn DirectAdmin
  • Hướng dẫn chung
  • Góc ICT
No Result
View All Result
Hướng Dẫn Sử Dụng Dịch Vụ - Minh Duy Solutions
No Result
View All Result
Home Hướng dẫn máy chủ Hướng dẫn Linux

Lệnh chattr trên Linux để bảo vệ sự toàn vẹn của file

Minh Duy Solutions by Minh Duy Solutions
15/03/2024
Reading Time: 5 mins read
A A
0
selinux
482
SHARES
1.6k
VIEWS
Share on FacebookShare on Twitter

Contents

  1. 1. Cách thêm thuộc tính trên file để bảo vệ file khỏi bị xóa
  2. 2. Cách để unset thuộc tính đã thêm cho file
  3. 3. Chỉ cho phép nối thêm nội dụng vào file
  4. 4. Cách dùng chattr để bảo vệ thư mục
  5. 5. Áp dụng lệnh chattr để bảo vệ file /etc/passwd và /etc/shadow
  6. Kết luận
4.4/5 - (113 bình chọn)

Đối với Linux, thông thường chúng ta sử dụng phân quyền bằng lệnh chmod để bảo vệ tập tin. Hôm nay Minh Duy Solutions xin giới thiệu đến các bạn một cách khác. Đó là sử dụng lệnh chattr.

chattr là viết tắt của Change Attribute. Đây là câu lệnh cho phép bạn thay đổi thuộc tính của file giúp bảo vệ file khỏi bị xóa hoặc ghi đè nội dung, dù cho bạn có đang là user root đi nữa.

Cú pháp lệnh:

chattr [operator] [flags] [filename]

Các operator:

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

Các flag (hay các thuộc tính của file):

Có nhiều flag, ở đây tôi sẽ giới thiệu các flag thường dùng là:

  • i: Flag này khiến file không thể rename, không thể tạo symlink, không thể thực thi, không thể write. Chỉ có user root mới set và unset được thuộc tính này.
  • a: Flag này khiến file không thể rename, không thể tạo symlink, không thể thực thi, chỉ có thể nối thêm nội dung vào file. Chỉ có user root mới set và unset được 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 file có thuộc tính được truy cập, giá trị atime của file sẽ không thay đổi

Lưu ý: Tất cả các lệnh dưới đây đều chạy dưới quyền user root.

Trong bài viết này, tôi đã tạo trước một file cloud365.txt trong thư mục vidu. Nội dung file như sau:

[root@dungdbhost1 vidu]# cat cloud365.txt
cloud365.vn
[root@dungdbhost1 vidu]#

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

Chúng ta thêm thuộc tính i (immutable) cho file.

[root@dungdbhost1 vidu]# chattr +i cloud365.txt

Xem lệnh trên đã có hiệu lực chưa bằng cách dùng lệnh lsattr:

[root@dungdbhost1 vidu]# lsattr
----i----------- ./cloud365.txt

Bây giờ ta thử xóa file trên:

[root@dungdbhost1 vidu]# rm -rf cloud365.txt
rm: cannot remove ‘cloud365.txt’: Operation not permitted
[root@dungdbhost1 vidu]# mv cloud365.txt nhanhoa.txt
mv: cannot move ‘cloud365.txt’ to ‘nhanhoa.txt’: Operation not permitted
[root@dungdbhost1 vidu]# chmod 755 cloud365.txt
chmod: changing permissions of ‘cloud365.txt’: Operation not permitted

Có thể thấy rằng chúng ta không thể xóa hoặc thay đổi file trên.

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

Ta sử dụng operator -

VÍ dụ tôi sẽ unset thuộc tính i trên file cloud365.txt

[root@dungdbhost1 vidu]# chattr -i cloud365.txt

Sau khi bỏ thuộc tính i khỏi file, ta có thể thay đổi file một cách bình thường:

[root@dungdbhost1 vidu]# mv cloud365.txt nhanhoa.txt
[root@dungdbhost1 vidu]# lsattr
---------------- ./nhanhoa.txt
[root@dungdbhost1 vidu]# ll
total 4
-rw-r--r-- 1 root root 12 Jun  2 13:34 nhanhoa.txt
[root@dungdbhost1 vidu]#

3. Chỉ cho phép nối thêm nội dụng vào file

Chúng ta thêm thuộc tính a (append) cho file

[root@dungdbhost1 vidu]# chattr +a nhanhoa.txt
[root@dungdbhost1 vidu]# lsattr
-----a---------- ./nhanhoa.txt

Thử sửa nội dung file này:

[root@dungdbhost1 vidu]# echo "sua noi dung file" > nhanhoa.txt
-bash: nhanhoa.txt: Operation not permitted

Có thể thấy là không sửa được nội dung.

Nhưng chúng ta có thể nối nội dung file:

[root@dungdbhost1 vidu]# echo "noi noi dung file" >>nhanhoa.txt
[root@dungdbhost1 vidu]# cat nhanhoa.txt
cloud365.vn
noi noi dung file
[root@dungdbhost1 vidu]#

Ta có thể gỡ bỏ thuộc tính này với lệnh

[root@dungdbhost1 vidu]# chattr -a nhanhoa.txt  

4. Cách dùng chattr để bảo vệ thư mục

Để bảo vệ cả thư mục và các file bên trong thư mục đó, ta dùng flag -R (recursively) và +i với đường dẫn của thư mục đó.

[root@dungdbhost1 ~]# chattr -R +i vidu/

Thử xóa thư mục này đi

[root@dungdbhost1 ~]# rm -rf vidu/
rm: cannot remove ‘vidu/nhanhoa.txt’: Permission denied

Có thể thấy ta không thể xóa thư mục vidu và các file bên trong nó.

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

[root@dungdbhost1 ~]# chattr -R -i vidu/

Sau khi chạy lệnh này, ta có thể sửa, xóa thư mục và file bên trong như bình thường.

5. Áp dụng lệnh chattr để bảo vệ file /etc/passwd và /etc/shadow

Thêm thuộc tính i cho các file này để tránh bị xóa nhầm. Lưu ý rằng ta không thể tạo thêm user trên khi sử dụng cách này.

[root@dungdbhost1 ~]# chattr +i /etc/passwd
[root@dungdbhost1 ~]# chattr +i /etc/shadow

Thử tạo thêm user:

[root@dungdbhost1 ~]# useradd nhanhoa
useradd: cannot open /etc/passwd

Có thể thấy ta không thể thêm user mới vào hệ thống.

Với cách này, bạn có thể đặt quyền không thể sửa đổi cho các file hệ thống quan trọng hoặc các file cấu hình quan trọng để tránh bị xóa.

Kết luận

Như vậy Minh Duy Solutions đã giới thiệu xong cho bạn cách sử dụng cơ bản lệnh chattr.

Chúc các bạn thành công!!

Tham khảo: https://www.tecmint.com/chattr-command-examples/

Tags: linuxchattr
Share193Tweet121
Minh Duy Solutions

Minh Duy Solutions

Bài viết liên quan

thiet lap dung luong ram toi da cho redis 4629
Hướng dẫn Linux

Thiết lập dung lượng RAM tối đa cho Redis

11/06/2025
1.5k
huong dan cai dat socks5 tren vps linux 4583
Hướng dẫn máy chủ

Hướng dẫn cài đặt Socks5 trên VPS Linux

26/05/2025
1.5k
mot so lenh co ban kiem tra server khi bi ddos 4461
Hướng dẫn Linux

Một số lệnh cơ bản kiểm tra server khi bị DDoS

13/12/2024
1.5k
4454
Hướng dẫn Linux

Cách kiểm tra máy chủ Linux có bị tấn công DDOS hay không?

13/12/2024
1.5k
mount umount o cung hay thiet bi tren linux 4406
Hướng dẫn Linux

Mount / Umount Ổ Cứng Hay Thiết Bị Trên Linux

30/10/2024
1.5k
20 vi du ve crontab tren he dieu hanh linux 4352
Hướng dẫn Linux

20 ví dụ về crontab trên hệ điều hành Linux

24/09/2024
1.5k

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

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 *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

No Result
View All Result

Recommended.

wordpress bg medblue

Thiết lập cấu hình chung cho WordPress

23/09/2021
1.5k
DirectAdmin

Hướng dẫn restore database trên DirectAdmin

22/11/2021
1.5k

Trending.

cach tao doi quoc gia cho tai khoan google 4082

Cách tạo (đổi quốc gia) cho tài khoản Google

24/01/2024
18k
cach tao doi quoc gia cho tai khoan google 4082

Cách xóa hồ sơ thanh toán tài khoản Google

24/01/2024
4.5k
57acc582dde37df0a76107d2fb2448d8

Cách Ngắt Link Ảnh Trong Adobe Illustrator, Đơn Giản, Hiệu Quả

04/10/2022
15.1k
huong dan cai dat laragon moi truong phat trien website de dang va nhanh chong tren windows 4053 2

Hướng dẫn cài đặt Laragon – Môi trường phát triển website dễ dàng và nhanh chóng trên Windows

07/12/2023
5.5k
cach sua loi co ve nhu ban o quoc gia khac voi nguoi quan ly gia dinh google 4097 3

Cách sửa lỗi Có vẻ như bạn ở quốc gia khác với người quản lý gia đình Google

24/01/2024
2.3k
Wiki Minh Duy Solutions

WIKI.MINHDUY.VN

Chuyên trang hướng dẫn sử dụng dịch vụ của Minh Duy Solutions

DMCA.com Protection Status

Danh mục

  • aaPanel
  • Góc ICT
  • Thiết Kế Đồ Hoạ
  • SEO
  • Hướng dẫn WHMCS
  • Hướng dẫn Hosting
  • Hướng dẫn WordPress
  • Email Zimbra
  • Hướng dẫn DirectAdmin
  • Hướng dẫn Hosting cPanel
  • Office 365
  • Hướng dẫn Website
  • Hướng dẫn Linux
  • Hướng dẫn Hosting DirectAdmin
  • Google Work Space
  • Hướng dẫn Webmaster
  • Hướng dẫn máy chủ
  • Hướng dẫn Email Doanh Nghiệp
  • Hướng dẫn Tên miền
  • Hướng dẫn chung
  • Uncategorized

Thẻ

AFC apt-get update apt-get upgrade category chủ thể cPanel debian DirectAdmin email doanh nghiệp Environment Variables giải nén Google Workspace G Suite hosting ioncube khôi phục mật khẩu linux nginx nmap nodejs npm Office 365 OneDrive Outlook out of memory path Paypal phpmyadmin SMTP. GMail SSH sudo swap Symbolic Link tar tar.gz thông báo tên miền tên miền ubuntu user whois WooCommerce WordPress wordpress cơ bản wp rocket Zimbra
  • Về minhduy.vn
  • Đăng ký Hosting
  • Thiết kế Website
  • Khuyến mãi HOT

Copyright © 2021 Hướng dẫn Minh Duy Solutions

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

×
    No Result
    View All Result
    • Trang chủ
    • Hosting
      • Hướng dẫn Hosting cPanel
      • Hướng dẫn Hosting DirectAdmin
    • Tên miền
    • Website
      • Hướng dẫn WordPress
      • Hướng dẫn Webmaster
    • Email Doanh Nghiệp
      • Office 365
      • Google Work Space
      • Email Zimbra
    • VPS – Máy chủ
      • Hướng dẫn Linux
      • Hướng dẫn DirectAdmin
    • Hướng dẫn chung
    • Góc ICT

    Copyright © 2021 Hướng dẫn Minh Duy Solutions